From 9d46e648a025b9bd7edf34bc0c46d600b8e2e268 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Sun, 28 Jul 2024 19:07:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=88=86=E9=94=80=E5=95=86?= =?UTF-8?q?=E6=A8=A1=E5=9D=97(6=E4=B8=AA=E8=A1=A8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cms/controller/WebsiteController.java | 192 +++---- .../cms/controller/WebsiteOldController.java | 529 ++++++++++++++++++ .../controller/DealerApplyController.java | 131 +++++ .../controller/DealerCapitalController.java | 115 ++++ .../controller/DealerOrderController.java | 115 ++++ .../controller/DealerRefereeController.java | 115 ++++ .../controller/DealerSettingController.java | 110 ++++ .../shop/controller/DealerUserController.java | 114 ++++ .../controller/DealerWithdrawController.java | 115 ++++ .../controller/GoodsCategoryController.java | 34 +- .../shop/controller/GoodsController.java | 27 +- .../gxwebsoft/shop/entity/DealerApply.java | 66 +++ .../gxwebsoft/shop/entity/DealerCapital.java | 58 ++ .../gxwebsoft/shop/entity/DealerOrder.java | 76 +++ .../gxwebsoft/shop/entity/DealerReferee.java | 48 ++ .../gxwebsoft/shop/entity/DealerSetting.java | 41 ++ .../com/gxwebsoft/shop/entity/DealerUser.java | 80 +++ .../gxwebsoft/shop/entity/DealerWithdraw.java | 76 +++ .../shop/mapper/DealerApplyMapper.java | 37 ++ .../shop/mapper/DealerCapitalMapper.java | 37 ++ .../shop/mapper/DealerOrderMapper.java | 37 ++ .../shop/mapper/DealerRefereeMapper.java | 37 ++ .../shop/mapper/DealerSettingMapper.java | 37 ++ .../shop/mapper/DealerUserMapper.java | 37 ++ .../shop/mapper/DealerWithdrawMapper.java | 37 ++ .../shop/mapper/xml/DealerApplyMapper.xml | 63 +++ .../shop/mapper/xml/DealerCapitalMapper.xml | 54 ++ .../shop/mapper/xml/DealerOrderMapper.xml | 72 +++ .../shop/mapper/xml/DealerRefereeMapper.xml | 45 ++ .../shop/mapper/xml/DealerSettingMapper.xml | 36 ++ .../shop/mapper/xml/DealerUserMapper.xml | 70 +++ .../shop/mapper/xml/DealerWithdrawMapper.xml | 72 +++ .../shop/param/DealerApplyParam.java | 63 +++ .../shop/param/DealerCapitalParam.java | 53 ++ .../shop/param/DealerOrderParam.java | 78 +++ .../shop/param/DealerRefereeParam.java | 42 ++ .../shop/param/DealerSettingParam.java | 36 ++ .../gxwebsoft/shop/param/DealerUserParam.java | 71 +++ .../shop/param/DealerWithdrawParam.java | 71 +++ .../shop/param/GoodsCategoryParam.java | 2 +- .../shop/service/DealerApplyService.java | 42 ++ .../shop/service/DealerCapitalService.java | 42 ++ .../shop/service/DealerOrderService.java | 42 ++ .../shop/service/DealerRefereeService.java | 42 ++ .../shop/service/DealerSettingService.java | 42 ++ .../shop/service/DealerUserService.java | 42 ++ .../shop/service/DealerWithdrawService.java | 42 ++ .../gxwebsoft/shop/service/GoodsService.java | 1 + .../service/impl/DealerApplyServiceImpl.java | 47 ++ .../impl/DealerCapitalServiceImpl.java | 47 ++ .../service/impl/DealerOrderServiceImpl.java | 47 ++ .../impl/DealerRefereeServiceImpl.java | 47 ++ .../impl/DealerSettingServiceImpl.java | 47 ++ .../service/impl/DealerUserServiceImpl.java | 47 ++ .../impl/DealerWithdrawServiceImpl.java | 47 ++ .../gxwebsoft/generator/ShopGenerator.java | 10 +- 56 files changed, 3637 insertions(+), 126 deletions(-) create mode 100644 src/main/java/com/gxwebsoft/cms/controller/WebsiteOldController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerApplyController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerCapitalController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerOrderController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerRefereeController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerSettingController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerUserController.java create mode 100644 src/main/java/com/gxwebsoft/shop/controller/DealerWithdrawController.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerApply.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerCapital.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerOrder.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerReferee.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerSetting.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerUser.java create mode 100644 src/main/java/com/gxwebsoft/shop/entity/DealerWithdraw.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerApplyMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerCapitalMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerOrderMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerRefereeMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerSettingMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerUserMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/DealerWithdrawMapper.java create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerApplyMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerCapitalMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerOrderMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerRefereeMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerSettingMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerUserMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/mapper/xml/DealerWithdrawMapper.xml create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerApplyParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerCapitalParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerOrderParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerRefereeParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerSettingParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerUserParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/param/DealerWithdrawParam.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerApplyService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerCapitalService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerOrderService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerRefereeService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerSettingService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerUserService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/DealerWithdrawService.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerApplyServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerCapitalServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerOrderServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerRefereeServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerSettingServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerUserServiceImpl.java create mode 100644 src/main/java/com/gxwebsoft/shop/service/impl/DealerWithdrawServiceImpl.java diff --git a/src/main/java/com/gxwebsoft/cms/controller/WebsiteController.java b/src/main/java/com/gxwebsoft/cms/controller/WebsiteController.java index 544f3db..5a60698 100644 --- a/src/main/java/com/gxwebsoft/cms/controller/WebsiteController.java +++ b/src/main/java/com/gxwebsoft/cms/controller/WebsiteController.java @@ -7,9 +7,7 @@ import cn.hutool.http.HttpRequest; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.gxwebsoft.cms.entity.*; -import com.gxwebsoft.cms.param.MpMenuParam; -import com.gxwebsoft.cms.param.NavigationParam; -import com.gxwebsoft.cms.param.WebsiteParam; +import com.gxwebsoft.cms.param.*; import com.gxwebsoft.cms.service.*; import com.gxwebsoft.common.core.exception.BusinessException; import com.gxwebsoft.common.core.security.JwtUtil; @@ -26,6 +24,7 @@ import com.gxwebsoft.common.system.service.DictService; import com.gxwebsoft.oa.entity.Company; import com.gxwebsoft.oa.param.LinkParam; import com.gxwebsoft.oa.service.LinkService; +import com.gxwebsoft.shop.entity.MerchantAccount; import com.gxwebsoft.shop.entity.Order; import com.gxwebsoft.shop.service.OrderService; import io.swagger.annotations.Api; @@ -83,21 +82,22 @@ public class WebsiteController extends BaseController { @Resource private DictDataService dictDataService; - @ApiOperation("获取网站信息") - @GetMapping("/getSiteInfo") - public ApiResult getSiteInfo(HttpServletRequest request) { - final Integer tenantId = getTenantId(); - String key = "SiteInfo:" + tenantId; - final String siteInfo = redisUtil.get(key); - String access_token = JwtUtil.getAccessToken(request); - - if(tenantId.equals(0)){ - return fail("租户ID不存在",null); - } - // 从缓存读取信息 - if(StrUtil.isNotBlank(siteInfo)){ -// return success(JSONObject.parseObject(siteInfo,Website.class)); - } + @ApiOperation("获取网站信息") + @GetMapping("/getSiteInfo") + public ApiResult getSiteInfo(HttpServletRequest request) { + final Integer tenantId = getTenantId(); + String key = "SiteInfo:" + tenantId; + final String siteInfo = redisUtil.get(key); + String access_token = JwtUtil.getAccessToken(request); +// redisUtil.set("Domain:ffai.cn",10157); +// redisUtil.set("Domain:www.xn--15qx69a6lbn8t0tlmve.com",10157); +// redisUtil.set("Domain:xn--15qx69a6lbn8t0tlmve.com",10157); +// redisUtil.set("Domain:oa.gxwebsoft.com",5); +// redisUtil.set("Domain:gxwebsoft.com",5); + // 从缓存读取信息 + if(StrUtil.isNotBlank(siteInfo)){ + return success(JSONObject.parseObject(siteInfo,Website.class)); + } // 获取站点信息 final WebsiteParam websiteParam = new WebsiteParam(); @@ -108,93 +108,87 @@ public class WebsiteController extends BaseController { HashMap map = new HashMap<>(); - // 获取站点信息 - final List websites = websiteService.listRel(websiteParam); - final Website website = websites.get(0); - map.put("website",website); + // 获取站点信息 + final List websites = websiteService.listRel(websiteParam); + final Website website = websites.get(0); - // 原生导航条 - final List tabBar = mpPagesService.list(new LambdaQueryWrapper().eq(MpPages::getSubpackage, "MainPackage").last("limit 5")); - map.put("tabBar",tabBar); + // 附加自定义字段 + website.setFields(websiteFieldService.list()); - // 读取幻灯片广告 - final List list = adService.list(new LambdaQueryWrapper().eq(Ad::getAdType,"幻灯片")); - if (!CollectionUtils.isEmpty(list)) { - map.put("slide",list); - } + // 附加自定义导航 + final NavigationParam navigationParam = new NavigationParam(); + navigationParam.setHide(0); + website.setNavigations(navigationService.listRel(navigationParam)); - // 小程序端导航图标 - final MpMenuParam mpMenuParam = new MpMenuParam(); - final List mpMenus = mpMenuService.listRel(mpMenuParam); - final Map> mpMenuMap = mpMenus.stream().collect(Collectors.groupingBy(MpMenu::getGroupName)); - map.put("mpMenus",mpMenuMap); + // 读取幻灯片广告 + final AdParam adParam = new AdParam(); + final PageResult adPageResult = adService.pageRel(adParam); + website.setAds(adPageResult.getList()); - // 附加自定义导航 - final NavigationParam navigationParam = new NavigationParam(); - navigationParam.setHide(0); - final List navigations = navigationService.listRel(navigationParam); - final Map> collect = navigations.stream().collect(Collectors.groupingBy(Navigation::getPosition)); - website.setNavigations(navigations); - // 封装网站顶部菜单 - if(!CollectionUtils.isEmpty(collect.get(1))){ - final List topNavs = toTreeData(collect.get(1), 0, Navigation::getParentId, Navigation::getNavigationId, Navigation::setChildren); - website.setTopNavs(topNavs); - } - // 封装网站底部菜单 - if (!CollectionUtils.isEmpty(collect.get(2))) { - final List bottomNavs = toTreeData(collect.get(2), 0, Navigation::getParentId, Navigation::getNavigationId, Navigation::setChildren); - website.setBottomNavs(bottomNavs); - } - - - - // 首页布局 - final Design design = designService.getOne(new LambdaQueryWrapper().eq(Design::getHome, 1).last("limit 1")); - if (design != null) { - website.setLayout(design.getLayout()); - } - - // 读取友情链接 - final LinkParam linkParam = new LinkParam(); - linkParam.setLinkType("友情链接"); - website.setLinks(linkService.listRel(linkParam)); - - // 配置信息 - HashMap config = new HashMap<>(); - config.put("LICENSE_CODE", ""); - config.put("MAP_KEY", ""); - final List fields = websiteFieldService.list(); - fields.forEach(d -> { - config.put(d.getName(),d.getValue()); - }); - map.put("config",config); -// website.setConfig(config); - - // 服务器时间 - HashMap serverTime = new HashMap<>(); - // 今天日期 - DateTime date = DateUtil.date(); - String today= DateUtil.today(); - // 明天日期 - final DateTime dateTime = DateUtil.tomorrow(); - String tomorrow = DateUtil.format(dateTime, "yyyy-MM-dd"); - // 后天日期 - final DateTime dateTime2 = DateUtil.offsetDay(date, 2); - final String afterDay = DateUtil.format(dateTime2, "yyyy-MM-dd"); - // 今天星期几 - final int week = DateUtil.thisDayOfWeek(); - final DateTime nextWeek = DateUtil.nextWeek(); - serverTime.put("now",DateUtil.now()); // 2024-07-18 22:06:36 - serverTime.put("today",today); // 2024-07-18 - serverTime.put("tomorrow",tomorrow); // 2024-07-19 - serverTime.put("afterDay",afterDay); // 2024-07-20 - serverTime.put("nextWeek",nextWeek); // 2024-07-25 22:06:36 - serverTime.put("week",week); // 5 - website.setServerTime(serverTime); - redisUtil.set(key,website,1L, TimeUnit.DAYS); - return success(map); + // 首页布局 + final Design design = designService.getOne(new LambdaQueryWrapper().eq(Design::getHome, 1).last("limit 1")); + if (design != null) { + website.setLayout(design.getLayout()); } + // 提取文章分类作为网站导航 +// final ArticleCategoryParam param = new ArticleCategoryParam(); +// param.setDeleted(0); +// param.setStatus(0); +// website.setCategoryList(articleCategoryService.listRel(param)); + + // 读取友情链接 + final LinkParam linkParam = new LinkParam(); + linkParam.setLinkType("友情链接"); + website.setLinks(linkService.listRel(linkParam)); + + // 读取会员信息 + if(access_token != null){ + // 请求主服务器获取租户信息 + String result = HttpRequest.get("https://server.gxwebsoft.com/api/auth/user") + .header("Authorization", access_token) + .header("Tenantid", tenantId.toString()) + .timeout(20000)//超时,毫秒 + .execute().body(); + JSONObject jsonObject = JSONObject.parseObject(result); + final String data = jsonObject.getString("data"); + final User user = JSONObject.parseObject(data, User.class); + // 商户账号 +// website.setMerchantAccount(merchantAccountService.getOne(new LambdaQueryWrapper().eq(MerchantAccount::getPhone, user.getPhone()).last("limit 1"))); +// website.setUserInfo(user); + } + + // 授权信息 + HashMap config = new HashMap<>(); + config.put("LICENSE_CODE", ""); + config.put("MAP_KEY", ""); + website.setConfig(config); + + // 服务器时间 + HashMap serverTime = new HashMap<>(); + // 今天日期 + DateTime date = DateUtil.date(); + String today= DateUtil.today(); + // 明天日期 + final DateTime dateTime = DateUtil.tomorrow(); + String tomorrow = DateUtil.format(dateTime, "yyyy-MM-dd"); + // 后天日期 + final DateTime dateTime2 = DateUtil.offsetDay(date, 2); + final String afterDay = DateUtil.format(dateTime2, "yyyy-MM-dd"); + // 今天星期几 + final int week = DateUtil.thisDayOfWeek(); + final DateTime nextWeek = DateUtil.nextWeek(); + serverTime.put("now",DateUtil.now()); + serverTime.put("today",today); + serverTime.put("tomorrow",tomorrow); + serverTime.put("afterDay",afterDay); + serverTime.put("week",week); + serverTime.put("nextWeek",nextWeek); + website.setServerTime(serverTime); + redisUtil.set(key,website,1L, TimeUnit.DAYS); + return success(website); + } + private void createWebsite(String access_token) { final Integer tenantId = getTenantId(); // 请求主服务器获取租户信息 diff --git a/src/main/java/com/gxwebsoft/cms/controller/WebsiteOldController.java b/src/main/java/com/gxwebsoft/cms/controller/WebsiteOldController.java new file mode 100644 index 0000000..8e776d3 --- /dev/null +++ b/src/main/java/com/gxwebsoft/cms/controller/WebsiteOldController.java @@ -0,0 +1,529 @@ +package com.gxwebsoft.cms.controller; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.gxwebsoft.cms.entity.*; +import com.gxwebsoft.cms.param.MpMenuParam; +import com.gxwebsoft.cms.param.NavigationParam; +import com.gxwebsoft.cms.param.WebsiteParam; +import com.gxwebsoft.cms.service.*; +import com.gxwebsoft.common.core.exception.BusinessException; +import com.gxwebsoft.common.core.security.JwtUtil; +import com.gxwebsoft.common.core.utils.RedisUtil; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.system.entity.Dict; +import com.gxwebsoft.common.system.entity.DictData; +import com.gxwebsoft.common.system.entity.User; +import com.gxwebsoft.common.system.service.DictDataService; +import com.gxwebsoft.common.system.service.DictService; +import com.gxwebsoft.oa.entity.Company; +import com.gxwebsoft.oa.param.LinkParam; +import com.gxwebsoft.oa.service.LinkService; +import com.gxwebsoft.shop.entity.Order; +import com.gxwebsoft.shop.service.OrderService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.time.DateUtils; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; + +import static com.gxwebsoft.common.core.utils.CommonUtil.toTreeData; + +/** + * 网站信息记录表控制器 + * + * @author 科技小王子 + * @since 2024-03-04 21:14:15 + */ +@Api(tags = "网站信息记录表管理") +@RestController +@RequestMapping("/api/cms/website-old") +public class WebsiteOldController extends BaseController { + @Resource + private WebsiteService websiteService; + @Resource + private WebsiteFieldService websiteFieldService; + @Resource + private DesignService designService; + @Resource + private NavigationService navigationService; + @Resource + private AdService adService; + @Resource + private FormService formService; + @Resource + private ArticleCategoryService articleCategoryService; + @Resource + private LinkService linkService; + @Resource + private RedisUtil redisUtil; + @Resource + private MpPagesService mpPagesService; + @Resource + private MpMenuService mpMenuService; + @Resource + private OrderService orderService; + @Resource + private DictService dictService; + @Resource + private DictDataService dictDataService; + + @ApiOperation("获取网站信息") + @GetMapping("/getSiteInfo") + public ApiResult getSiteInfo(HttpServletRequest request) { + final Integer tenantId = getTenantId(); + String key = "SiteInfo:" + tenantId; + final String siteInfo = redisUtil.get(key); + String access_token = JwtUtil.getAccessToken(request); + + if(tenantId.equals(0)){ + return fail("租户ID不存在",null); + } + // 从缓存读取信息 + if(StrUtil.isNotBlank(siteInfo)){ +// return success(JSONObject.parseObject(siteInfo,Website.class)); + } + + // 获取站点信息 + final WebsiteParam websiteParam = new WebsiteParam(); + if (websiteService.count() == 0) { + // 创建网站 + createWebsite(access_token); + } + + HashMap map = new HashMap<>(); + + // 获取站点信息 + final List websites = websiteService.listRel(websiteParam); + final Website website = websites.get(0); + map.put("website",website); + + // 原生导航条 + final List tabBar = mpPagesService.list(new LambdaQueryWrapper().eq(MpPages::getSubpackage, "MainPackage").last("limit 5")); + map.put("tabBar",tabBar); + + // 读取幻灯片广告 + final List list = adService.list(new LambdaQueryWrapper().eq(Ad::getAdType,"幻灯片")); + if (!CollectionUtils.isEmpty(list)) { + map.put("slide",list); + } + + // 小程序端导航图标 + final MpMenuParam mpMenuParam = new MpMenuParam(); + final List mpMenus = mpMenuService.listRel(mpMenuParam); + final Map> mpMenuMap = mpMenus.stream().collect(Collectors.groupingBy(MpMenu::getGroupName)); + map.put("mpMenus",mpMenuMap); + + // 附加自定义导航 + final NavigationParam navigationParam = new NavigationParam(); + navigationParam.setHide(0); + final List navigations = navigationService.listRel(navigationParam); + final Map> collect = navigations.stream().collect(Collectors.groupingBy(Navigation::getPosition)); + website.setNavigations(navigations); + map.put("menus",navigations); + // 封装网站顶部菜单 + if(!CollectionUtils.isEmpty(collect.get(1))){ + final List topNavs = toTreeData(collect.get(1), 0, Navigation::getParentId, Navigation::getNavigationId, Navigation::setChildren); + website.setTopNavs(topNavs); + } + // 封装网站底部菜单 + if (!CollectionUtils.isEmpty(collect.get(2))) { + final List bottomNavs = toTreeData(collect.get(2), 0, Navigation::getParentId, Navigation::getNavigationId, Navigation::setChildren); + website.setBottomNavs(bottomNavs); + } + + + + // 首页布局 + final Design design = designService.getOne(new LambdaQueryWrapper().eq(Design::getHome, 1).last("limit 1")); + if (design != null) { + website.setLayout(design.getLayout()); + } + + // 读取友情链接 + final LinkParam linkParam = new LinkParam(); + linkParam.setLinkType("友情链接"); + website.setLinks(linkService.listRel(linkParam)); + + // 配置信息 + HashMap config = new HashMap<>(); + config.put("LICENSE_CODE", ""); + config.put("MAP_KEY", ""); + final List fields = websiteFieldService.list(); + fields.forEach(d -> { + config.put(d.getName(),d.getValue()); + }); + map.put("config",config); +// website.setConfig(config); + + // 服务器时间 + HashMap serverTime = new HashMap<>(); + // 今天日期 + DateTime date = DateUtil.date(); + String today= DateUtil.today(); + // 明天日期 + final DateTime dateTime = DateUtil.tomorrow(); + String tomorrow = DateUtil.format(dateTime, "yyyy-MM-dd"); + // 后天日期 + final DateTime dateTime2 = DateUtil.offsetDay(date, 2); + final String afterDay = DateUtil.format(dateTime2, "yyyy-MM-dd"); + // 今天星期几 + final int week = DateUtil.thisDayOfWeek(); + final DateTime nextWeek = DateUtil.nextWeek(); + serverTime.put("now",DateUtil.now()); // 2024-07-18 22:06:36 + serverTime.put("today",today); // 2024-07-18 + serverTime.put("tomorrow",tomorrow); // 2024-07-19 + serverTime.put("afterDay",afterDay); // 2024-07-20 + serverTime.put("nextWeek",nextWeek); // 2024-07-25 22:06:36 + serverTime.put("week",week); // 5 + website.setServerTime(serverTime); + redisUtil.set(key,website,1L, TimeUnit.DAYS); + return success(map); + } + + private void createWebsite(String access_token) { + final Integer tenantId = getTenantId(); + // 请求主服务器获取租户信息 + String result = HttpRequest.get("https://server.gxwebsoft.com/api/auth/tenant") + .header("Authorization", access_token) + .header("Tenantid", tenantId.toString()) + .timeout(20000)//超时,毫秒 + .execute().body(); + + JSONObject jsonObject = JSONObject.parseObject(result); + final String data = jsonObject.getString("data"); + final Company company = JSONObject.parseObject(data, Company.class); + if(company == null){ + throw new BusinessException("站点不存在"); + } + // 创建网站记录 + final Website website = new Website(); + website.setTenantId(company.getTenantId()); + website.setWebsiteName(company.getShortName()); + website.setWebsiteLogo(company.getCompanyLogo()); + website.setWebsiteIcon("/favicon.ico"); + website.setWebsiteType("企业官网"); + website.setDomain(company.getDomain()); + website.setExpirationTime(company.getExpirationTime()); + website.setIndustryParent(company.getIndustryParent()); + website.setIndustryChild(company.getIndustryChild()); + website.setCompanyId(company.getCompanyId()); + website.setAddress(company.getAddress()); + website.setComments(company.getComments()); + website.setKeywords(company.getCompanyName()); + website.setUserId(company.getUserId()); + websiteService.save(website); + + // 创建默认页面及导航 + final Navigation navigation = new Navigation(); + final Design design = new Design(); + // 1.首页 + design.setName("首页"); + design.setHome(1); + design.setPath("/"); + design.setComponent("/index"); + design.setSortNumber(0); + designService.save(design); + navigation.setTitle(design.getName()); + navigation.setPath(design.getPath()); + navigation.setComponent(design.getComponent()); + navigation.setHome(design.getHome()); + navigation.setPageId(design.getPageId()); + navigation.setSortNumber(0); + navigation.setType(1); + navigation.setPosition(1); + navigationService.save(navigation); + // 2.关于我们 + design.setName("关于我们"); + design.setPath("/about"); + design.setComponent("/about/index"); + design.setSortNumber(1); + designService.save(design); + navigation.setTitle(design.getName()); + navigation.setPath(design.getPath()); + navigation.setComponent(design.getComponent()); + navigation.setPageId(design.getPageId()); + navigation.setSortNumber(1); + navigation.setType(1); + navigationService.save(navigation); + // 3.产品展示 + final ArticleCategory articleCategory = new ArticleCategory(); + articleCategory.setTitle("产品展示"); + articleCategory.setPath("/product/" + articleCategory.getCategoryId()); + articleCategory.setComponent("/article/photo"); + articleCategory.setSortNumber(2); + articleCategoryService.save(articleCategory); + navigation.setTitle(articleCategory.getTitle()); + navigation.setPath(articleCategory.getPath()); + navigation.setComponent(articleCategory.getComponent()); + navigation.setArticleCategoryId(articleCategory.getCategoryId()); + navigation.setSortNumber(2); + navigation.setType(2); + navigationService.save(navigation); + // 4.新闻资讯 + articleCategory.setTitle("新闻资讯"); + articleCategoryService.save(articleCategory); + navigation.setTitle(articleCategory.getTitle()); + navigation.setPath("/article/" + articleCategory.getCategoryId()); + navigation.setComponent("/article/index"); + navigation.setArticleCategoryId(articleCategory.getCategoryId()); + navigation.setSortNumber(3); + navigation.setType(2); + navigation.setPosition(1); + navigationService.save(navigation); + // 5.表单页面 + final Form form = new Form(); + form.setName("业务咨询"); + form.setLayout("[{\"id\":\"vhEB\",\"type\":\"text\",\"name\":\"姓名\",\"checked\":true},{\"id\":\"Hg7v\",\"type\":\"phone\",\"name\":\"手机号码\",\"checked\":true},{\"id\":\"byBy\",\"type\":\"textarea\",\"name\":\"需求描述\",\"checked\":false}]"); + form.setComments("简单描述您的需求,我们会尽快联系您"); + formService.save(form); + navigation.setTitle(form.getName()); + navigation.setPath("/form/" + form.getFormId()); + navigation.setComponent("/form/index"); + navigation.setFormId(form.getFormId()); + navigation.setSortNumber(4); + navigation.setType(4); + navigation.setPosition(1); + navigationService.save(navigation); + // 6.联系我们 + design.setName("联系我们"); + design.setPath("/contact"); + design.setComponent("/about/index"); + design.setSortNumber(5); + designService.save(design); + navigation.setTitle(design.getName()); + navigation.setPath(design.getPath()); + navigation.setComponent(design.getComponent()); + navigation.setPageId(design.getPageId()); + navigation.setSortNumber(5); + navigation.setType(1); + navigation.setPosition(1); + navigationService.save(navigation); + // 添加字典 + final Dict dict = new Dict(); + dict.setDictName("路由方式"); + dict.setDictCode("navType"); + dict.setSortNumber(100); + final boolean save = dictService.save(dict); + final Integer dictId = dict.getDictId(); + final DictData dictData = new DictData(); + dictData.setDictDataName("uni.navigateTo"); + dictData.setDictDataCode("uni.navigateTo"); + dictData.setComments("保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面"); + dictDataService.save(dictData); + dictData.setDictDataName("uni.redirectTo"); + dictData.setDictDataCode("uni.redirectTo"); + dictData.setComments("关闭当前页面,跳转到应用内的某个页面"); + dictDataService.save(dictData); + dictData.setDictDataName("uni.reLaunch"); + dictData.setDictDataCode("uni.reLaunch"); + dictData.setComments("关闭所有页面,打开到应用内的某个页面"); + dictDataService.save(dictData); + dictData.setDictDataName("uni.switchTab"); + dictData.setDictDataCode("uni.switchTab"); + dictData.setComments("跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面"); + dictDataService.save(dictData); + // 网站配置参数 + List fields = new ArrayList<>(); + WebsiteField field = new WebsiteField(); + field.setType(0); + field.setName("siteLogo"); + field.setValue(company.getCompanyLogo()); + field.setComments("网站LOGO"); + websiteFieldService.save(field); + field.setName("siteName"); + field.setValue(company.getShortName()); + field.setComments("网站名称"); + websiteFieldService.save(field); + field.setName("icpNo"); + field.setValue("-"); + field.setComments("备案号"); + websiteFieldService.save(field); + field.setName("qrcode"); + field.setValue(""); + field.setComments("公众号二维码"); + websiteFieldService.save(field); + field.setName("bottomBg"); + field.setValue("https://oss.wsdns.cn/20240717/13165035c35e4f25a6c9fbd3636c6292.png"); + field.setComments("网站底部背景图"); + websiteFieldService.save(field); + field.setName("address"); + field.setValue(company.getAddress()); + field.setComments("办公地址"); + websiteFieldService.save(field); + field.setName("tel"); + field.setValue(company.getTel()); + field.setComments("公司电话"); + websiteFieldService.save(field); + field.setName("domain"); + field.setValue(company.getDomain()); + field.setComments("网站域名"); + websiteFieldService.save(field); + } + + @ApiOperation("获取服务器时间") + @GetMapping("/getServerTime") + public ApiResult getServerTime(){ + // 服务器时间 + final ServerTimeVO vo = new ServerTimeVO(); + final int hour = DateUtil.hour(DateUtil.date(), true); + final int minute = DateUtil.minute(DateUtil.date()); + vo.setDate(DateUtil.date()); + vo.setToday(DateUtil.today()); + vo.setHour(hour); + vo.setMinute(minute); + vo.setHourMinute(String.format("%02d", hour).concat(String.format("%02d", minute))); + final int compare = Integer.compare(Integer.valueOf(vo.getHourMinute()), 900); + vo.setIsAfter(compare); + + final User loginUser = getLoginUser(); + if (loginUser != null) { + if (orderService.count(new LambdaQueryWrapper().eq(Order::getPayStatus,0)) > 0) { + vo.setHasNoPayOrder(true); + } + } + return success(vo); + } + + @ApiOperation("获取未来一周的日期") + @GetMapping("/getNext7day") + public ApiResult getNext7day(){ + List dateList = new ArrayList<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat sdf2 = new SimpleDateFormat("MM-dd"); + for (int i = 0; i < 7; i++) { + Date date = DateUtils.addDays(new Date(), +i); + String formatDate = sdf.format(date); + String dateTime = sdf2.format(date); + final Next7dayVO vo = new Next7dayVO(); + vo.setDate(dateTime); + vo.setDateTime(formatDate); + final DateTime parse = DateUtil.parse(formatDate); + int dayOfWeek = DateUtil.dayOfWeek(parse); + vo.setWeek(dayOfWeek - 1); + dateList.add(vo); + } + + return success(dateList); + } + + @PreAuthorize("hasAuthority('cms:website:remove')") + @ApiOperation("清除缓存") + @DeleteMapping("/clearSiteInfo/{key}") + public ApiResult clearSiteInfo(@PathVariable("key") String key) { + final String siteInfo = redisUtil.get(key); + if(StrUtil.isNotBlank(siteInfo)){ + // 清除指定key + redisUtil.delete(key); + // 清除小程序缓存 + redisUtil.delete("MpInfo:".concat(getTenantId().toString())); + // 选择支付方式 + redisUtil.delete("SelectPayment:".concat(getTenantId().toString())); + return success("清除成功"); + } + return success("清除失败"); + } + + @ApiOperation("分页查询网站信息记录表") + @GetMapping("/page") + public ApiResult> page(WebsiteParam param) { + // 使用关联查询 + return success(websiteService.pageRel(param)); + } + + @PreAuthorize("hasAuthority('cms:website:list')") + @ApiOperation("查询全部网站信息记录表") + @GetMapping() + public ApiResult> list(WebsiteParam param) { + // 使用关联查询 + return success(websiteService.listRel(param)); + } + + @ApiOperation("根据id查询网站信息记录表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(websiteService.getByIdRel(id)); + } + + @PreAuthorize("hasAuthority('cms:website:save')") + @ApiOperation("添加网站信息记录表") + @PostMapping() + public ApiResult save(@RequestBody Website website) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + website.setUserId(loginUser.getUserId()); + } + if (websiteService.save(website)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @PreAuthorize("hasAuthority('cms:website:update')") + @ApiOperation("修改网站信息记录表") + @PutMapping() + public ApiResult update(@RequestBody Website website) { + if (websiteService.updateById(website)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @PreAuthorize("hasAuthority('cms:website:remove')") + @ApiOperation("删除网站信息记录表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (websiteService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @PreAuthorize("hasAuthority('cms:website:save')") + @ApiOperation("批量添加网站信息记录表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (websiteService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @PreAuthorize("hasAuthority('cms:website:update')") + @ApiOperation("批量修改网站信息记录表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(websiteService, "website_id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @PreAuthorize("hasAuthority('cms:website:remove')") + @ApiOperation("批量删除网站信息记录表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (websiteService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerApplyController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerApplyController.java new file mode 100644 index 0000000..b2bbd4b --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerApplyController.java @@ -0,0 +1,131 @@ +package com.gxwebsoft.shop.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.entity.DealerUser; +import com.gxwebsoft.shop.service.DealerApplyService; +import com.gxwebsoft.shop.entity.DealerApply; +import com.gxwebsoft.shop.param.DealerApplyParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import com.gxwebsoft.shop.service.DealerUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商申请记录表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商申请记录表管理") +@RestController +@RequestMapping("/api/shop/dealer-apply") +public class DealerApplyController extends BaseController { + @Resource + private DealerApplyService dealerApplyService; + @Resource + private DealerUserService dealerUserService; + + @ApiOperation("分页查询分销商申请记录表") + @GetMapping("/page") + public ApiResult> page(DealerApplyParam param) { + // 使用关联查询 + return success(dealerApplyService.pageRel(param)); + } + + @ApiOperation("查询全部分销商申请记录表") + @GetMapping() + public ApiResult> list(DealerApplyParam param) { + // 使用关联查询 + return success(dealerApplyService.listRel(param)); + } + + @ApiOperation("根据id查询分销商申请记录表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerApplyService.getByIdRel(id)); + } + + @ApiOperation("添加分销商申请记录表") + @PostMapping() + public ApiResult save(@RequestBody DealerApply dealerApply) { + final Integer refereeId = dealerApply.getRefereeId(); + final DealerUser dealerUser = new DealerUser(); + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerApply.setUserId(loginUser.getUserId()); + dealerUser.setUserId(loginUser.getUserId()); + dealerUser.setMobile(loginUser.getPhone()); + dealerUser.setTenantId(loginUser.getTenantId()); + } + if (dealerUserService.count(new LambdaQueryWrapper().eq(DealerUser::getUserId,refereeId)) == 0) { + return fail("邀请人ID不存在"); + } + if (dealerApplyService.save(dealerApply)) { + dealerUser.setRealName(dealerApply.getRealName()); + dealerUser.setRefereeId(dealerApply.getRefereeId()); + System.out.println("dealerUser = " + dealerUser); + dealerUserService.save(dealerUser); + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商申请记录表") + @PutMapping() + public ApiResult update(@RequestBody DealerApply dealerApply) { + if (dealerApplyService.updateById(dealerApply)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商申请记录表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerApplyService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商申请记录表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerApplyService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商申请记录表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerApplyService, "apply_id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商申请记录表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerApplyService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerCapitalController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerCapitalController.java new file mode 100644 index 0000000..bab6478 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerCapitalController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerCapitalService; +import com.gxwebsoft.shop.entity.DealerCapital; +import com.gxwebsoft.shop.param.DealerCapitalParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商资金明细表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商资金明细表管理") +@RestController +@RequestMapping("/api/shop/dealer-capital") +public class DealerCapitalController extends BaseController { + @Resource + private DealerCapitalService dealerCapitalService; + + @ApiOperation("分页查询分销商资金明细表") + @GetMapping("/page") + public ApiResult> page(DealerCapitalParam param) { + // 使用关联查询 + return success(dealerCapitalService.pageRel(param)); + } + + @ApiOperation("查询全部分销商资金明细表") + @GetMapping() + public ApiResult> list(DealerCapitalParam param) { + // 使用关联查询 + return success(dealerCapitalService.listRel(param)); + } + + @PreAuthorize("hasAuthority('shop:dealerCapital:list')") + @ApiOperation("根据id查询分销商资金明细表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerCapitalService.getByIdRel(id)); + } + + @ApiOperation("添加分销商资金明细表") + @PostMapping() + public ApiResult save(@RequestBody DealerCapital dealerCapital) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerCapital.setUserId(loginUser.getUserId()); + } + if (dealerCapitalService.save(dealerCapital)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商资金明细表") + @PutMapping() + public ApiResult update(@RequestBody DealerCapital dealerCapital) { + if (dealerCapitalService.updateById(dealerCapital)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商资金明细表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerCapitalService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商资金明细表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerCapitalService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商资金明细表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerCapitalService, "id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商资金明细表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerCapitalService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerOrderController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerOrderController.java new file mode 100644 index 0000000..1de8172 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerOrderController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerOrderService; +import com.gxwebsoft.shop.entity.DealerOrder; +import com.gxwebsoft.shop.param.DealerOrderParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商订单记录表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商订单记录表管理") +@RestController +@RequestMapping("/api/shop/dealer-order") +public class DealerOrderController extends BaseController { + @Resource + private DealerOrderService dealerOrderService; + + @ApiOperation("分页查询分销商订单记录表") + @GetMapping("/page") + public ApiResult> page(DealerOrderParam param) { + // 使用关联查询 + return success(dealerOrderService.pageRel(param)); + } + + @ApiOperation("查询全部分销商订单记录表") + @GetMapping() + public ApiResult> list(DealerOrderParam param) { + // 使用关联查询 + return success(dealerOrderService.listRel(param)); + } + + @PreAuthorize("hasAuthority('shop:dealerOrder:list')") + @ApiOperation("根据id查询分销商订单记录表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerOrderService.getByIdRel(id)); + } + + @ApiOperation("添加分销商订单记录表") + @PostMapping() + public ApiResult save(@RequestBody DealerOrder dealerOrder) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerOrder.setUserId(loginUser.getUserId()); + } + if (dealerOrderService.save(dealerOrder)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商订单记录表") + @PutMapping() + public ApiResult update(@RequestBody DealerOrder dealerOrder) { + if (dealerOrderService.updateById(dealerOrder)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商订单记录表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerOrderService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商订单记录表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerOrderService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商订单记录表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerOrderService, "id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商订单记录表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerOrderService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerRefereeController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerRefereeController.java new file mode 100644 index 0000000..e9eff09 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerRefereeController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerRefereeService; +import com.gxwebsoft.shop.entity.DealerReferee; +import com.gxwebsoft.shop.param.DealerRefereeParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商推荐关系表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商推荐关系表管理") +@RestController +@RequestMapping("/api/shop/dealer-referee") +public class DealerRefereeController extends BaseController { + @Resource + private DealerRefereeService dealerRefereeService; + + @ApiOperation("分页查询分销商推荐关系表") + @GetMapping("/page") + public ApiResult> page(DealerRefereeParam param) { + // 使用关联查询 + return success(dealerRefereeService.pageRel(param)); + } + + @ApiOperation("查询全部分销商推荐关系表") + @GetMapping() + public ApiResult> list(DealerRefereeParam param) { + // 使用关联查询 + return success(dealerRefereeService.listRel(param)); + } + + @PreAuthorize("hasAuthority('shop:dealerReferee:list')") + @ApiOperation("根据id查询分销商推荐关系表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerRefereeService.getByIdRel(id)); + } + + @ApiOperation("添加分销商推荐关系表") + @PostMapping() + public ApiResult save(@RequestBody DealerReferee dealerReferee) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerReferee.setUserId(loginUser.getUserId()); + } + if (dealerRefereeService.save(dealerReferee)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商推荐关系表") + @PutMapping() + public ApiResult update(@RequestBody DealerReferee dealerReferee) { + if (dealerRefereeService.updateById(dealerReferee)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商推荐关系表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerRefereeService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商推荐关系表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerRefereeService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商推荐关系表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerRefereeService, "id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商推荐关系表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerRefereeService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerSettingController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerSettingController.java new file mode 100644 index 0000000..79714d0 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerSettingController.java @@ -0,0 +1,110 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerSettingService; +import com.gxwebsoft.shop.entity.DealerSetting; +import com.gxwebsoft.shop.param.DealerSettingParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商设置表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商设置表管理") +@RestController +@RequestMapping("/api/shop/dealer-setting") +public class DealerSettingController extends BaseController { + @Resource + private DealerSettingService dealerSettingService; + + @ApiOperation("分页查询分销商设置表") + @GetMapping("/page") + public ApiResult> page(DealerSettingParam param) { + // 使用关联查询 + return success(dealerSettingService.pageRel(param)); + } + + @ApiOperation("查询全部分销商设置表") + @GetMapping() + public ApiResult> list(DealerSettingParam param) { + // 使用关联查询 + return success(dealerSettingService.listRel(param)); + } + + @PreAuthorize("hasAuthority('shop:dealerSetting:list')") + @ApiOperation("根据id查询分销商设置表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") String id) { + // 使用关联查询 + return success(dealerSettingService.getByIdRel(id)); + } + + @ApiOperation("添加分销商设置表") + @PostMapping() + public ApiResult save(@RequestBody DealerSetting dealerSetting) { + if (dealerSettingService.save(dealerSetting)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商设置表") + @PutMapping() + public ApiResult update(@RequestBody DealerSetting dealerSetting) { + if (dealerSettingService.updateById(dealerSetting)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商设置表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerSettingService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商设置表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerSettingService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商设置表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerSettingService, "key")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商设置表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerSettingService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerUserController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerUserController.java new file mode 100644 index 0000000..eeac55f --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerUserController.java @@ -0,0 +1,114 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerUserService; +import com.gxwebsoft.shop.entity.DealerUser; +import com.gxwebsoft.shop.param.DealerUserParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商用户记录表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商用户记录表管理") +@RestController +@RequestMapping("/api/shop/dealer-user") +public class DealerUserController extends BaseController { + @Resource + private DealerUserService dealerUserService; + + @ApiOperation("分页查询分销商用户记录表") + @GetMapping("/page") + public ApiResult> page(DealerUserParam param) { + // 使用关联查询 + return success(dealerUserService.pageRel(param)); + } + + @ApiOperation("查询全部分销商用户记录表") + @GetMapping() + public ApiResult> list(DealerUserParam param) { + // 使用关联查询 + return success(dealerUserService.listRel(param)); + } + + @ApiOperation("根据id查询分销商用户记录表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerUserService.getByIdRel(id)); + } + + @ApiOperation("添加分销商用户记录表") + @PostMapping() + public ApiResult save(@RequestBody DealerUser dealerUser) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerUser.setUserId(loginUser.getUserId()); + } + if (dealerUserService.save(dealerUser)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商用户记录表") + @PutMapping() + public ApiResult update(@RequestBody DealerUser dealerUser) { + if (dealerUserService.updateById(dealerUser)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商用户记录表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerUserService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商用户记录表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerUserService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商用户记录表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerUserService, "user_id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商用户记录表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerUserService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/DealerWithdrawController.java b/src/main/java/com/gxwebsoft/shop/controller/DealerWithdrawController.java new file mode 100644 index 0000000..02f8400 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/controller/DealerWithdrawController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.shop.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.shop.service.DealerWithdrawService; +import com.gxwebsoft.shop.entity.DealerWithdraw; +import com.gxwebsoft.shop.param.DealerWithdrawParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 分销商提现明细表控制器 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Api(tags = "分销商提现明细表管理") +@RestController +@RequestMapping("/api/shop/dealer-withdraw") +public class DealerWithdrawController extends BaseController { + @Resource + private DealerWithdrawService dealerWithdrawService; + + @ApiOperation("分页查询分销商提现明细表") + @GetMapping("/page") + public ApiResult> page(DealerWithdrawParam param) { + // 使用关联查询 + return success(dealerWithdrawService.pageRel(param)); + } + + @ApiOperation("查询全部分销商提现明细表") + @GetMapping() + public ApiResult> list(DealerWithdrawParam param) { + // 使用关联查询 + return success(dealerWithdrawService.listRel(param)); + } + + @PreAuthorize("hasAuthority('shop:dealerWithdraw:list')") + @ApiOperation("根据id查询分销商提现明细表") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(dealerWithdrawService.getByIdRel(id)); + } + + @ApiOperation("添加分销商提现明细表") + @PostMapping() + public ApiResult save(@RequestBody DealerWithdraw dealerWithdraw) { + // 记录当前登录用户id + User loginUser = getLoginUser(); + if (loginUser != null) { + dealerWithdraw.setUserId(loginUser.getUserId()); + } + if (dealerWithdrawService.save(dealerWithdraw)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改分销商提现明细表") + @PutMapping() + public ApiResult update(@RequestBody DealerWithdraw dealerWithdraw) { + if (dealerWithdrawService.updateById(dealerWithdraw)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除分销商提现明细表") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (dealerWithdrawService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加分销商提现明细表") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (dealerWithdrawService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改分销商提现明细表") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(dealerWithdrawService, "id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除分销商提现明细表") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (dealerWithdrawService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/controller/GoodsCategoryController.java b/src/main/java/com/gxwebsoft/shop/controller/GoodsCategoryController.java index 88c0811..e9cb3c9 100644 --- a/src/main/java/com/gxwebsoft/shop/controller/GoodsCategoryController.java +++ b/src/main/java/com/gxwebsoft/shop/controller/GoodsCategoryController.java @@ -2,6 +2,7 @@ package com.gxwebsoft.shop.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.gxwebsoft.common.core.utils.JSONUtil; import com.gxwebsoft.common.core.web.ApiResult; import com.gxwebsoft.common.core.web.BaseController; import com.gxwebsoft.common.core.web.BatchParam; @@ -51,14 +52,17 @@ public class GoodsCategoryController extends BaseController { if (categoryIds.isEmpty()) { return success(list); } +// System.out.println("param.getType() = " + param.getType()); +// final List goods = goodsService.getGoodsSpecType0(); +// System.out.println("goodsBySpec = " + goods); - final List goods = goodsService.getGoodsSpec(); - System.out.println("goodsBySpec = " + goods); - -// final List goods = goodsService.list(new LambdaQueryWrapper().in(Goods::getCategoryId, categoryIds).eq(Goods::getStatus,0).eq(Goods::getDeleted,0)); + final List goods = goodsService.list(new LambdaQueryWrapper().in(Goods::getCategoryId, categoryIds).eq(Goods::getIsShow,1).eq(Goods::getDeleted,0)); final Map> collectGoods = goods.stream().collect(Collectors.groupingBy(Goods::getCategoryId)); - final List specs = goodsSpecService.list(new LambdaQueryWrapper().in(GoodsSpec::getGoodsId, categoryIds)); + final Set goodsIds = goods.stream().map(Goods::getGoodsId).collect(Collectors.toSet()); + System.out.println("goodsIds = " + goodsIds); + + final List specs = goodsSpecService.list(new LambdaQueryWrapper().in(GoodsSpec::getGoodsId, goodsIds)); System.out.println("specs = " + specs); final Map> collectGoodsSpec = specs.stream().collect(Collectors.groupingBy(GoodsSpec::getGoodsId)); @@ -66,16 +70,16 @@ public class GoodsCategoryController extends BaseController { d.setName(d.getTitle()); final List goodsList = collectGoods.get(d.getCategoryId()); if (!CollectionUtils.isEmpty(goodsList)) { -// goodsList.forEach(v -> { -// System.out.println("v = " + v); -// final String specValue = v.getSpecValue(); -// System.out.println("collectGoodsSpec = " + collectGoodsSpec); -// final List goodsSpecs = collectGoodsSpec.get(v.getGoodsId()); -// if (!CollectionUtils.isEmpty(goodsSpecs)) { -// final GoodsSpec spec = goodsSpecs.get(0); -// v.setGoodsSpecValue(spec.getSpecValue()); -// } -// }); + goodsList.forEach(v -> { + System.out.println("v = " + v.getSpecValue()); + final String specValue = v.getSpecValue(); + final List goodsSpecs = collectGoodsSpec.get(v.getGoodsId()); + if (!CollectionUtils.isEmpty(goodsSpecs)) { + final GoodsSpec spec = goodsSpecs.get(0); + v.setSpecValue(spec.getSpecValue()); + v.setGoodsSpecValue(JSONUtil.parseObject(spec.getSpecValue(),Object.class)); + } + }); d.setChildrens(collectGoods.get(d.getCategoryId())); } }); diff --git a/src/main/java/com/gxwebsoft/shop/controller/GoodsController.java b/src/main/java/com/gxwebsoft/shop/controller/GoodsController.java index ed948bb..137ddb2 100644 --- a/src/main/java/com/gxwebsoft/shop/controller/GoodsController.java +++ b/src/main/java/com/gxwebsoft/shop/controller/GoodsController.java @@ -47,20 +47,27 @@ public class GoodsController extends BaseController { @ApiOperation("统计信息") @GetMapping("/data") - public ApiResult> data() { + public ApiResult> data(GoodsParam param) { Map data = new HashMap<>(); - Integer totalNum = goodsService.count( - new LambdaQueryWrapper().eq(Goods::getIsShow,1).gt(Goods::getStock,0) - ); - Integer totalNum2 = goodsService.count( - new LambdaQueryWrapper().eq(Goods::getIsShow,0) - ); - Integer totalNum3 = goodsService.count( - new LambdaQueryWrapper().eq(Goods::getStock,0) - ); + final LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + if (param.getMerchantId() != null) { + wrapper.eq(Goods::getMerchantId,param.getMerchantId()); + } + + Integer totalNum = goodsService.count( + wrapper.eq(Goods::getIsShow,1).gt(Goods::getStock,0) + ); data.put("totalNum", totalNum); + + Integer totalNum2 = goodsService.count( + wrapper.eq(Goods::getIsShow,0) + ); data.put("totalNum2", totalNum2); + + Integer totalNum3 = goodsService.count( + wrapper.eq(Goods::getStock,0) + ); data.put("totalNum3", totalNum3); // 下架已售罄的商品 diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerApply.java b/src/main/java/com/gxwebsoft/shop/entity/DealerApply.java new file mode 100644 index 0000000..f5cc2cd --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerApply.java @@ -0,0 +1,66 @@ +package com.gxwebsoft.shop.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商申请记录表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerApply对象", description = "分销商申请记录表") +@TableName("shop_dealer_apply") +public class DealerApply implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "apply_id", type = IdType.AUTO) + private Integer applyId; + + @ApiModelProperty(value = "用户ID") + private Integer userId; + + @ApiModelProperty(value = "姓名") + private String realName; + + @ApiModelProperty(value = "手机号") + private String mobile; + + @ApiModelProperty(value = "推荐人用户ID") + private Integer refereeId; + + @ApiModelProperty(value = "申请方式(10需后台审核 20无需审核)") + private Integer applyType; + + @ApiModelProperty(value = "申请时间") + private Integer applyTime; + + @ApiModelProperty(value = "审核状态 (10待审核 20审核通过 30驳回)") + private Integer applyStatus; + + @ApiModelProperty(value = "审核时间") + private Integer auditTime; + + @ApiModelProperty(value = "驳回原因") + private String rejectReason; + + @ApiModelProperty(value = "商城ID") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerCapital.java b/src/main/java/com/gxwebsoft/shop/entity/DealerCapital.java new file mode 100644 index 0000000..2890052 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerCapital.java @@ -0,0 +1,58 @@ +package com.gxwebsoft.shop.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商资金明细表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerCapital对象", description = "分销商资金明细表") +@TableName("shop_dealer_capital") +public class DealerCapital implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + private Integer userId; + + @ApiModelProperty(value = "订单ID") + private Integer orderId; + + @ApiModelProperty(value = "资金流动类型 (10佣金收入 20提现支出 30转账支出 40转账收入)") + private Integer flowType; + + @ApiModelProperty(value = "金额") + private BigDecimal money; + + @ApiModelProperty(value = "描述") + private String describe; + + @ApiModelProperty(value = "对方用户ID") + private Integer toUserId; + + @ApiModelProperty(value = "商城ID") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerOrder.java b/src/main/java/com/gxwebsoft/shop/entity/DealerOrder.java new file mode 100644 index 0000000..826947c --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerOrder.java @@ -0,0 +1,76 @@ +package com.gxwebsoft.shop.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商订单记录表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerOrder对象", description = "分销商订单记录表") +@TableName("shop_dealer_order") +public class DealerOrder implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "买家用户ID") + private Integer userId; + + @ApiModelProperty(value = "订单ID") + private Integer orderId; + + @ApiModelProperty(value = "订单总金额(不含运费)") + private BigDecimal orderPrice; + + @ApiModelProperty(value = "分销商用户id(一级)") + private Integer firstUserId; + + @ApiModelProperty(value = "分销商用户id(二级)") + private Integer secondUserId; + + @ApiModelProperty(value = "分销商用户id(三级)") + private Integer thirdUserId; + + @ApiModelProperty(value = "分销佣金(一级)") + private BigDecimal firstMoney; + + @ApiModelProperty(value = "分销佣金(二级)") + private BigDecimal secondMoney; + + @ApiModelProperty(value = "分销佣金(三级)") + private BigDecimal thirdMoney; + + @ApiModelProperty(value = "订单是否失效(0未失效 1已失效)") + private Integer isInvalid; + + @ApiModelProperty(value = "佣金结算(0未结算 1已结算)") + private Integer isSettled; + + @ApiModelProperty(value = "结算时间") + private Integer settleTime; + + @ApiModelProperty(value = "商城ID") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerReferee.java b/src/main/java/com/gxwebsoft/shop/entity/DealerReferee.java new file mode 100644 index 0000000..861d47e --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerReferee.java @@ -0,0 +1,48 @@ +package com.gxwebsoft.shop.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商推荐关系表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerReferee对象", description = "分销商推荐关系表") +@TableName("shop_dealer_referee") +public class DealerReferee implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + private Integer dealerId; + + @ApiModelProperty(value = "用户id(被推荐人)") + private Integer userId; + + @ApiModelProperty(value = "推荐关系层级(1,2,3)") + private Integer level; + + @ApiModelProperty(value = "商城ID") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerSetting.java b/src/main/java/com/gxwebsoft/shop/entity/DealerSetting.java new file mode 100644 index 0000000..4bd2f12 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerSetting.java @@ -0,0 +1,41 @@ +package com.gxwebsoft.shop.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商设置表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerSetting对象", description = "分销商设置表") +@TableName("shop_dealer_setting") +public class DealerSetting implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "设置项标示") + @TableId(value = "key", type = IdType.AUTO) + private String key; + + @ApiModelProperty(value = "设置项描述") + private String describe; + + @ApiModelProperty(value = "设置内容(json格式)") + private String values; + + @ApiModelProperty(value = "商城ID") + private Integer tenantId; + + @ApiModelProperty(value = "更新时间") + private Integer updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerUser.java b/src/main/java/com/gxwebsoft/shop/entity/DealerUser.java new file mode 100644 index 0000000..8f1709f --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerUser.java @@ -0,0 +1,80 @@ +package com.gxwebsoft.shop.entity; + +import java.math.BigDecimal; + +import cn.hutool.core.util.DesensitizedUtil; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商用户记录表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerUser对象", description = "分销商用户记录表") +@TableName("shop_dealer_user") +public class DealerUser implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "分销商用户ID") + @TableId(value = "user_id", type = IdType.AUTO) + private Integer userId; + + @ApiModelProperty(value = "姓名") + private String realName; + + @ApiModelProperty(value = "手机号") + private String mobile; + + @ApiModelProperty(value = "支付密码") + private String payPassword; + + @ApiModelProperty(value = "当前可提现佣金") + private BigDecimal money; + + @ApiModelProperty(value = "已冻结佣金") + private BigDecimal freezeMoney; + + @ApiModelProperty(value = "累积提现佣金") + private BigDecimal totalMoney; + + @ApiModelProperty(value = "推荐人用户ID") + private Integer refereeId; + + @ApiModelProperty(value = "成员数量(一级)") + private Integer firstNum; + + @ApiModelProperty(value = "成员数量(二级)") + private Integer secondNum; + + @ApiModelProperty(value = "成员数量(三级)") + private Integer thirdNum; + + @ApiModelProperty(value = "是否删除") + private Integer isDelete; + + @ApiModelProperty(value = "租户id") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + + @ApiModelProperty(value = "推荐人姓名(脱敏)") + @TableField(exist = false) + private String dealerName; + +} diff --git a/src/main/java/com/gxwebsoft/shop/entity/DealerWithdraw.java b/src/main/java/com/gxwebsoft/shop/entity/DealerWithdraw.java new file mode 100644 index 0000000..73fe6e9 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/entity/DealerWithdraw.java @@ -0,0 +1,76 @@ +package com.gxwebsoft.shop.entity; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商提现明细表 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "DealerWithdraw对象", description = "分销商提现明细表") +@TableName("shop_dealer_withdraw") +public class DealerWithdraw implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + private Integer userId; + + @ApiModelProperty(value = "提现金额") + private BigDecimal money; + + @ApiModelProperty(value = "打款方式 (10微信 20支付宝 30银行卡)") + private Integer payType; + + @ApiModelProperty(value = "支付宝姓名") + private String alipayName; + + @ApiModelProperty(value = "支付宝账号") + private String alipayAccount; + + @ApiModelProperty(value = "开户行名称") + private String bankName; + + @ApiModelProperty(value = "银行开户名") + private String bankAccount; + + @ApiModelProperty(value = "银行卡号") + private String bankCard; + + @ApiModelProperty(value = "申请状态 (10待审核 20审核通过 30驳回 40已打款)") + private Integer applyStatus; + + @ApiModelProperty(value = "审核时间") + private Integer auditTime; + + @ApiModelProperty(value = "驳回原因") + private String rejectReason; + + @ApiModelProperty(value = "来源客户端(APP、H5、小程序等)") + private String platform; + + @ApiModelProperty(value = "租户id") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerApplyMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerApplyMapper.java new file mode 100644 index 0000000..89b3979 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerApplyMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerApply; +import com.gxwebsoft.shop.param.DealerApplyParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商申请记录表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerApplyMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerApplyParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerApplyParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerCapitalMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerCapitalMapper.java new file mode 100644 index 0000000..9a459ec --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerCapitalMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerCapital; +import com.gxwebsoft.shop.param.DealerCapitalParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商资金明细表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerCapitalMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerCapitalParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerCapitalParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerOrderMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerOrderMapper.java new file mode 100644 index 0000000..ebecaf4 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerOrderMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerOrder; +import com.gxwebsoft.shop.param.DealerOrderParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商订单记录表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerOrderMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerOrderParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerOrderParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerRefereeMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerRefereeMapper.java new file mode 100644 index 0000000..95624e9 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerRefereeMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerReferee; +import com.gxwebsoft.shop.param.DealerRefereeParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商推荐关系表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerRefereeMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerRefereeParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerRefereeParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerSettingMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerSettingMapper.java new file mode 100644 index 0000000..9465c3b --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerSettingMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerSetting; +import com.gxwebsoft.shop.param.DealerSettingParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商设置表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerSettingMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerSettingParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerSettingParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerUserMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerUserMapper.java new file mode 100644 index 0000000..ba03cf1 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerUserMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerUser; +import com.gxwebsoft.shop.param.DealerUserParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商用户记录表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerUserMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerUserParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerUserParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/DealerWithdrawMapper.java b/src/main/java/com/gxwebsoft/shop/mapper/DealerWithdrawMapper.java new file mode 100644 index 0000000..9cf6bda --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/DealerWithdrawMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.shop.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.shop.entity.DealerWithdraw; +import com.gxwebsoft.shop.param.DealerWithdrawParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 分销商提现明细表Mapper + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerWithdrawMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") DealerWithdrawParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") DealerWithdrawParam param); + +} diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerApplyMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerApplyMapper.xml new file mode 100644 index 0000000..d221b82 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerApplyMapper.xml @@ -0,0 +1,63 @@ + + + + + + + SELECT a.* + FROM shop_dealer_apply a + + + AND a.apply_id = #{param.applyId} + + + AND a.user_id = #{param.userId} + + + AND a.real_name LIKE CONCAT('%', #{param.realName}, '%') + + + AND a.mobile LIKE CONCAT('%', #{param.mobile}, '%') + + + AND a.referee_id = #{param.refereeId} + + + AND a.apply_type = #{param.applyType} + + + AND a.apply_time = #{param.applyTime} + + + AND a.apply_status = #{param.applyStatus} + + + AND a.audit_time = #{param.auditTime} + + + AND a.reject_reason LIKE CONCAT('%', #{param.rejectReason}, '%') + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerCapitalMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerCapitalMapper.xml new file mode 100644 index 0000000..551ea7e --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerCapitalMapper.xml @@ -0,0 +1,54 @@ + + + + + + + SELECT a.* + FROM shop_dealer_capital a + + + AND a.id = #{param.id} + + + AND a.user_id = #{param.userId} + + + AND a.order_id = #{param.orderId} + + + AND a.flow_type = #{param.flowType} + + + AND a.money = #{param.money} + + + AND a.describe LIKE CONCAT('%', #{param.describe}, '%') + + + AND a.to_user_id = #{param.toUserId} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerOrderMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerOrderMapper.xml new file mode 100644 index 0000000..1f70db9 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerOrderMapper.xml @@ -0,0 +1,72 @@ + + + + + + + SELECT a.* + FROM shop_dealer_order a + + + AND a.id = #{param.id} + + + AND a.user_id = #{param.userId} + + + AND a.order_id = #{param.orderId} + + + AND a.order_price = #{param.orderPrice} + + + AND a.first_user_id = #{param.firstUserId} + + + AND a.second_user_id = #{param.secondUserId} + + + AND a.third_user_id = #{param.thirdUserId} + + + AND a.first_money = #{param.firstMoney} + + + AND a.second_money = #{param.secondMoney} + + + AND a.third_money = #{param.thirdMoney} + + + AND a.is_invalid = #{param.isInvalid} + + + AND a.is_settled = #{param.isSettled} + + + AND a.settle_time = #{param.settleTime} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerRefereeMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerRefereeMapper.xml new file mode 100644 index 0000000..34bd798 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerRefereeMapper.xml @@ -0,0 +1,45 @@ + + + + + + + SELECT a.* + FROM shop_dealer_referee a + + + AND a.id = #{param.id} + + + AND a.dealer_id = #{param.dealerId} + + + AND a.user_id = #{param.userId} + + + AND a.level = #{param.level} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerSettingMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerSettingMapper.xml new file mode 100644 index 0000000..55013e2 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerSettingMapper.xml @@ -0,0 +1,36 @@ + + + + + + + SELECT a.* + FROM shop_dealer_setting a + + + AND a.key = #{param.key} + + + AND a.describe LIKE CONCAT('%', #{param.describe}, '%') + + + AND a.values LIKE CONCAT('%', #{param.values}, '%') + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerUserMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerUserMapper.xml new file mode 100644 index 0000000..4ea1e58 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerUserMapper.xml @@ -0,0 +1,70 @@ + + + + + + + SELECT a.*,b.real_name as dealerName + FROM shop_dealer_user a + LEFT JOIN shop_dealer_user b ON a.referee_id = b.user_id + + + AND a.user_id = #{param.userId} + + + AND a.real_name LIKE CONCAT('%', #{param.realName}, '%') + + + AND a.mobile LIKE CONCAT('%', #{param.mobile}, '%') + + + AND a.pay_password LIKE CONCAT('%', #{param.payPassword}, '%') + + + AND a.money = #{param.money} + + + AND a.freeze_money = #{param.freezeMoney} + + + AND a.total_money = #{param.totalMoney} + + + AND a.referee_id = #{param.refereeId} + + + AND a.first_num = #{param.firstNum} + + + AND a.second_num = #{param.secondNum} + + + AND a.third_num = #{param.thirdNum} + + + AND a.is_delete = #{param.isDelete} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerWithdrawMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerWithdrawMapper.xml new file mode 100644 index 0000000..31b8e59 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/DealerWithdrawMapper.xml @@ -0,0 +1,72 @@ + + + + + + + SELECT a.* + FROM shop_dealer_withdraw a + + + AND a.id = #{param.id} + + + AND a.user_id = #{param.userId} + + + AND a.money = #{param.money} + + + AND a.pay_type = #{param.payType} + + + AND a.alipay_name LIKE CONCAT('%', #{param.alipayName}, '%') + + + AND a.alipay_account LIKE CONCAT('%', #{param.alipayAccount}, '%') + + + AND a.bank_name LIKE CONCAT('%', #{param.bankName}, '%') + + + AND a.bank_account LIKE CONCAT('%', #{param.bankAccount}, '%') + + + AND a.bank_card LIKE CONCAT('%', #{param.bankCard}, '%') + + + AND a.apply_status = #{param.applyStatus} + + + AND a.audit_time = #{param.auditTime} + + + AND a.reject_reason LIKE CONCAT('%', #{param.rejectReason}, '%') + + + AND a.platform LIKE CONCAT('%', #{param.platform}, '%') + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerApplyParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerApplyParam.java new file mode 100644 index 0000000..5d5479c --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerApplyParam.java @@ -0,0 +1,63 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商申请记录表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerApplyParam对象", description = "分销商申请记录表查询参数") +public class DealerApplyParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @QueryField(type = QueryType.EQ) + private Integer applyId; + + @ApiModelProperty(value = "用户ID") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "姓名") + private String realName; + + @ApiModelProperty(value = "手机号") + private String mobile; + + @ApiModelProperty(value = "推荐人用户ID") + @QueryField(type = QueryType.EQ) + private Integer refereeId; + + @ApiModelProperty(value = "申请方式(10需后台审核 20无需审核)") + @QueryField(type = QueryType.EQ) + private Integer applyType; + + @ApiModelProperty(value = "申请时间") + @QueryField(type = QueryType.EQ) + private Integer applyTime; + + @ApiModelProperty(value = "审核状态 (10待审核 20审核通过 30驳回)") + @QueryField(type = QueryType.EQ) + private Integer applyStatus; + + @ApiModelProperty(value = "审核时间") + @QueryField(type = QueryType.EQ) + private Integer auditTime; + + @ApiModelProperty(value = "驳回原因") + private String rejectReason; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerCapitalParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerCapitalParam.java new file mode 100644 index 0000000..29d1fae --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerCapitalParam.java @@ -0,0 +1,53 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商资金明细表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerCapitalParam对象", description = "分销商资金明细表查询参数") +public class DealerCapitalParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @QueryField(type = QueryType.EQ) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "订单ID") + @QueryField(type = QueryType.EQ) + private Integer orderId; + + @ApiModelProperty(value = "资金流动类型 (10佣金收入 20提现支出 30转账支出 40转账收入)") + @QueryField(type = QueryType.EQ) + private Integer flowType; + + @ApiModelProperty(value = "金额") + @QueryField(type = QueryType.EQ) + private BigDecimal money; + + @ApiModelProperty(value = "描述") + private String describe; + + @ApiModelProperty(value = "对方用户ID") + @QueryField(type = QueryType.EQ) + private Integer toUserId; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerOrderParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerOrderParam.java new file mode 100644 index 0000000..6a6fbcc --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerOrderParam.java @@ -0,0 +1,78 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商订单记录表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerOrderParam对象", description = "分销商订单记录表查询参数") +public class DealerOrderParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @QueryField(type = QueryType.EQ) + private Integer id; + + @ApiModelProperty(value = "买家用户ID") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "订单ID") + @QueryField(type = QueryType.EQ) + private Integer orderId; + + @ApiModelProperty(value = "订单总金额(不含运费)") + @QueryField(type = QueryType.EQ) + private BigDecimal orderPrice; + + @ApiModelProperty(value = "分销商用户id(一级)") + @QueryField(type = QueryType.EQ) + private Integer firstUserId; + + @ApiModelProperty(value = "分销商用户id(二级)") + @QueryField(type = QueryType.EQ) + private Integer secondUserId; + + @ApiModelProperty(value = "分销商用户id(三级)") + @QueryField(type = QueryType.EQ) + private Integer thirdUserId; + + @ApiModelProperty(value = "分销佣金(一级)") + @QueryField(type = QueryType.EQ) + private BigDecimal firstMoney; + + @ApiModelProperty(value = "分销佣金(二级)") + @QueryField(type = QueryType.EQ) + private BigDecimal secondMoney; + + @ApiModelProperty(value = "分销佣金(三级)") + @QueryField(type = QueryType.EQ) + private BigDecimal thirdMoney; + + @ApiModelProperty(value = "订单是否失效(0未失效 1已失效)") + @QueryField(type = QueryType.EQ) + private Integer isInvalid; + + @ApiModelProperty(value = "佣金结算(0未结算 1已结算)") + @QueryField(type = QueryType.EQ) + private Integer isSettled; + + @ApiModelProperty(value = "结算时间") + @QueryField(type = QueryType.EQ) + private Integer settleTime; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerRefereeParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerRefereeParam.java new file mode 100644 index 0000000..4d7f59c --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerRefereeParam.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商推荐关系表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerRefereeParam对象", description = "分销商推荐关系表查询参数") +public class DealerRefereeParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @QueryField(type = QueryType.EQ) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + @QueryField(type = QueryType.EQ) + private Integer dealerId; + + @ApiModelProperty(value = "用户id(被推荐人)") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "推荐关系层级(1,2,3)") + @QueryField(type = QueryType.EQ) + private Integer level; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerSettingParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerSettingParam.java new file mode 100644 index 0000000..cde1670 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerSettingParam.java @@ -0,0 +1,36 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商设置表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerSettingParam对象", description = "分销商设置表查询参数") +public class DealerSettingParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "设置项标示") + @QueryField(type = QueryType.EQ) + private String key; + + @ApiModelProperty(value = "设置项描述") + private String describe; + + @ApiModelProperty(value = "设置内容(json格式)") + private String values; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerUserParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerUserParam.java new file mode 100644 index 0000000..ae947b4 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerUserParam.java @@ -0,0 +1,71 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商用户记录表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerUserParam对象", description = "分销商用户记录表查询参数") +public class DealerUserParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "分销商用户ID") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "姓名") + private String realName; + + @ApiModelProperty(value = "手机号") + private String mobile; + + @ApiModelProperty(value = "支付密码") + private String payPassword; + + @ApiModelProperty(value = "当前可提现佣金") + @QueryField(type = QueryType.EQ) + private BigDecimal money; + + @ApiModelProperty(value = "已冻结佣金") + @QueryField(type = QueryType.EQ) + private BigDecimal freezeMoney; + + @ApiModelProperty(value = "累积提现佣金") + @QueryField(type = QueryType.EQ) + private BigDecimal totalMoney; + + @ApiModelProperty(value = "推荐人用户ID") + @QueryField(type = QueryType.EQ) + private Integer refereeId; + + @ApiModelProperty(value = "成员数量(一级)") + @QueryField(type = QueryType.EQ) + private Integer firstNum; + + @ApiModelProperty(value = "成员数量(二级)") + @QueryField(type = QueryType.EQ) + private Integer secondNum; + + @ApiModelProperty(value = "成员数量(三级)") + @QueryField(type = QueryType.EQ) + private Integer thirdNum; + + @ApiModelProperty(value = "是否删除") + @QueryField(type = QueryType.EQ) + private Integer isDelete; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/DealerWithdrawParam.java b/src/main/java/com/gxwebsoft/shop/param/DealerWithdrawParam.java new file mode 100644 index 0000000..763eb47 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/param/DealerWithdrawParam.java @@ -0,0 +1,71 @@ +package com.gxwebsoft.shop.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 分销商提现明细表查询参数 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "DealerWithdrawParam对象", description = "分销商提现明细表查询参数") +public class DealerWithdrawParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @QueryField(type = QueryType.EQ) + private Integer id; + + @ApiModelProperty(value = "分销商用户ID") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "提现金额") + @QueryField(type = QueryType.EQ) + private BigDecimal money; + + @ApiModelProperty(value = "打款方式 (10微信 20支付宝 30银行卡)") + @QueryField(type = QueryType.EQ) + private Integer payType; + + @ApiModelProperty(value = "支付宝姓名") + private String alipayName; + + @ApiModelProperty(value = "支付宝账号") + private String alipayAccount; + + @ApiModelProperty(value = "开户行名称") + private String bankName; + + @ApiModelProperty(value = "银行开户名") + private String bankAccount; + + @ApiModelProperty(value = "银行卡号") + private String bankCard; + + @ApiModelProperty(value = "申请状态 (10待审核 20审核通过 30驳回 40已打款)") + @QueryField(type = QueryType.EQ) + private Integer applyStatus; + + @ApiModelProperty(value = "审核时间") + @QueryField(type = QueryType.EQ) + private Integer auditTime; + + @ApiModelProperty(value = "驳回原因") + private String rejectReason; + + @ApiModelProperty(value = "来源客户端(APP、H5、小程序等)") + private String platform; + +} diff --git a/src/main/java/com/gxwebsoft/shop/param/GoodsCategoryParam.java b/src/main/java/com/gxwebsoft/shop/param/GoodsCategoryParam.java index 02d6947..a14d70b 100644 --- a/src/main/java/com/gxwebsoft/shop/param/GoodsCategoryParam.java +++ b/src/main/java/com/gxwebsoft/shop/param/GoodsCategoryParam.java @@ -33,7 +33,7 @@ public class GoodsCategoryParam extends BaseParam { @ApiModelProperty(value = "分类名称") private String title; - @ApiModelProperty(value = "类型 0列表 1单页 2外链") + @ApiModelProperty(value = "类型 0商城 1外卖") @QueryField(type = QueryType.EQ) private Integer type; diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerApplyService.java b/src/main/java/com/gxwebsoft/shop/service/DealerApplyService.java new file mode 100644 index 0000000..92d2051 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerApplyService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerApply; +import com.gxwebsoft.shop.param.DealerApplyParam; + +import java.util.List; + +/** + * 分销商申请记录表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerApplyService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerApplyParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerApplyParam param); + + /** + * 根据id查询 + * + * @param applyId 主键ID + * @return DealerApply + */ + DealerApply getByIdRel(Integer applyId); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerCapitalService.java b/src/main/java/com/gxwebsoft/shop/service/DealerCapitalService.java new file mode 100644 index 0000000..4b7c97a --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerCapitalService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerCapital; +import com.gxwebsoft.shop.param.DealerCapitalParam; + +import java.util.List; + +/** + * 分销商资金明细表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerCapitalService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerCapitalParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerCapitalParam param); + + /** + * 根据id查询 + * + * @param id 主键ID + * @return DealerCapital + */ + DealerCapital getByIdRel(Integer id); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerOrderService.java b/src/main/java/com/gxwebsoft/shop/service/DealerOrderService.java new file mode 100644 index 0000000..19582ed --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerOrderService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerOrder; +import com.gxwebsoft.shop.param.DealerOrderParam; + +import java.util.List; + +/** + * 分销商订单记录表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerOrderService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerOrderParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerOrderParam param); + + /** + * 根据id查询 + * + * @param id 主键ID + * @return DealerOrder + */ + DealerOrder getByIdRel(Integer id); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerRefereeService.java b/src/main/java/com/gxwebsoft/shop/service/DealerRefereeService.java new file mode 100644 index 0000000..430206e --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerRefereeService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerReferee; +import com.gxwebsoft.shop.param.DealerRefereeParam; + +import java.util.List; + +/** + * 分销商推荐关系表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerRefereeService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerRefereeParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerRefereeParam param); + + /** + * 根据id查询 + * + * @param id 主键ID + * @return DealerReferee + */ + DealerReferee getByIdRel(Integer id); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerSettingService.java b/src/main/java/com/gxwebsoft/shop/service/DealerSettingService.java new file mode 100644 index 0000000..069a601 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerSettingService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerSetting; +import com.gxwebsoft.shop.param.DealerSettingParam; + +import java.util.List; + +/** + * 分销商设置表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerSettingService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerSettingParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerSettingParam param); + + /** + * 根据id查询 + * + * @param key 设置项标示 + * @return DealerSetting + */ + DealerSetting getByIdRel(String key); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerUserService.java b/src/main/java/com/gxwebsoft/shop/service/DealerUserService.java new file mode 100644 index 0000000..152f9f1 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerUserService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerUser; +import com.gxwebsoft.shop.param.DealerUserParam; + +import java.util.List; + +/** + * 分销商用户记录表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerUserService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerUserParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerUserParam param); + + /** + * 根据id查询 + * + * @param userId 分销商用户ID + * @return DealerUser + */ + DealerUser getByIdRel(Integer userId); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/DealerWithdrawService.java b/src/main/java/com/gxwebsoft/shop/service/DealerWithdrawService.java new file mode 100644 index 0000000..7d32d3b --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/DealerWithdrawService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.shop.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.shop.entity.DealerWithdraw; +import com.gxwebsoft.shop.param.DealerWithdrawParam; + +import java.util.List; + +/** + * 分销商提现明细表Service + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +public interface DealerWithdrawService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(DealerWithdrawParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(DealerWithdrawParam param); + + /** + * 根据id查询 + * + * @param id 主键ID + * @return DealerWithdraw + */ + DealerWithdraw getByIdRel(Integer id); + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/GoodsService.java b/src/main/java/com/gxwebsoft/shop/service/GoodsService.java index f4cdba7..e100827 100644 --- a/src/main/java/com/gxwebsoft/shop/service/GoodsService.java +++ b/src/main/java/com/gxwebsoft/shop/service/GoodsService.java @@ -3,6 +3,7 @@ package com.gxwebsoft.shop.service; import com.baomidou.mybatisplus.extension.service.IService; import com.gxwebsoft.common.core.web.PageResult; import com.gxwebsoft.shop.entity.Goods; +import com.gxwebsoft.shop.param.GoodsCategoryParam; import com.gxwebsoft.shop.param.GoodsParam; import java.util.List; diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerApplyServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerApplyServiceImpl.java new file mode 100644 index 0000000..1fa3a47 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerApplyServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerApplyMapper; +import com.gxwebsoft.shop.service.DealerApplyService; +import com.gxwebsoft.shop.entity.DealerApply; +import com.gxwebsoft.shop.param.DealerApplyParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商申请记录表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerApplyServiceImpl extends ServiceImpl implements DealerApplyService { + + @Override + public PageResult pageRel(DealerApplyParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerApplyParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerApply getByIdRel(Integer applyId) { + DealerApplyParam param = new DealerApplyParam(); + param.setApplyId(applyId); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerCapitalServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerCapitalServiceImpl.java new file mode 100644 index 0000000..ff78d7f --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerCapitalServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerCapitalMapper; +import com.gxwebsoft.shop.service.DealerCapitalService; +import com.gxwebsoft.shop.entity.DealerCapital; +import com.gxwebsoft.shop.param.DealerCapitalParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商资金明细表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerCapitalServiceImpl extends ServiceImpl implements DealerCapitalService { + + @Override + public PageResult pageRel(DealerCapitalParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerCapitalParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerCapital getByIdRel(Integer id) { + DealerCapitalParam param = new DealerCapitalParam(); + param.setId(id); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerOrderServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerOrderServiceImpl.java new file mode 100644 index 0000000..2bbbf8c --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerOrderServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerOrderMapper; +import com.gxwebsoft.shop.service.DealerOrderService; +import com.gxwebsoft.shop.entity.DealerOrder; +import com.gxwebsoft.shop.param.DealerOrderParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商订单记录表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerOrderServiceImpl extends ServiceImpl implements DealerOrderService { + + @Override + public PageResult pageRel(DealerOrderParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerOrderParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerOrder getByIdRel(Integer id) { + DealerOrderParam param = new DealerOrderParam(); + param.setId(id); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerRefereeServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerRefereeServiceImpl.java new file mode 100644 index 0000000..32a02ce --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerRefereeServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerRefereeMapper; +import com.gxwebsoft.shop.service.DealerRefereeService; +import com.gxwebsoft.shop.entity.DealerReferee; +import com.gxwebsoft.shop.param.DealerRefereeParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商推荐关系表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerRefereeServiceImpl extends ServiceImpl implements DealerRefereeService { + + @Override + public PageResult pageRel(DealerRefereeParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerRefereeParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerReferee getByIdRel(Integer id) { + DealerRefereeParam param = new DealerRefereeParam(); + param.setId(id); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerSettingServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerSettingServiceImpl.java new file mode 100644 index 0000000..ce0f338 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerSettingServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerSettingMapper; +import com.gxwebsoft.shop.service.DealerSettingService; +import com.gxwebsoft.shop.entity.DealerSetting; +import com.gxwebsoft.shop.param.DealerSettingParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商设置表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerSettingServiceImpl extends ServiceImpl implements DealerSettingService { + + @Override + public PageResult pageRel(DealerSettingParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerSettingParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerSetting getByIdRel(String key) { + DealerSettingParam param = new DealerSettingParam(); + param.setKey(key); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerUserServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerUserServiceImpl.java new file mode 100644 index 0000000..e2a047e --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerUserServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerUserMapper; +import com.gxwebsoft.shop.service.DealerUserService; +import com.gxwebsoft.shop.entity.DealerUser; +import com.gxwebsoft.shop.param.DealerUserParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商用户记录表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerUserServiceImpl extends ServiceImpl implements DealerUserService { + + @Override + public PageResult pageRel(DealerUserParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerUserParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerUser getByIdRel(Integer userId) { + DealerUserParam param = new DealerUserParam(); + param.setUserId(userId); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/DealerWithdrawServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/DealerWithdrawServiceImpl.java new file mode 100644 index 0000000..64702d4 --- /dev/null +++ b/src/main/java/com/gxwebsoft/shop/service/impl/DealerWithdrawServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.shop.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.shop.mapper.DealerWithdrawMapper; +import com.gxwebsoft.shop.service.DealerWithdrawService; +import com.gxwebsoft.shop.entity.DealerWithdraw; +import com.gxwebsoft.shop.param.DealerWithdrawParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分销商提现明细表Service实现 + * + * @author 科技小王子 + * @since 2024-07-28 11:57:41 + */ +@Service +public class DealerWithdrawServiceImpl extends ServiceImpl implements DealerWithdrawService { + + @Override + public PageResult pageRel(DealerWithdrawParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(DealerWithdrawParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("create_time desc"); + return page.sortRecords(list); + } + + @Override + public DealerWithdraw getByIdRel(Integer id) { + DealerWithdrawParam param = new DealerWithdrawParam(); + param.setId(id); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/test/java/com/gxwebsoft/generator/ShopGenerator.java b/src/test/java/com/gxwebsoft/generator/ShopGenerator.java index 45821a2..f6cafd5 100644 --- a/src/test/java/com/gxwebsoft/generator/ShopGenerator.java +++ b/src/test/java/com/gxwebsoft/generator/ShopGenerator.java @@ -77,7 +77,15 @@ public class ShopGenerator { // "shop_users", // "shop_user_address", // "shop_user_balance_log" - "shop_recharge_order" +// "shop_recharge_order" + // 经销商表 + "shop_dealer_apply", + "shop_dealer_capital", + "shop_dealer_order", + "shop_dealer_referee", + "shop_dealer_setting", + "shop_dealer_user", + "shop_dealer_withdraw" }; // 需要去除的表前缀 private static final String[] TABLE_PREFIX = new String[]{