diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiProductController.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiProductController.java index 76fd960..0faa6e4 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiProductController.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiProductController.java @@ -51,14 +51,15 @@ public class AppletApiProductController { @Parameter(description = "页码") @RequestParam(defaultValue = "1") Integer pageNo, @Parameter(description = "每页大小") @RequestParam(defaultValue = "10") Integer pageSize, @Parameter(description = "分类ID") @RequestParam(required = false) String classId, - @Parameter(description = "关键词") @RequestParam(required = false) String keyword) { + @Parameter(description = "关键词") @RequestParam(required = false) String keyword, + @Parameter(description = "是否推荐(Y是 N否)") @RequestParam(required = false) String homeRecommend) { log.info("产品列表查询 - type: {}, pageNo: {}, pageSize: {}, classId: {}, keyword: {}", type, pageNo, pageSize, classId, keyword); Page page = new Page<>(pageNo, pageSize); - IPage pageList = appletProductService.getProductPage(page, type, classId, keyword); + IPage pageList = appletProductService.getProductPage(page, type, classId, keyword, homeRecommend); return Result.OK(pageList); } @@ -91,8 +92,7 @@ public class AppletApiProductController { @GetMapping(value = "/category") @IgnoreAuth public Result> category( - @Parameter(description = "产品类型(0营养剂,1预约,2课程)", required = true) @RequestParam String type, - @Parameter(description = "父id,不传为一级分类") @RequestParam String pid) { + @Parameter(description = "产品类型(0营养剂,1预约,2课程)", required = true) @RequestParam String type) { log.info("产品分类查询 - type: {}", type); diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiSubscribeController.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiSubscribeController.java index 21e062f..15224ec 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiSubscribeController.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiSubscribeController.java @@ -1,16 +1,14 @@ package org.jeecg.modules.applet.controller; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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.common.aspect.annotation.AutoLog; -import org.jeecg.config.shiro.IgnoreAuth; import org.jeecg.modules.applet.service.AppletApiSubscribeService; -import org.jeecg.modules.demo.appletProduct.entity.AppletProduct; +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; import org.jeecg.modules.demo.appletSubscribeDetection.entity.AppletSubscribeDetection; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -18,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + @Tag(name="预约检测", description="预约检测") @RestController @RequestMapping("/appletApi/subscribe") @@ -48,4 +48,14 @@ public class AppletApiSubscribeController { return Result.OK(appletApiSubscribeService.getAppletSubscribeDetection(pageNo, pageSize, type)); } + /** + * 查询医院 + * @return 查询医院 + */ + @AutoLog(value = "查询医院") + @Operation(summary = "查询医院", description = "查询医院") + @GetMapping(value = "/hospital") + public Result> hospital(@Parameter(description = "商品id") String productId) { + return Result.OK(appletApiSubscribeService.hospital(productId)); + } } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiProductService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiProductService.java index 5b19834..3986f52 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiProductService.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiProductService.java @@ -24,7 +24,7 @@ public interface AppletApiProductService { * @param keyword 关键词 * @return 产品分页数据 */ - IPage getProductPage(Page page, String type, String classId, String keyword); + IPage getProductPage(Page page, String type, String classId, String keyword, String homeRecommend); /** * 根据ID获取产品详情 diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiSubscribeService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiSubscribeService.java index efa95c1..8099cc8 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiSubscribeService.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiSubscribeService.java @@ -1,12 +1,17 @@ package org.jeecg.modules.applet.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; import org.jeecg.modules.demo.appletSubscribeDetection.entity.AppletSubscribeDetection; +import java.util.List; + public interface AppletApiSubscribeService { IPage getAppletSubscribeDetection(Integer pageNo, Integer pageSize, String type); + List hospital(String productId); + } 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 index fce1654..8985fa2 100644 --- 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 @@ -66,6 +66,7 @@ public class AppletApiIndexServiceImpl implements AppletApiIndexService { return appletProductService .lambdaQuery() .eq(AppletProduct::getHomeRecommend, "Y") + .eq(AppletProduct::getType, 0) .list(); } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiOrderServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiOrderServiceImpl.java index 7fa323f..ee169d9 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiOrderServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiOrderServiceImpl.java @@ -4,8 +4,10 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; +import dev.langchain4j.service.AiServices; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.jeecg.chatgpt.service.AiChatService; import org.jeecg.common.api.vo.Result; import org.jeecg.common.exception.JeecgBootException; import org.jeecg.common.system.util.AppletUserUtil; @@ -339,7 +341,7 @@ public class AppletApiOrderServiceImpl implements AppletApiOrderService { order.setPaymentTime(LocalTime.now()); appletOrderService.updateById(order); - handleSpecialProducts(order.getId()); + handleSpecialProducts(order.getId(), order); log.info("订单支付成功,订单ID: {}, payId: {}", order.getId(), outTradeNo); } else { @@ -370,7 +372,7 @@ public class AppletApiOrderServiceImpl implements AppletApiOrderService { * 处理特殊产品 * @param id 订单id */ - private void handleSpecialProducts(String id){ + private void handleSpecialProducts(String id, AppletOrder order){ List products = appletOrderProductService.selectByMainId(id); for (AppletOrderProduct orderProduct : products) { @@ -387,6 +389,10 @@ public class AppletApiOrderServiceImpl implements AppletApiOrderService { detection.setUserId(orderProduct.getUserId()); detection.setSubscribeType(orderProduct.getSubscribeType()); + //地址 + detection.setSendAddress(order.getDeliveryAddress()); + detection.setSendAddressDetail(order.getDeliveryAddressDetail()); + appletSubscribeDetectionService.save(detection); } } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiProductServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiProductServiceImpl.java index 3db9284..fd7b292 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiProductServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiProductServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.constant.CacheConstant; import org.jeecg.modules.applet.service.AppletApiProductService; import org.jeecg.modules.demo.appletProduct.entity.AppletProduct; import org.jeecg.modules.demo.appletProduct.service.IAppletProductService; @@ -12,6 +13,7 @@ import org.jeecg.modules.demo.appletProductCategory.service.IAppletProductCatego import org.jeecg.modules.demo.appletProductSpec.entity.AppletProductSpec; import org.jeecg.modules.demo.appletProductSpec.service.IAppletProductSpecService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import java.util.List; @@ -35,11 +37,12 @@ public class AppletApiProductServiceImpl implements AppletApiProductService { private IAppletProductSpecService appletProductSpecService; @Override - public IPage getProductPage(Page page, String type, String classId, String keyword) { + public IPage getProductPage(Page page, String type, String classId, String keyword, String homeRecommend) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(AppletProduct::getType, type); queryWrapper.eq(StringUtils.isNotBlank(classId), AppletProduct::getClassId, classId); + queryWrapper.eq(StringUtils.isNotBlank(homeRecommend), AppletProduct::getHomeRecommend, homeRecommend); if (StringUtils.isNotBlank(keyword)) { queryWrapper.and(wrapper -> wrapper @@ -60,23 +63,59 @@ public class AppletApiProductServiceImpl implements AppletApiProductService { AppletProduct byId = appletProductService.getById(id); -// byId.setSpecs(appletProductSpecService -// .lambdaQuery() -// .orderByDesc(AppletProductSpec::getSortOrder) -// .eq(AppletProductSpec::getProductId, id) -// .list()); + byId.setSpecs(appletProductSpecService + .lambdaQuery() + .orderByDesc(AppletProductSpec::getSortOrder) + .eq(AppletProductSpec::getProductId, id) + .list()); return byId; } @Override public List getCategoriesByType(String type) { + // 一次性查询所有该类型的分类数据 LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(AppletProductCategory::getType, type); - queryWrapper.orderByAsc(AppletProductCategory::getSortOrder); + queryWrapper.orderByDesc(AppletProductCategory::getSortOrder); - return appletProductCategoryService.list(queryWrapper); + List allCategories = appletProductCategoryService.list(queryWrapper); + + // 构建树形结构 + List categories = buildCategoryTree(allCategories, null); + + if(categories.size() > 0){ + return categories.get(0).getChild(); + } + + return categories; } + + /** + * 构建分类树形结构 + * @param allCategories 所有分类数据 + * @param parentId 父级ID + * @return 树形结构列表 + */ + private List buildCategoryTree(List allCategories, String parentId) { + return allCategories.stream() + .filter(category -> { + if (parentId == null) { + return true; + } else { + return parentId.equals(category.getPid()); + } + }) + .peek(category -> { + // 递归设置子节点 + List children = buildCategoryTree(allCategories, category.getId()); + category.setChild(children); + // 设置是否有子节点标识 + category.setHasChild(children.isEmpty() ? "N" : "Y"); + }) + .collect(java.util.stream.Collectors.toList()); + } + @Override public List getSpecByProductId(String productId) { diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiSubscribeServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiSubscribeServiceImpl.java index bdd2ff8..515e788 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiSubscribeServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiSubscribeServiceImpl.java @@ -3,22 +3,36 @@ package org.jeecg.modules.applet.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.exception.JeecgBootException; import org.jeecg.modules.applet.service.AppletApiSubscribeService; +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; +import org.jeecg.modules.demo.appletHospital.service.IAppletHospitalService; +import org.jeecg.modules.demo.appletProduct.entity.AppletProduct; +import org.jeecg.modules.demo.appletProduct.service.IAppletProductService; import org.jeecg.modules.demo.appletSubscribeDetection.entity.AppletSubscribeDetection; import org.jeecg.modules.demo.appletSubscribeDetection.service.IAppletSubscribeDetectionService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + @Service public class AppletApiSubscribeServiceImpl implements AppletApiSubscribeService { @Autowired private IAppletSubscribeDetectionService appletSubscribeDetectionService; + @Autowired + private IAppletHospitalService appletHospitalService; + + @Autowired + private IAppletProductService appletProductService; + @Override public IPage getAppletSubscribeDetection(Integer pageNo, Integer pageSize, String type) { Page page = appletSubscribeDetectionService.lambdaQuery() + .orderByDesc(AppletSubscribeDetection::getCreateTime) .and(StringUtils.isNotBlank(type), q -> {//进行筛选 q.and("3".equals(type), w -> { @@ -35,5 +49,27 @@ public class AppletApiSubscribeServiceImpl implements AppletApiSubscribeService return page; } + @Override + public List hospital(String productId) { + + AppletProduct product = appletProductService.getById(productId); + + if(product == null){ + throw new JeecgBootException("产品不存在"); + } + + String hospitalId = product.getHospitalId(); + + String[] split = null; + + if (StringUtils.isNotBlank(hospitalId)){ + split = hospitalId.split(",");; + } + + return appletHospitalService.lambdaQuery() + .in(split.length > 0, AppletHospital::getId, split) + .list(); + } + } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/controller/AppletHospitalController.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/controller/AppletHospitalController.java new file mode 100644 index 0000000..2f58e22 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/controller/AppletHospitalController.java @@ -0,0 +1,182 @@ +package org.jeecg.modules.demo.appletHospital.controller; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; +import org.jeecg.modules.demo.appletHospital.service.IAppletHospitalService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + /** + * @Description: 医院 + * @Author: jeecg-boot + * @Date: 2025-08-20 + * @Version: V1.0 + */ +@Tag(name="医院") +@RestController +@RequestMapping("/appletHospital/appletHospital") +@Slf4j +public class AppletHospitalController extends JeecgController { + @Autowired + private IAppletHospitalService appletHospitalService; + + /** + * 分页列表查询 + * + * @param appletHospital + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "医院-分页列表查询") + @Operation(summary="医院-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(AppletHospital appletHospital, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + + + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(appletHospital, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = appletHospitalService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param appletHospital + * @return + */ + @AutoLog(value = "医院-添加") + @Operation(summary="医院-添加") + @RequiresPermissions("appletHospital:applet_hospital:add") + @PostMapping(value = "/add") + public Result add(@RequestBody AppletHospital appletHospital) { + appletHospitalService.save(appletHospital); + + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param appletHospital + * @return + */ + @AutoLog(value = "医院-编辑") + @Operation(summary="医院-编辑") + @RequiresPermissions("appletHospital:applet_hospital:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody AppletHospital appletHospital) { + appletHospitalService.updateById(appletHospital); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "医院-通过id删除") + @Operation(summary="医院-通过id删除") + @RequiresPermissions("appletHospital:applet_hospital:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + appletHospitalService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "医院-批量删除") + @Operation(summary="医院-批量删除") + @RequiresPermissions("appletHospital:applet_hospital:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.appletHospitalService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "医院-通过id查询") + @Operation(summary="医院-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + AppletHospital appletHospital = appletHospitalService.getById(id); + if(appletHospital==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(appletHospital); + } + + /** + * 导出excel + * + * @param request + * @param appletHospital + */ + @RequiresPermissions("appletHospital:applet_hospital:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, AppletHospital appletHospital) { + return super.exportXls(request, appletHospital, AppletHospital.class, "医院"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequiresPermissions("appletHospital:applet_hospital:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, AppletHospital.class); + } + +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/entity/AppletHospital.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/entity/AppletHospital.java new file mode 100644 index 0000000..ff92a44 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/entity/AppletHospital.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.demo.appletHospital.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import org.jeecg.common.constant.ProvinceCityArea; +import org.jeecg.common.util.SpringContextUtils; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 医院 + * @Author: jeecg-boot + * @Date: 2025-08-20 + * @Version: V1.0 + */ +@Data +@TableName("applet_hospital") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@Schema(description="医院") +public class AppletHospital implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @Schema(description = "主键") + private java.lang.String id; + /**创建人*/ + @Schema(description = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @Schema(description = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @Schema(description = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @Schema(description = "更新日期") + private java.util.Date updateTime; + /**所属部门*/ + @Schema(description = "所属部门") + private java.lang.String sysOrgCode; + /**医院名称*/ + @Excel(name = "医院名称", width = 15) + @Schema(description = "医院名称") + private java.lang.String name; + /**经度*/ + @Excel(name = "经度", width = 15) + @Schema(description = "经度") + private java.lang.String longitude; + /**纬度*/ + @Excel(name = "纬度", width = 15) + @Schema(description = "纬度") + private java.lang.String latitude; +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/AppletHospitalMapper.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/AppletHospitalMapper.java new file mode 100644 index 0000000..5bdc329 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/AppletHospitalMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.appletHospital.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 医院 + * @Author: jeecg-boot + * @Date: 2025-08-20 + * @Version: V1.0 + */ +public interface AppletHospitalMapper extends BaseMapper { + +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/xml/AppletHospitalMapper.xml b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/xml/AppletHospitalMapper.xml new file mode 100644 index 0000000..4170581 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/mapper/xml/AppletHospitalMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/IAppletHospitalService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/IAppletHospitalService.java new file mode 100644 index 0000000..d5a85a9 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/IAppletHospitalService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.appletHospital.service; + +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 医院 + * @Author: jeecg-boot + * @Date: 2025-08-20 + * @Version: V1.0 + */ +public interface IAppletHospitalService extends IService { + +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/impl/AppletHospitalServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/impl/AppletHospitalServiceImpl.java new file mode 100644 index 0000000..5728594 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/service/impl/AppletHospitalServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.appletHospital.service.impl; + +import org.jeecg.modules.demo.appletHospital.entity.AppletHospital; +import org.jeecg.modules.demo.appletHospital.mapper.AppletHospitalMapper; +import org.jeecg.modules.demo.appletHospital.service.IAppletHospitalService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 医院 + * @Author: jeecg-boot + * @Date: 2025-08-20 + * @Version: V1.0 + */ +@Service +public class AppletHospitalServiceImpl extends ServiceImpl implements IAppletHospitalService { + +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalForm.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalForm.vue new file mode 100644 index 0000000..ca102c1 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalForm.vue @@ -0,0 +1,95 @@ + + + diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalList.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalList.vue new file mode 100644 index 0000000..b6ab7f9 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp/AppletHospitalList.vue @@ -0,0 +1,44 @@ + + + + diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalData.ts b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalData.ts new file mode 100644 index 0000000..e36f343 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalData.ts @@ -0,0 +1,19 @@ +import { render } from '@/common/renderUtils'; +//列表数据 +export const columns = [ + { + title: '医院名称', + align:"center", + dataIndex: 'name' + }, + { + title: '经度', + align:"center", + dataIndex: 'longitude' + }, + { + title: '纬度', + align:"center", + dataIndex: 'latitude' + }, +]; \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalForm.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalForm.vue new file mode 100644 index 0000000..30a78d2 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalForm.vue @@ -0,0 +1,235 @@ + +{ +layout: 'default', +style: { +navigationStyle: 'custom', +navigationBarTitleText: '医院', +}, +} + + + + + + diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalList.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalList.vue new file mode 100644 index 0000000..7aed936 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/uniapp3/AppletHospitalList.vue @@ -0,0 +1,148 @@ + +{ +layout: 'default', +style: { +navigationBarTitleText: '医院', +navigationStyle: 'custom', +}, +} + + + + + + diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.api.ts b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.api.ts new file mode 100644 index 0000000..df89e43 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.api.ts @@ -0,0 +1,64 @@ +import {defHttp} from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/appletHospital/appletHospital/list', + save='/appletHospital/appletHospital/add', + edit='/appletHospital/appletHospital/edit', + deleteOne = '/appletHospital/appletHospital/delete', + deleteBatch = '/appletHospital/appletHospital/deleteBatch', + importExcel = '/appletHospital/appletHospital/importExcel', + exportXls = '/appletHospital/appletHospital/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.data.ts b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.data.ts new file mode 100644 index 0000000..89171e3 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospital.data.ts @@ -0,0 +1,67 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '医院名称', + align:"center", + dataIndex: 'name' + }, + { + title: '经度', + align:"center", + dataIndex: 'longitude' + }, + { + title: '纬度', + align:"center", + dataIndex: 'latitude' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '医院名称', + field: 'name', + component: 'Input', + }, + { + label: '经度', + field: 'longitude', + component: 'Input', + }, + { + label: '纬度', + field: 'latitude', + component: 'Input', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + name: {title: '医院名称',order: 0,view: 'text', type: 'string',}, + longitude: {title: '经度',order: 1,view: 'text', type: 'string',}, + latitude: {title: '纬度',order: 2,view: 'text', type: 'string',}, +}; + +/** +* 流程表单调用这个方法获取formSchema +* @param param +*/ +export function getBpmFormSchema(_formData): FormSchema[]{ + // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema + return formSchema; +} \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospitalList.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospitalList.vue new file mode 100644 index 0000000..f6f6207 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/AppletHospitalList.vue @@ -0,0 +1,206 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/V20250820_1__menu_insert_AppletHospital.sql b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/V20250820_1__menu_insert_AppletHospital.sql new file mode 100644 index 0000000..437af72 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/V20250820_1__menu_insert_AppletHospital.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/appletHospital文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2025082003567890040', NULL, '医院', '/appletHospital/appletHospitalList', 'appletHospital/AppletHospitalList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890041', '2025082003567890040', '添加医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890042', '2025082003567890040', '编辑医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890043', '2025082003567890040', '删除医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890044', '2025082003567890040', '批量删除医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890045', '2025082003567890040', '导出excel_医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2025082003567890046', '2025082003567890040', '导入excel_医院', NULL, NULL, 0, NULL, NULL, 2, 'appletHospital:applet_hospital:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-08-20 15:56:04', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalForm.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalForm.vue new file mode 100644 index 0000000..fbcd713 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalForm.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalModal.vue b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalModal.vue new file mode 100644 index 0000000..d90bce3 --- /dev/null +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletHospital/vue3/components/AppletHospitalModal.vue @@ -0,0 +1,99 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletOrderEvaluate/entity/AppletOrderAfterSale.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletOrderEvaluate/entity/AppletOrderAfterSale.java index 76334ac..1f48c15 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletOrderEvaluate/entity/AppletOrderAfterSale.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletOrderEvaluate/entity/AppletOrderAfterSale.java @@ -86,4 +86,9 @@ public class AppletOrderAfterSale implements Serializable { @Dict(dictTable = "applet_user", dicText = "name", dicCode = "id") @Schema(description = "用户") private java.lang.String userId; + /**用户*/ + @Excel(name = "产品", width = 15, dictTable = "applet_product", dicText = "name", dicCode = "id") + @Dict(dictTable = "applet_product", dicText = "name", dicCode = "id") + @Schema(description = "产品") + private java.lang.String productId; } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProduct/entity/AppletProduct.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProduct/entity/AppletProduct.java index 6b45ba7..6429a2a 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProduct/entity/AppletProduct.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProduct/entity/AppletProduct.java @@ -125,6 +125,12 @@ public class AppletProduct implements Serializable { @Schema(description = "检测类型") private String subscribeType; + /**合作医院*/ + @Excel(name = "合作医院", width = 15) + @Schema(description = "合作医院") + private String hospitalId; + + @TableField(exist = false) private List specs; diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductCategory/entity/AppletProductCategory.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductCategory/entity/AppletProductCategory.java index c12c715..4e66f32 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductCategory/entity/AppletProductCategory.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductCategory/entity/AppletProductCategory.java @@ -3,10 +3,8 @@ package org.jeecg.modules.demo.appletProductCategory.entity; import java.io.Serializable; import java.util.Date; import java.math.BigDecimal; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.baomidou.mybatisplus.annotation.TableLogic; + +import com.baomidou.mybatisplus.annotation.*; import org.jeecg.common.constant.ProvinceCityArea; import org.jeecg.common.util.SpringContextUtils; import lombok.Data; @@ -17,6 +15,7 @@ import org.jeecg.common.aspect.annotation.Dict; import io.swagger.v3.oas.annotations.media.Schema; import java.io.UnsupportedEncodingException; +import java.util.List; /** * @Description: 产品分类表 @@ -76,4 +75,7 @@ public class AppletProductCategory implements Serializable { @Dict(dicCode = "yn") @Schema(description = "是否有子节点") private java.lang.String hasChild; + + @TableField(exist = false) + private List child; } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductSpec/entity/AppletProductSpec.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductSpec/entity/AppletProductSpec.java index 5981ce0..804d50d 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductSpec/entity/AppletProductSpec.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletProductSpec/entity/AppletProductSpec.java @@ -73,4 +73,12 @@ public class AppletProductSpec implements Serializable { @Excel(name = "价格", width = 15) @Schema(description = "价格") private java.math.BigDecimal price; + /**图片*/ + @Excel(name = "图片", width = 15) + @Schema(description = "图片") + private java.lang.String image; + /**描述*/ + @Excel(name = "描述", width = 15) + @Schema(description = "描述") + private java.lang.String info; } diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletSubscribeDetection/entity/AppletSubscribeDetection.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletSubscribeDetection/entity/AppletSubscribeDetection.java index 279ee57..62eba36 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletSubscribeDetection/entity/AppletSubscribeDetection.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletSubscribeDetection/entity/AppletSubscribeDetection.java @@ -87,21 +87,13 @@ public class AppletSubscribeDetection implements Serializable { @Schema(description = "寄送地址id") private java.lang.String sendAddressId; /**省*/ - @Excel(name = "省", width = 15) - @Schema(description = "省") - private java.lang.String sendAddressProvince; + @Excel(name = "寄送地址", width = 15) + @Schema(description = "寄送地址") + private java.lang.String sendAddress; /**详细地址*/ @Excel(name = "详细地址", width = 15) @Schema(description = "详细地址") private java.lang.String sendAddressDetail; - /**市*/ - @Excel(name = "市", width = 15) - @Schema(description = "市") - private java.lang.String sendAddressCity; - /**区*/ - @Excel(name = "区", width = 15) - @Schema(description = "区") - private java.lang.String sendAddressDistrict; /**预约日期*/ @Excel(name = "预约日期", width = 15, format = "yyyy-MM-dd") @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") diff --git a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml index 5183aa6..c2ae2af 100644 --- a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml +++ b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml @@ -189,7 +189,7 @@ jeecg: ai-chat: enabled: true model: deepseek-chat - apiKey: sk- + apiKey: sk-6ad421d712724dda821c19cfe7d6c1e8 apiHost: https://api.deepseek.com/v1 timeout: 60 # AIRag向量库