From 50dc1e7fe712ef5eb6e4d76ada16a9e0d02c67df Mon Sep 17 00:00:00 2001 From: Bobi <2166145077@qq.com> Date: Thu, 11 Sep 2025 11:57:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/jeecg/common/system/vo/AppletUser.java | 13 +- .../controller/AppletApiBooksController.java | 97 +++++ .../modules/applet/query/AppletBookQuery.java | 16 + .../applet/service/AppletApiBooksService.java | 36 ++ .../applet/service/AppletApiIndexService.java | 26 ++ .../service/impl/AppletApiBooksServiceImpl.java | 83 +++++ .../service/impl/AppletApiIndexServiceImpl.java | 40 +++ jeecgboot-vue3/.env | 4 +- .../src/components/Form/src/componentMap.ts | 4 +- .../src/components/Form/src/types/index.ts | 3 +- .../src/views/sys/login/TokenLoginPage.vue | 398 ++++++++++----------- 11 files changed, 504 insertions(+), 216 deletions(-) create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiBooksController.java create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/query/AppletBookQuery.java create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiBooksService.java create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiIndexService.java create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiBooksServiceImpl.java create mode 100644 jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiIndexServiceImpl.java diff --git a/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/system/vo/AppletUser.java b/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/system/vo/AppletUser.java index 59aac04..22c61c9 100644 --- a/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/system/vo/AppletUser.java +++ b/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/system/vo/AppletUser.java @@ -68,17 +68,12 @@ public class AppletUser implements Serializable { @Excel(name = "手机号", width = 15) @Schema(description = "手机号") private java.lang.String phone; - /**体总指数*/ - @Excel(name = "体总指数", width = 15) - @Schema(description = "体总指数") - private java.math.BigDecimal bmi; - /**脂肪*/ - @Excel(name = "脂肪", width = 15) - @Schema(description = "脂肪") - private java.math.BigDecimal fat; /**头像*/ @Excel(name = "头像", width = 15) @Schema(description = "头像") private java.lang.String avatar; - + /**佣金*/ + @Excel(name = "佣金", width = 15) + @Schema(description = "佣金") + private java.math.BigDecimal commission; } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiBooksController.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiBooksController.java new file mode 100644 index 0000000..3c66fad --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiBooksController.java @@ -0,0 +1,97 @@ +package org.jeecg.modules.applet.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.IgnoreAuth; +import org.jeecg.modules.applet.service.AppletApiBooksService; +import org.jeecg.modules.demo.appletBooks.entity.AppletBooks; +import org.jeecg.modules.demo.appletCategorize.entity.AppletCategorize; +import org.springframework.beans.factory.annotation.Autowired; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +/** + * @Description: 书籍管理 + * @Author: jeecg-boot + * @Date: 2025-01-XX + * @Version: V1.0 + */ +@Tag(name = "书籍", description = "书籍") +@RestController +@RequestMapping("/appletApi/books") +@Slf4j +public class AppletApiBooksController { + + @Autowired + private AppletApiBooksService appletApiBooksService; + + + /** + * 查询书籍列表 + * + * @return 查询书籍列表 + */ + @Operation(summary = "查询书籍列表", description = "查询书籍列表") + @GetMapping(value = "/list") + @IgnoreAuth + public Result> list(@Parameter(description = "搜素关键字") String title, + @Parameter(description = "搜素关键字") String category, + @Parameter(description = "搜素关键字") String label, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + log.info("查询书籍列表"); + Page booksPage = new Page<>(pageNo, pageSize); + IPage list = appletApiBooksService + .getBooks(booksPage, title, category, label); + return Result.OK(list); + } + + + + /** + * 查询书桌列表 + * + * @return 查询书桌列表 + */ + @Operation(summary = "查询书桌列表", description = "查询书桌列表") + @GetMapping(value = "/stand") + public Result> stand(@Parameter(description = "搜素关键字") String title, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + log.info("查询书桌列表"); + Page booksPage = new Page<>(pageNo, pageSize); + IPage list = appletApiBooksService + .getBooksStand(booksPage, title); + return Result.OK(list); + } + + /** + * 加入书桌 + * + * @return 加入书桌 + */ + @Operation(summary = "加入书桌", description = "加入书桌") + @PostMapping(value = "/addStand") + public Result addStand(@Parameter(description = "书籍id") String id) { + appletApiBooksService.addStand(id); + return Result.OK(); + } + + /** + * 删除书桌 + * + * @return 删除书桌 + */ + @Operation(summary = "删除书桌", description = "删除书桌,批量删除用,分割") + @PostMapping(value = "/delStand") + public Result delStand(@Parameter(description = "书籍id") String id) { + appletApiBooksService.delStand(id); + return Result.OK(); + } + +} \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/query/AppletBookQuery.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/query/AppletBookQuery.java new file mode 100644 index 0000000..b198979 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/query/AppletBookQuery.java @@ -0,0 +1,16 @@ +package org.jeecg.modules.applet.query; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class AppletBookQuery { + + private String title; + +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiBooksService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiBooksService.java new file mode 100644 index 0000000..7525bfe --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiBooksService.java @@ -0,0 +1,36 @@ +package org.jeecg.modules.applet.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.modules.demo.appletBooks.entity.AppletBooks; + +import java.util.List; + +public interface AppletApiBooksService { + /** + * 分页列表查询 + * + */ + IPage getBooks(Page page, String title, String category, String label); + + /** + * 查询书桌列表 + * + * @return 查询书桌列表 + */ + IPage getBooksStand(Page booksPage, String title); + + /** + * 加入书桌 + * + * @return 加入书桌 + */ + void addStand(String id); + + /** + * 删除书桌 + * + * @return 删除书桌 + */ + void delStand(String id); +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiIndexService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiIndexService.java new file mode 100644 index 0000000..7dfc886 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiIndexService.java @@ -0,0 +1,26 @@ +package org.jeecg.modules.applet.service; + +import org.jeecg.modules.demo.appletBanner.entity.AppletBanner; +import org.jeecg.modules.demo.appletLink.entity.AppletLink; + +import java.util.List; + +/** + * 小程序首页 + */ +public interface AppletApiIndexService { + + /** + * 轮播图 + * + * @return + */ + List getBanner(); + + /** + * 首页底部内容链接 + * + * @return + */ + List getLink(); +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiBooksServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiBooksServiceImpl.java new file mode 100644 index 0000000..7e719ef --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiBooksServiceImpl.java @@ -0,0 +1,83 @@ +package org.jeecg.modules.applet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import jodd.util.StringUtil; +import org.jeecg.common.exception.JeecgBootException; +import org.jeecg.common.system.util.AppletUserUtil; +import org.jeecg.modules.applet.query.AppletBookQuery; +import org.jeecg.modules.applet.service.AppletApiBooksService; +import org.jeecg.modules.demo.appletBookStand.entity.AppletBookStand; +import org.jeecg.modules.demo.appletBookStand.service.IAppletBookStandService; +import org.jeecg.modules.demo.appletBooks.entity.AppletBooks; +import org.jeecg.modules.demo.appletBooks.service.IAppletBooksService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class AppletApiBooksServiceImpl implements AppletApiBooksService { + + @Autowired + private IAppletBooksService appletBooksService; + @Autowired + private IAppletBookStandService appletBookStandService; + + @Override + public IPage getBooks(Page page, String title, String category, String label) { + return appletBooksService + .lambdaQuery() + .like(StringUtil.isNotEmpty(title), AppletBooks::getBooksName, title) + .eq(StringUtil.isNotEmpty(category), AppletBooks::getBooksClassification, category) + .like(StringUtil.isNotEmpty(label), AppletBooks::getBooksLabel, label) + .page(page); + } + + @Override + public IPage getBooksStand(Page booksPage, String title) { + String userId = AppletUserUtil.getCurrentAppletUserId(); + List bookIds = appletBookStandService + .lambdaQuery() + .eq(AppletBookStand::getUserId, userId) + .list().stream() + .map(AppletBookStand::getBookId) + .collect(Collectors.toList()); + + return appletBooksService + .lambdaQuery() + .in(AppletBooks::getId) + .like(StringUtil.isNotEmpty(title), AppletBooks::getBooksName, title) + .page(booksPage); + } + + @Override + public void addStand(String id) { + String userId = AppletUserUtil.getCurrentAppletUserId(); + AppletBookStand one = appletBookStandService.lambdaQuery() + .eq(AppletBookStand::getUserId, userId) + .eq(AppletBookStand::getBookId, id).one(); + + if (one == null){ + AppletBookStand appletBookStand = new AppletBookStand(); + appletBookStand.setUserId(userId); + appletBookStand.setBookId(id); + appletBookStandService.save(appletBookStand); + } + } + + @Override + public void delStand(String id) { + if (StringUtil.isBlank(id)){ + throw new JeecgBootException("id不能为空"); + } + String userId = AppletUserUtil.getCurrentAppletUserId(); + appletBookStandService.remove(Wrappers.lambdaQuery() + .eq(AppletBookStand::getUserId, userId) + .in(AppletBookStand::getBookId, Arrays.asList(id.split(",")))); + } +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiIndexServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiIndexServiceImpl.java new file mode 100644 index 0000000..44a7a5e --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiIndexServiceImpl.java @@ -0,0 +1,40 @@ +package org.jeecg.modules.applet.service.impl; + +import org.jeecg.modules.applet.service.AppletApiIndexService; +import org.jeecg.modules.demo.appletBanner.entity.AppletBanner; +import org.jeecg.modules.demo.appletBanner.service.IAppletBannerService; +import org.jeecg.modules.demo.appletLink.entity.AppletLink; +import org.jeecg.modules.demo.appletLink.service.IAppletLinkService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class AppletApiIndexServiceImpl implements AppletApiIndexService { + + @Autowired + private IAppletBannerService appletBannerService; + + @Autowired + private IAppletLinkService appletLinkService; + + /*** + * 轮播图 + * @return + */ + @Override + public List getBanner() { + return appletBannerService.list(); + } + + /** + * 首页底部内容链接 + * + * @return + */ + @Override + public List getLink() { + return appletLinkService.list(); + } +} diff --git a/jeecgboot-vue3/.env b/jeecgboot-vue3/.env index 60e9cca..f6fe9ba 100644 --- a/jeecgboot-vue3/.env +++ b/jeecgboot-vue3/.env @@ -2,10 +2,10 @@ VITE_PORT = 3100 # 网站标题 -VITE_GLOB_APP_TITLE = 普兆健康管家 +VITE_GLOB_APP_TITLE = 四零语境 # 简称,此变量只能是字符/下划线 -VITE_GLOB_APP_SHORT_NAME = 普兆健康管家 +VITE_GLOB_APP_SHORT_NAME = 四零语境 # 单点登录服务端地址 VITE_GLOB_APP_CAS_BASE_URL=http://cas.test.com:8443/cas diff --git a/jeecgboot-vue3/src/components/Form/src/componentMap.ts b/jeecgboot-vue3/src/components/Form/src/componentMap.ts index 35d0ab7..12af3d2 100644 --- a/jeecgboot-vue3/src/components/Form/src/componentMap.ts +++ b/jeecgboot-vue3/src/components/Form/src/componentMap.ts @@ -76,8 +76,7 @@ import JRangeDate from './jeecg/components/JRangeDate.vue' import JRangeTime from './jeecg/components/JRangeTime.vue' import JInputSelect from './jeecg/components/JInputSelect.vue' import RoleSelectInput from './jeecg/components/roleSelect/RoleSelectInput.vue'; -import {DatePickerInFilter, CascaderPcaInFilter} from "@/components/InFilter"; -import CustomTagSelector from '/@/views/applet/questions/components/CustomTagSelector.vue'; +import { DatePickerInFilter, CascaderPcaInFilter } from "@/components/InFilter"; const componentMap = new Map(); @@ -168,7 +167,6 @@ componentMap.set('JUpload', JUpload); componentMap.set('JSearchSelect', JSearchSelect); componentMap.set('JAddInput', JAddInput); componentMap.set('JRangeNumber', JRangeNumber); -componentMap.set('CustomTagSelector', CustomTagSelector); componentMap.set('CascaderPcaInFilter', CascaderPcaInFilter); componentMap.set('UserSelect', UserSelect); componentMap.set('RangeDate', JRangeDate); diff --git a/jeecgboot-vue3/src/components/Form/src/types/index.ts b/jeecgboot-vue3/src/components/Form/src/types/index.ts index 2f5a757..dae5164 100644 --- a/jeecgboot-vue3/src/components/Form/src/types/index.ts +++ b/jeecgboot-vue3/src/components/Form/src/types/index.ts @@ -158,6 +158,5 @@ export type ComponentType = | 'RangeTime' | 'JRangeNumber' | 'JLinkTableCard' - | 'JInputSelect' - | 'CustomTagSelector'; + | 'JInputSelect'; diff --git a/jeecgboot-vue3/src/views/sys/login/TokenLoginPage.vue b/jeecgboot-vue3/src/views/sys/login/TokenLoginPage.vue index 007e77c..8a71b63 100644 --- a/jeecgboot-vue3/src/views/sys/login/TokenLoginPage.vue +++ b/jeecgboot-vue3/src/views/sys/login/TokenLoginPage.vue @@ -1,218 +1,216 @@ \ No newline at end of file