Pārlūkot izejas kodu

revert: 179分支撤回

xdd 3 dienas atpakaļ
vecāks
revīzija
1ce6494fe4
100 mainītis faili ar 88 papildinājumiem un 7503 dzēšanām
  1. 1 0
      fs-admin/src/main/java/com/fs/FSApplication.java
  2. 0 146
      fs-admin/src/main/java/com/fs/his/controller/FoodRecordController.java
  3. 0 106
      fs-admin/src/main/java/com/fs/his/controller/FsComplaintCategoryController.java
  4. 0 93
      fs-admin/src/main/java/com/fs/his/controller/FsComplaintController.java
  5. 0 120
      fs-admin/src/main/java/com/fs/his/controller/FsTodoItemsController.java
  6. 0 102
      fs-admin/src/main/java/com/fs/his/controller/RechargeTemplateController.java
  7. 0 17
      fs-admin/src/main/java/com/fs/his/task/FsUserTask.java
  8. 0 134
      fs-admin/src/main/java/com/fs/hisStore/FsStoreSCRMController.java
  9. 2 3
      fs-admin/src/main/java/com/fs/hisStore/controller/FsStoreProductScrmController.java
  10. 0 155
      fs-admin/src/main/java/com/fs/medical/MeasurementUnitController.java
  11. 0 157
      fs-admin/src/main/java/com/fs/medical/MedicalIndicatorController.java
  12. 0 160
      fs-admin/src/main/java/com/fs/medical/PhysicalExamReportController.java
  13. 0 190
      fs-admin/src/main/java/com/fs/medical/ReportIndicatorResultController.java
  14. 0 82
      fs-admin/src/main/java/com/fs/saler/CompetitorInfoController.java
  15. 0 73
      fs-admin/src/main/java/com/fs/saler/FsServiceGoodsController.java
  16. 0 42
      fs-common/src/main/java/com/fs/common/utils/DateUtils.java
  17. 0 3
      fs-common/src/main/java/com/fs/common/utils/DictUtils.java
  18. 0 205
      fs-common/src/main/java/com/fs/common/utils/FileNameExtractor.java
  19. 0 155
      fs-company-app/src/main/java/com/fs/app/controller/FsUserHealthDataController.java
  20. 0 139
      fs-company-app/src/main/java/com/fs/app/controller/FsUserHealthProfileController.java
  21. 0 111
      fs-company-app/src/main/java/com/fs/app/controller/FsUserInfoController.java
  22. 0 96
      fs-company-app/src/main/java/com/fs/app/controller/FsUserPayCompetitorsRecordController.java
  23. 0 96
      fs-company-app/src/main/java/com/fs/app/controller/FsUserPayRecordController.java
  24. 0 13
      fs-company-app/src/main/java/com/fs/app/exception/FSExceptionHandler.java
  25. 1 1
      fs-company/src/main/java/com/fs/hisStore/controller/FsStoreProductScrmController.java
  26. 3 0
      fs-framework/src/main/java/com/fs/framework/config/LogInterceptor.java
  27. 0 65
      fs-service/src/main/java/com/fs/complaint/domain/FsComplaint.java
  28. 0 51
      fs-service/src/main/java/com/fs/complaint/domain/FsComplaintAttachment.java
  29. 0 55
      fs-service/src/main/java/com/fs/complaint/domain/FsComplaintCategory.java
  30. 0 20
      fs-service/src/main/java/com/fs/complaint/dto/ComplaintQueryDTO.java
  31. 0 29
      fs-service/src/main/java/com/fs/complaint/dto/SubmitComplaintDTO.java
  32. 0 16
      fs-service/src/main/java/com/fs/complaint/dto/UpdateComplaintDTO.java
  33. 0 59
      fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintAttachmentMapper.java
  34. 0 66
      fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintCategoryMapper.java
  35. 0 135
      fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintMapper.java
  36. 0 28
      fs-service/src/main/java/com/fs/complaint/param/FsComplaintCategoryParam.java
  37. 0 52
      fs-service/src/main/java/com/fs/complaint/service/FsComplaintCategoryService.java
  38. 0 43
      fs-service/src/main/java/com/fs/complaint/service/FsComplaintService.java
  39. 0 68
      fs-service/src/main/java/com/fs/complaint/service/impl/FsComplaintCategoryServiceImpl.java
  40. 0 195
      fs-service/src/main/java/com/fs/complaint/service/impl/FsComplaintServiceImpl.java
  41. 0 22
      fs-service/src/main/java/com/fs/complaint/vo/ComplaintVO.java
  42. 0 50
      fs-service/src/main/java/com/fs/complaint/vo/FsComplaintCategoryListVO.java
  43. 0 59
      fs-service/src/main/java/com/fs/foods/domain/FsFoodRecord.java
  44. 0 73
      fs-service/src/main/java/com/fs/foods/mapper/FoodRecordMapper.java
  45. 0 47
      fs-service/src/main/java/com/fs/foods/param/FoodRecordAddParam.java
  46. 0 48
      fs-service/src/main/java/com/fs/foods/param/FoodRecordEditParam.java
  47. 0 57
      fs-service/src/main/java/com/fs/foods/param/FoodRecordQueryParam.java
  48. 0 90
      fs-service/src/main/java/com/fs/foods/service/IFsFoodRecordService.java
  49. 0 179
      fs-service/src/main/java/com/fs/foods/service/impl/FsFoodRecordServiceImpl.java
  50. 0 66
      fs-service/src/main/java/com/fs/his/config/HealthIndicatorConfig.java
  51. 0 55
      fs-service/src/main/java/com/fs/his/domain/FsAttachment.java
  52. 7 4
      fs-service/src/main/java/com/fs/his/domain/FsUser.java
  53. 0 74
      fs-service/src/main/java/com/fs/his/domain/FsUserHealthData.java
  54. 0 98
      fs-service/src/main/java/com/fs/his/domain/FsUserHealthProfile.java
  55. 0 225
      fs-service/src/main/java/com/fs/his/domain/FsUserInfo.java
  56. 0 53
      fs-service/src/main/java/com/fs/his/domain/FsUserItinerary.java
  57. 0 55
      fs-service/src/main/java/com/fs/his/domain/FsUserPayCompetitorsRecord.java
  58. 0 62
      fs-service/src/main/java/com/fs/his/domain/FsUserPayRecord.java
  59. 0 55
      fs-service/src/main/java/com/fs/his/dto/FsUserHealthInfoDTO.java
  60. 0 36
      fs-service/src/main/java/com/fs/his/enums/HealthDataLevelEnum.java
  61. 0 45
      fs-service/src/main/java/com/fs/his/enums/HealthDataTypeEnum.java
  62. 0 69
      fs-service/src/main/java/com/fs/his/mapper/FsAttachmentMapper.java
  63. 0 74
      fs-service/src/main/java/com/fs/his/mapper/FsUserHealthDataMapper.java
  64. 0 46
      fs-service/src/main/java/com/fs/his/mapper/FsUserHealthProfileMapper.java
  65. 0 54
      fs-service/src/main/java/com/fs/his/mapper/FsUserInfoMapper.java
  66. 0 61
      fs-service/src/main/java/com/fs/his/mapper/FsUserItineraryMapper.java
  67. 0 9
      fs-service/src/main/java/com/fs/his/mapper/FsUserMapper.java
  68. 0 54
      fs-service/src/main/java/com/fs/his/mapper/FsUserPayCompetitorsRecordMapper.java
  69. 0 54
      fs-service/src/main/java/com/fs/his/mapper/FsUserPayRecordMapper.java
  70. 0 38
      fs-service/src/main/java/com/fs/his/param/FsAttachmentPageParam.java
  71. 0 70
      fs-service/src/main/java/com/fs/his/service/IFsAttachmentService.java
  72. 0 104
      fs-service/src/main/java/com/fs/his/service/IFsUserHealthDataService.java
  73. 0 45
      fs-service/src/main/java/com/fs/his/service/IFsUserHealthProfileService.java
  74. 0 51
      fs-service/src/main/java/com/fs/his/service/IFsUserInfoService.java
  75. 0 61
      fs-service/src/main/java/com/fs/his/service/IFsUserItineraryService.java
  76. 0 54
      fs-service/src/main/java/com/fs/his/service/IFsUserPayCompetitorsRecordService.java
  77. 0 53
      fs-service/src/main/java/com/fs/his/service/IFsUserPayRecordService.java
  78. 0 2
      fs-service/src/main/java/com/fs/his/service/IFsUserService.java
  79. 0 343
      fs-service/src/main/java/com/fs/his/service/impl/FsAttachmentServiceImpl.java
  80. 0 777
      fs-service/src/main/java/com/fs/his/service/impl/FsUserHealthDataServiceImpl.java
  81. 0 62
      fs-service/src/main/java/com/fs/his/service/impl/FsUserHealthProfileServiceImpl.java
  82. 0 254
      fs-service/src/main/java/com/fs/his/service/impl/FsUserInfoServiceImpl.java
  83. 0 121
      fs-service/src/main/java/com/fs/his/service/impl/FsUserItineraryServiceImpl.java
  84. 0 80
      fs-service/src/main/java/com/fs/his/service/impl/FsUserPayCompetitorsRecordServiceImpl.java
  85. 0 79
      fs-service/src/main/java/com/fs/his/service/impl/FsUserPayRecordServiceImpl.java
  86. 0 5
      fs-service/src/main/java/com/fs/his/service/impl/FsUserServiceImpl.java
  87. 0 4
      fs-service/src/main/java/com/fs/his/utils/ConfigUtil.java
  88. 0 12
      fs-service/src/main/java/com/fs/hisStore/domain/FsStoreProductAttrValueScrm.java
  89. 0 2
      fs-service/src/main/java/com/fs/hisStore/domain/FsStoreProductScrm.java
  90. 2 9
      fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductAttrValueScrmMapper.java
  91. 1 12
      fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductScrmMapper.java
  92. 5 16
      fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreScrmMapper.java
  93. 0 11
      fs-service/src/main/java/com/fs/hisStore/param/FormatAttrParam.java
  94. 0 4
      fs-service/src/main/java/com/fs/hisStore/param/FsStoreProductAddEditParam.java
  95. 8 8
      fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductAttrValueScrmService.java
  96. 2 2
      fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductScrmService.java
  97. 0 3
      fs-service/src/main/java/com/fs/hisStore/service/IFsStoreScrmService.java
  98. 10 10
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductAttrValueScrmServiceImpl.java
  99. 46 47
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductScrmServiceImpl.java
  100. 0 9
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreScrmServiceImpl.java

+ 1 - 0
fs-admin/src/main/java/com/fs/FSApplication.java

@@ -14,6 +14,7 @@ import org.springframework.transaction.annotation.Transactional;
  * 启动程序
  */
 @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
+@Transactional
 @EnableAsync
 @EnableScheduling
 public class FSApplication

+ 0 - 146
fs-admin/src/main/java/com/fs/his/controller/FoodRecordController.java

@@ -1,146 +0,0 @@
-package com.fs.his.controller;
-
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.utils.StringUtils;
-import com.fs.foods.domain.FsFoodRecord;
-import com.fs.foods.param.FoodRecordAddParam;
-import com.fs.foods.param.FoodRecordEditParam;
-import com.fs.foods.param.FoodRecordQueryParam;
-import com.fs.foods.service.IFsFoodRecordService;
-import com.fs.his.mapper.FsUserMapper;
-import com.fs.store.service.cache.IFsUserCacheService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import java.util.List;
-
-/**
- * 饮食记录控制器
- */
-@Api("饮食记录管理")
-@RestController
-@Slf4j
-@RequestMapping(value = "/food-record")
-public class FoodRecordController extends BaseController {
-
-    @Autowired
-    private IFsFoodRecordService foodRecordService;
-
-    /**
-     * 获取用户饮食记录详情
-     */
-    @ApiOperation("获取饮食记录详情")
-    @GetMapping("/getRecordInfo/{id}")
-    public R getRecordInfo(@PathVariable Long id, HttpServletRequest request) {
-        FsFoodRecord record = foodRecordService.selectFsFoodRecordById(id);
-        return R.ok().put("data",record);
-    }
-
-
-    /**
-     * 获取用户饮食记录分页列表
-     */
-    @ApiOperation("获取用户饮食记录列表")
-    @GetMapping("/getMyRecordList")
-    public R getMyRecordList(FoodRecordQueryParam param, HttpServletRequest request) {
-        try {
-            PageHelper.startPage(param.getPageNum(), param.getPageSize());
-            List<FsFoodRecord> list = foodRecordService.selectFoodRecordList(param);
-            PageInfo<FsFoodRecord> listPageInfo = new PageInfo<>(list);
-            return R.ok().put("data", listPageInfo);
-        } catch (Exception e) {
-            log.error("获取饮食记录列表异常:", e);
-            return R.error("操作异常");
-        }
-    }
-
-    /**
-     * 新增饮食记录
-     */
-    @ApiOperation("新增饮食记录")
-    @PostMapping("/addRecord")
-    public R addRecord(@RequestBody @Valid FoodRecordAddParam param, HttpServletRequest request) {
-        try {
-            log.info("【新增饮食记录】:{}", param);
-
-            if (StringUtils.isEmpty(param.getMealDescription())) {
-                return R.error("用餐描述不能为空");
-            }
-
-            FsFoodRecord record = new FsFoodRecord();
-            BeanUtils.copyProperties(param, record);
-
-            if (foodRecordService.insertFsFoodRecord(record) > 0) {
-                return R.ok("添加成功");
-            } else {
-                return R.error("添加失败");
-            }
-        } catch (Exception e) {
-            log.error("新增饮食记录异常:", e);
-            return R.error("操作异常");
-        }
-    }
-
-    /**
-     * 修改饮食记录
-     */
-    @ApiOperation("修改饮食记录")
-    @PostMapping("/editRecord")
-    public R editRecord(@RequestBody @Valid FoodRecordEditParam param, HttpServletRequest request) {
-        try {
-            log.info("【修改饮食记录】:{}", param);
-
-            FsFoodRecord record = new FsFoodRecord();
-            BeanUtils.copyProperties(param, record);
-
-            if (foodRecordService.updateFsFoodRecord(record) > 0) {
-                return R.ok("修改成功");
-            } else {
-                return R.error("修改失败");
-            }
-        } catch (Exception e) {
-            log.error("修改饮食记录异常:", e);
-            return R.error("操作异常");
-        }
-    }
-
-    /**
-     * 删除饮食记录
-     */
-    @ApiOperation("删除饮食记录")
-    @PostMapping("/deleteRecord/{id}")
-    public R deleteRecord(@PathVariable("id") Long id, HttpServletRequest request) {
-        foodRecordService.deleteFsFoodRecordById(id);
-        return R.ok();
-    }
-
-
-    @Autowired
-    private IFsUserCacheService fsUserCacheService;
-    /**
-     * 管理端查询饮食记录列表
-     */
-    @ApiOperation("管理端查询饮食记录")
-    @GetMapping("/admin/list")
-    public TableDataInfo adminList(FoodRecordQueryParam param) {
-        startPage();
-        List<FsFoodRecord> list = foodRecordService.selectFoodRecordList(param);
-        for (FsFoodRecord fsFoodRecord : list) {
-            String fsUserName = fsUserCacheService.selectUserNameById(fsFoodRecord.getUserId());
-            if(StringUtils.isNotEmpty(fsUserName)){
-                fsFoodRecord.setUsername(fsUserName);
-            }
-        }
-        return getDataTable(list);
-    }
-}

+ 0 - 106
fs-admin/src/main/java/com/fs/his/controller/FsComplaintCategoryController.java

@@ -1,106 +0,0 @@
-package com.fs.his.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.mapper.FsComplaintCategoryMapper;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.service.FsComplaintCategoryService;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-@Slf4j
-@Api("投诉接口")
-@RestController
-@RequestMapping(value="/complaint")
-public class FsComplaintCategoryController extends BaseController {
-
-    @Autowired
-    private FsComplaintCategoryMapper fsComplaintCategoryMapper;
-
-    @Autowired
-    private FsComplaintCategoryService fsComplaintCategoryService;
-
-
-    /**
-     * 查询投诉分类列表
-     */
-    @ApiOperation("查询投诉分类列表")
-    @PreAuthorize("@ss.hasPermi('complaint:category:list')")
-    @GetMapping("/category/list")
-    public TableDataInfo list(FsComplaintCategoryParam param)
-    {
-        startPage();
-        List<FsComplaintCategoryListVO> list = fsComplaintCategoryMapper.selectFsComplaintCategoryListVO(param);
-        return getDataTable(list);
-    }
-    /**
-     * 根据ID查询投诉分类详情
-     */
-    @ApiOperation("查询投诉分类详情")
-    @PreAuthorize("@ss.hasPermi('complaint:category:query')")
-    @GetMapping("/category/{id}")
-    public R getInfo(@PathVariable("id") Long id)
-    {
-        return R.ok().put("data",fsComplaintCategoryService.selectFsComplaintCategoryById(id));
-    }
-
-    /**
-     * 新增投诉分类
-     */
-    @ApiOperation("新增投诉分类")
-    @PreAuthorize("@ss.hasPermi('complaint:category:add')")
-    @Log(title = "投诉分类", businessType = BusinessType.INSERT)
-    @PostMapping("/category")
-    public R add(@RequestBody FsComplaintCategory fsComplaintCategory)
-    {
-        fsComplaintCategoryService.insertFsComplaintCategory(fsComplaintCategory);
-        return R.ok();
-    }
-    @ApiOperation("修改投诉分类")
-    @PreAuthorize("@ss.hasPermi('complaint:category:edit')")
-    @Log(title = "投诉分类", businessType = BusinessType.UPDATE)
-    @PutMapping("/category")
-    public R edit(@RequestBody FsComplaintCategory fsComplaintCategory)
-    {
-        log.info("修改投诉分类 参数:{}",fsComplaintCategory);
-        fsComplaintCategoryService.updateFsComplaintCategory(fsComplaintCategory);
-        return R.ok();
-    }
-    /**
-     * 删除投诉分类
-     */
-    @ApiOperation("删除投诉分类")
-    @PreAuthorize("@ss.hasPermi('complaint:category:remove')")
-    @Log(title = "投诉分类", businessType = BusinessType.DELETE)
-    @DeleteMapping("/category/{ids}")
-    public R remove(@PathVariable Long[] ids)
-    {
-        fsComplaintCategoryService.deleteFsComplaintCategoryByIds(ids);
-        return R.ok();
-    }
-    /**
-     * 修改投诉分类状态
-     */
-    @ApiOperation("修改投诉分类状态")
-    @PreAuthorize("@ss.hasPermi('complaint:category:edit')")
-    @Log(title = "投诉分类状态", businessType = BusinessType.UPDATE)
-    @PutMapping("/category/status")
-    public R changeStatus(@RequestBody FsComplaintCategory fsComplaintCategory)
-    {
-        log.info("投诉分类状态 参数:{}",fsComplaintCategory);
-        fsComplaintCategoryService.updateFsComplaintCategoryStatus(fsComplaintCategory);
-        return R.ok();
-    }
-
-}

+ 0 - 93
fs-admin/src/main/java/com/fs/his/controller/FsComplaintController.java

@@ -1,93 +0,0 @@
-package com.fs.his.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.complaint.domain.FsComplaint;
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.dto.ComplaintQueryDTO;
-import com.fs.complaint.dto.SubmitComplaintDTO;
-import com.fs.complaint.dto.UpdateComplaintDTO;
-import com.fs.complaint.mapper.FsComplaintCategoryMapper;
-import com.fs.complaint.mapper.FsComplaintMapper;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.service.FsComplaintCategoryService;
-import com.fs.complaint.service.FsComplaintService;
-import com.fs.complaint.vo.ComplaintVO;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-import shade.kotlin.Result;
-
-import javax.validation.Valid;
-import java.util.List;
-
-@Slf4j
-@Api("投诉接口")
-@RestController
-@RequestMapping(value="/complaint")
-public class FsComplaintController extends BaseController {
-
-    @Autowired
-    private FsComplaintService fsComplaintService;
-    @Autowired
-    private FsComplaintCategoryService fsComplaintCategoryService;
-
-    /**
-     * 查询所有投诉分类
-     * @return R
-     */
-    @PostMapping("/queryAllCategory")
-    public R queryAllCategory(){
-        List<FsComplaintCategory> categoryList = fsComplaintCategoryService.queryAllCategory();
-        return R.ok().put("data",categoryList);
-    }
-
-    @ApiOperation("提交投诉")
-    @PostMapping
-    public R submitComplaint(@Valid @RequestBody SubmitComplaintDTO dto) {
-        fsComplaintService.submitComplaint(dto);
-        return R.ok();
-    }
-
-    @ApiOperation("根据ID查询投诉详情")
-    @GetMapping("/{id}")
-    public R getComplaintById(@PathVariable Long id) {
-        ComplaintVO complaintVO = fsComplaintService.getComplaintById(id);
-        return R.ok().put("data", complaintVO);
-    }
-    @ApiOperation("根据投诉单号查询投诉详情")
-    @GetMapping("/no/{complaintNo}")
-    public R getComplaintByNo(@PathVariable String complaintNo) {
-        ComplaintVO complaintVO = fsComplaintService.getComplaintByNo(complaintNo);
-        return R.ok().put("data", complaintVO);
-    }
-    @ApiOperation("分页查询投诉列表")
-    @PostMapping("/list")
-    public TableDataInfo getComplaintPage(@RequestBody ComplaintQueryDTO queryDTO) {
-        startPage();
-
-        List<FsComplaint> result = fsComplaintService.getComplaintPage(queryDTO);
-
-        return getDataTable(result);
-    }
-    @ApiOperation("更新投诉信息")
-    @PutMapping("/{id}")
-    public R updateComplaint(@PathVariable Long id, @Valid @RequestBody UpdateComplaintDTO dto) {
-        fsComplaintService.updateComplaint(id, dto);
-        return R.ok();
-    }
-    @ApiOperation("删除投诉")
-    @DeleteMapping("/{id}")
-    public R deleteComplaint(@PathVariable Long id) {
-        fsComplaintService.deleteComplaint(id);
-        return R.ok();
-    }
-
-}

+ 0 - 120
fs-admin/src/main/java/com/fs/his/controller/FsTodoItemsController.java

@@ -1,120 +0,0 @@
-package com.fs.his.controller;
-
-import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.common.utils.SecurityUtils;
-import com.fs.common.utils.ServletUtils;
-import com.fs.company.domain.CompanyUser;
-import com.fs.company.service.ICompanyUserService;
-import com.fs.todo.domain.FsTodoItems;
-import com.fs.todo.dto.TodoCategoryStatisticsDTO;
-import com.fs.todo.param.AssignExecutorParam;
-import com.fs.todo.param.GetUserListParam;
-import com.fs.todo.param.QueryTodoItemsParam;
-import com.fs.todo.service.FsTodoItemsService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.time.LocalDateTime;
-import java.util.List;
-import java.util.Map;
-
-@Api("待办")
-@RestController
-@RequestMapping(value="/todoItems")
-public class FsTodoItemsController extends BaseController {
-
-    @Autowired
-    private FsTodoItemsService fsTodoItemsService;
-
-    @Autowired
-    private ICompanyUserService companyUserService;
-
-    @ApiOperation("查看待办列表")
-    @PostMapping("/listPage")
-    public R listPage(@RequestBody QueryTodoItemsParam param)
-    {
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-        List<FsTodoItems> fsTodoItems = fsTodoItemsService.listPage(param);
-        PageInfo<FsTodoItems> listPageInfo=new PageInfo<>(fsTodoItems);
-        return R.ok().put("data",listPageInfo);
-    }
-
-    @ApiOperation("查看详情")
-    @PostMapping("/findById")
-    public R findById(@RequestBody QueryTodoItemsParam param)
-    {
-        if(ObjectUtils.isNull(param.getId())){
-            throw new IllegalArgumentException("待办事项id不能为空!");
-        }
-        FsTodoItems byId = fsTodoItemsService.getById(param.getId());
-        return R.ok().put("data",byId);
-    }
-
-
-    @ApiOperation("更新待办事项状态")
-    @PostMapping("/updateStatusById")
-    public R updateStatusById(@RequestBody QueryTodoItemsParam param)
-    {
-        if(ObjectUtils.isNull(param.getId())){
-            throw new IllegalArgumentException("待办事项id不能为空!");
-        }
-        fsTodoItemsService.updateStatus(param.getId(),param.getStatus());
-        return R.ok();
-    }
-    @ApiOperation("更新待办事项")
-    @PostMapping("/updateById")
-    public R updateById(@RequestBody FsTodoItems param)
-    {
-        if(ObjectUtils.isNull(param.getId())){
-            throw new IllegalArgumentException("待办事项id不能为空!");
-        }
-        fsTodoItemsService.updateById(param);
-        return R.ok();
-    }
-
-
-    @ApiOperation("删除待办事项")
-    @PostMapping("/removeById")
-    public R removeById(@RequestBody QueryTodoItemsParam param){
-        fsTodoItemsService.removeById(param.getId());
-        return R.ok();
-    }
-
-    @ApiOperation("添加待办事项")
-    @PostMapping("/add")
-    public R addTodoItems(@RequestBody FsTodoItems param){
-        param.setCreateTime(LocalDateTime.now());
-        param.setUpdateTime(LocalDateTime.now());
-        param.setCreatorId(getUserId());
-        fsTodoItemsService.save(param);
-        return R.ok();
-    }
-
-    @ApiOperation("添加待办事项")
-    @PostMapping("/assignExecutor")
-    public R assignExecutor(@RequestBody AssignExecutorParam param){
-        param.setAssigneeId(SecurityUtils.getUserId());
-
-        fsTodoItemsService.assignExecutor(param);
-        return R.ok();
-    }
-
-    @PostMapping("/getUserList")
-    public R getUserList(@RequestBody GetUserListParam param)
-    {
-
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-
-        CompanyUser map=new CompanyUser();
-        map.setCompanyId(param.getCompanyId());
-        List<CompanyUser> list = companyUserService.selectCompanyUserList(map);
-        return  R.ok().put("data",list);
-    }
-
-}

+ 0 - 102
fs-admin/src/main/java/com/fs/his/controller/RechargeTemplateController.java

@@ -1,102 +0,0 @@
-package com.fs.his.controller;
-
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.core.redis.RedisCache;
-import com.fs.his.param.FsCouponListUParam;
-import com.fs.his.service.IFsCouponService;
-import com.fs.his.service.IFsUserCouponService;
-import com.fs.his.vo.FsCouponListUVO;
-import com.fs.recharge.domain.RechargeTemplate;
-import com.fs.recharge.param.RechargeParam;
-import com.fs.recharge.param.RechargeTemplateQuery;
-import com.fs.recharge.service.RechargeTemplateService;
-import com.fs.recharge.vo.RechargeTemplateVO;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 充值模板控制器
- */
-@Slf4j
-@Api(tags = "充值模板管理")
-@RestController
-@RequestMapping("/recharge-templates")
-public class RechargeTemplateController extends BaseController {
-
-    @Autowired
-    private RechargeTemplateService rechargeTemplateService;
-    @Autowired
-    private IFsCouponService couponService;
-
-    @ApiOperation("获取可用的充值模板列表")
-    @PostMapping("/list")
-    public TableDataInfo getValidTemplates(@RequestBody RechargeTemplateQuery query) {
-        log.info("获取可用的充值模板列表 参数 query: {}",query);
-
-        Integer pageNum = query.getPageNum();
-        Integer pageSize = query.getPageSize();
-
-        PageHelper.startPage(pageNum, pageSize);
-
-        List<RechargeTemplateVO> templates = rechargeTemplateService.queryList(query);
-        return getDataTable(templates);
-    }
-
-    @ApiOperation("获取充值模板详情")
-    @GetMapping("/{id}")
-    public R getTemplateDetail(
-            @ApiParam(value = "模板ID", required = true) @PathVariable Long id) {
-        RechargeTemplateVO template = rechargeTemplateService.getTemplateDetail(id);
-        if (template == null) {
-            return R.error("模板不存在");
-        }
-        return R.ok().put("data",template);
-    }
-
-    @ApiOperation("创建充值模板")
-    @PostMapping
-    public R createTemplate(@RequestBody RechargeTemplate template) {
-        boolean success = rechargeTemplateService.createTemplate(template);
-        return R.ok();
-    }
-
-    @ApiOperation("更新充值模板")
-    @PutMapping("/{id}")
-    public R updateTemplate(
-            @ApiParam(value = "模板ID", required = true) @PathVariable Long id,
-            @RequestBody RechargeTemplate template) {
-        template.setId(id);
-        boolean success = rechargeTemplateService.updateTemplate(template);
-        return R.ok();
-    }
-
-    @ApiOperation("启用或禁用充值模板")
-    @PutMapping("/{id}/status")
-    public R updateStatus(
-            @ApiParam(value = "模板ID", required = true) @PathVariable Long id,
-            @ApiParam(value = "状态:0-禁用,1-启用", required = true) @RequestParam Integer status) {
-        boolean success = rechargeTemplateService.updateStatus(id, status);
-        return R.ok();
-    }
-
-
-    @ApiOperation("获取优惠券列表")
-    @GetMapping("/getCouponList")
-    public R getCouponList(FsCouponListUParam param)
-    {
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-        List<FsCouponListUVO> list=couponService.selectFsCouponListUVO(param);
-        PageInfo<FsCouponListUVO> listPageInfo=new PageInfo<>(list);
-        return R.ok().put("data",listPageInfo);
-    }
-}

+ 0 - 17
fs-admin/src/main/java/com/fs/his/task/FsUserTask.java

@@ -1,17 +0,0 @@
-package com.fs.his.task;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-@Slf4j
-@Service("fsUserTask")
-public class FsUserTask {
-
-    /**
-     * 推广员自动升级
-     */
-    public void promoterAutoUpgrade(){
-
-    }
-
-}

+ 0 - 134
fs-admin/src/main/java/com/fs/hisStore/FsStoreSCRMController.java

@@ -1,134 +0,0 @@
-package com.fs.hisStore;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.domain.R;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.ParseUtils;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.his.domain.FsStore;
-import com.fs.his.param.FsStoreAuditParam;
-import com.fs.his.service.IFsStoreService;
-import com.fs.hisStore.domain.FsStoreScrm;
-import com.fs.hisStore.service.IFsStoreScrmService;
-import com.fs.hisStore.vo.FsStoreScrmVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 店铺管理Controller
- *
- * @author fs
- * @date 2023-06-15
- */
-@RestController
-@RequestMapping("/store/store")
-public class FsStoreSCRMController extends BaseController
-{
-    @Autowired
-    private IFsStoreScrmService fsStoreService;
-
-    /**
-     * 查询店铺管理列表
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(FsStoreScrm fsStore)
-    {
-        startPage();
-        List<FsStoreScrm> list = fsStoreService.selectFsStoreList(fsStore);
-        for (FsStoreScrm store : list) {
-            store.setPhone(ParseUtils.parsePhone(store.getPhone()));
-        }
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出店铺管理列表
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:export')")
-    @Log(title = "店铺管理", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(FsStoreScrm fsStore)
-    {
-        List<FsStoreScrm> list = fsStoreService.selectFsStoreList(fsStore);
-        for (FsStoreScrm store : list) {
-            store.setPhone(ParseUtils.parsePhone(store.getPhone()));
-        }
-        ExcelUtil<FsStoreScrm> util = new ExcelUtil<FsStoreScrm>(FsStoreScrm.class);
-        return util.exportExcel(list, "店铺管理数据");
-    }
-
-    /**
-     * 获取店铺管理详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:query')")
-    @GetMapping(value = "/{storeId}")
-    public AjaxResult getInfo(@PathVariable("storeId") Long storeId)
-    {
-        FsStoreScrm fsStore = fsStoreService.selectFsStoreByStoreId(storeId);
-        fsStore.setPhone(ParseUtils.parsePhone(fsStore.getPhone()));
-        return AjaxResult.success(fsStore);
-    }
-
-    /**
-     * 新增店铺管理
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:add')")
-    @Log(title = "店铺管理", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody FsStoreScrm fsStore)
-    {
-        return toAjax(fsStoreService.insertFsStore(fsStore));
-    }
-
-    /**
-     * 修改店铺管理
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:edit')")
-    @Log(title = "店铺管理", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody FsStoreScrm fsStore)
-    {
-
-        if (fsStore.getPhone()!=null&&fsStore.getPhone().contains("*")){
-            fsStore.setPhone(null);
-        }
-        return toAjax(fsStoreService.updateFsStore(fsStore));
-    }
-
-    /**
-     * 删除店铺管理
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:remove')")
-    @Log(title = "店铺管理", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{storeIds}")
-    public AjaxResult remove(@PathVariable Long[] storeIds)
-    {
-        return toAjax(fsStoreService.deleteFsStoreByStoreIds(storeIds));
-    }
-
-    /**
-     * 店铺审核
-     */
-    @PreAuthorize("@ss.hasPermi('store:store:audit')")
-    @Log(title = "店铺管理", businessType = BusinessType.UPDATE)
-    @PutMapping("/audit")
-    public AjaxResult audit(@RequestBody FsStoreAuditParam fsStore)
-    {
-        return toAjax(fsStoreService.updateFsStoreAudit(fsStore));
-    }
-
-    @GetMapping("/storeList")
-    public R storeList(){
-        List<FsStoreScrmVO> list = fsStoreService.selectAllStore();
-        return R.ok().put("data",list);
-    }
-
-
-}

+ 2 - 3
fs-admin/src/main/java/com/fs/hisStore/controller/FsStoreProductScrmController.java

@@ -8,7 +8,6 @@ import com.fs.common.core.domain.R;
 import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.enums.BusinessType;
 import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.hisStore.param.FormatAttrParam;
 import com.fs.hisStore.vo.FsStoreProductAttrValueVO;
 import com.fs.hisStore.vo.FsStoreProductExportVO;
 import com.fs.hisStore.vo.FsStoreProductListVO;
@@ -73,7 +72,7 @@ public class FsStoreProductScrmController extends BaseController
     /**
      * 查询商品列表
      */
-//    @PreAuthorize("@ss.hasPermi('store:storeProduct:list')")
+    @PreAuthorize("@ss.hasPermi('store:storeProduct:list')")
     @GetMapping("/list")
     public TableDataInfo list(FsStoreProductScrm fsStoreProduct)
     {
@@ -171,7 +170,7 @@ public class FsStoreProductScrmController extends BaseController
     @ApiOperation(value = "生成属性")
     @PostMapping(value = "/genFormatAttr/{productId}")
     public ResponseEntity genFormatAttr(@PathVariable Long productId, @RequestBody String jsonStr){
-        return new ResponseEntity<>(fsStoreProductService.getFormatAttr(productId,jsonStr,null), HttpStatus.OK);
+        return new ResponseEntity<>(fsStoreProductService.getFormatAttr(productId,jsonStr), HttpStatus.OK);
     }
 
 

+ 0 - 155
fs-admin/src/main/java/com/fs/medical/MeasurementUnitController.java

@@ -1,155 +0,0 @@
-package com.fs.medical;
-
-import com.fs.common.annotation.RepeatSubmit;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.medical.domain.MeasurementUnit;
-import com.fs.medical.param.MeasurementUnitQueryDto;
-import com.fs.medical.service.MeasurementUnitService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 计量单位Controller
- *
- * @author fs
- * @date 2024
- */
-@Api("计量单位")
-@RestController
-@RequestMapping("/admin/medical/unit")
-public class MeasurementUnitController extends BaseController {
-    private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
-    @Autowired
-    private MeasurementUnitService measurementUnitService;
-
-    /**
-     * 查询所有计量单位
-     */
-    @ApiOperation("查询所有计量单位")
-    @GetMapping("/listAll")
-    public R listAll() {
-        try {
-            List<MeasurementUnit> list = measurementUnitService.listAll();
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("查询计量单位失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 分页查询计量单位列表(带筛选)
-     */
-    @ApiOperation("分页查询计量单位列表")
-    @GetMapping("/page")
-    public R page(MeasurementUnitQueryDto queryDto) {
-        try {
-            PageHelper.startPage(queryDto.getPageNum(), queryDto.getPageSize());
-            List<MeasurementUnit> list = measurementUnitService.selectPageList(queryDto);
-            PageInfo<MeasurementUnit> pageInfo = new PageInfo<>(list);
-            return R.ok().put("data", pageInfo);
-        } catch (Exception e) {
-            logger.error("分页查询计量单位失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据单位类型查询计量单位
-     */
-    @ApiOperation("根据单位类型查询计量单位")
-    @GetMapping("/listByType")
-    public R listByType(@RequestParam String unitType) {
-        try {
-            List<MeasurementUnit> list = measurementUnitService.listByType(unitType);
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("根据类型查询计量单位失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据ID查询计量单位详情
-     */
-    @ApiOperation("根据ID查询计量单位详情")
-    @GetMapping("/{unitId}")
-    public R getById(@PathVariable("unitId") Long unitId) {
-        try {
-            MeasurementUnit unit = measurementUnitService.getById(unitId);
-            return R.ok().put("data",unit);
-        } catch (Exception e) {
-            logger.error("查询计量单位详情失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 新增计量单位
-     */
-    @RepeatSubmit
-    @ApiOperation("新增计量单位")
-    @PostMapping("/add")
-    public R add(@RequestBody MeasurementUnit unit) {
-        try {
-            boolean result = measurementUnitService.save(unit);
-            if (result) {
-                return R.ok("新增成功");
-            } else {
-                return R.error("新增失败");
-            }
-        } catch (Exception e) {
-            logger.error("新增计量单位失败", e);
-            return R.error("新增失败");
-        }
-    }
-
-    /**
-     * 更新计量单位
-     */
-    @RepeatSubmit
-    @ApiOperation("更新计量单位")
-    @PutMapping("/update")
-    public R update(@RequestBody MeasurementUnit unit) {
-        try {
-            boolean result = measurementUnitService.update(unit);
-            if (result) {
-                return R.ok("更新成功");
-            } else {
-                return R.error("更新失败");
-            }
-        } catch (Exception e) {
-            logger.error("更新计量单位失败", e);
-            return R.error("更新失败");
-        }
-    }
-
-    /**
-     * 删除计量单位
-     */
-    @ApiOperation("删除计量单位")
-    @DeleteMapping("/{unitId}")
-    public R delete(@PathVariable("unitId") Long unitId) {
-        try {
-            boolean result = measurementUnitService.deleteById(unitId);
-            if (result) {
-                return R.ok("删除成功");
-            } else {
-                return R.error("删除失败");
-            }
-        } catch (Exception e) {
-            logger.error("删除计量单位失败", e);
-            return R.error("删除失败");
-        }
-    }
-}

+ 0 - 157
fs-admin/src/main/java/com/fs/medical/MedicalIndicatorController.java

@@ -1,157 +0,0 @@
-package com.fs.medical;
-
-import com.fs.common.annotation.RepeatSubmit;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.medical.domain.MedicalIndicator;
-import com.fs.medical.param.MedicalIndicatorQueryDto;
-import com.fs.medical.service.MedicalIndicatorService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 医疗指标Controller
- *
- * @author fs
- * @date 2024
- */
-@Slf4j
-@Api("医疗指标")
-@RestController
-@RequestMapping("/admin/medical/indicator")
-public class MedicalIndicatorController extends BaseController {
-    private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
-    @Autowired
-    private MedicalIndicatorService medicalIndicatorService;
-
-    /**
-     * 查询所有启用的指标
-     */
-    @ApiOperation("查询所有启用的指标")
-    @GetMapping("/listEnabled")
-    public R listAllEnabled() {
-        try {
-            List<MedicalIndicator> list = medicalIndicatorService.listAllEnabled();
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("查询启用指标失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 分页查询医疗指标列表(带筛选)
-     */
-    @ApiOperation("分页查询医疗指标列表")
-    @GetMapping("/page")
-    public R page(MedicalIndicatorQueryDto queryDto) {
-        try {
-            PageHelper.startPage(queryDto.getPageNum(), queryDto.getPageSize());
-            List<MedicalIndicator> list = medicalIndicatorService.selectPageList(queryDto);
-            PageInfo<MedicalIndicator> pageInfo = new PageInfo<>(list);
-            return R.ok().put("data", pageInfo);
-        } catch (Exception e) {
-            logger.error("分页查询医疗指标失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据分类查询指标
-     */
-    @ApiOperation("根据分类查询指标")
-    @GetMapping("/listByCategory")
-    public R listByCategory(@RequestParam String category) {
-        try {
-            List<MedicalIndicator> list = medicalIndicatorService.listByCategory(category);
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("根据分类查询指标失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据ID查询指标详情
-     */
-    @ApiOperation("根据ID查询指标详情")
-    @GetMapping("/{indicatorId}")
-    public R getById(@PathVariable("indicatorId") Long indicatorId) {
-        try {
-            MedicalIndicator indicator = medicalIndicatorService.getById(indicatorId);
-            return R.ok().put("data",indicator);
-        } catch (Exception e) {
-            logger.error("查询指标详情失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 新增指标
-     */
-    @RepeatSubmit
-    @ApiOperation("新增指标")
-    @PostMapping("/add")
-    public R add(@RequestBody MedicalIndicator indicator) {
-        try {
-            boolean result = medicalIndicatorService.save(indicator);
-            if (result) {
-                return R.ok("新增成功");
-            } else {
-                return R.error("新增失败");
-            }
-        } catch (Exception e) {
-            logger.error("新增指标失败", e);
-            return R.error("新增失败");
-        }
-    }
-
-    /**
-     * 更新指标
-     */
-    @RepeatSubmit
-    @ApiOperation("更新指标")
-    @PutMapping("/update")
-    public R update(@RequestBody MedicalIndicator indicator) {
-        try {
-            boolean result = medicalIndicatorService.update(indicator);
-            if (result) {
-                return R.ok("更新成功");
-            } else {
-                return R.error("更新失败");
-            }
-        } catch (Exception e) {
-            logger.error("更新指标失败", e);
-            return R.error("更新失败");
-        }
-    }
-
-    /**
-     * 删除指标
-     */
-    @ApiOperation("删除指标")
-    @DeleteMapping("/{indicatorId}")
-    public R delete(@PathVariable("indicatorId") Long indicatorId) {
-        try {
-            boolean result = medicalIndicatorService.deleteById(indicatorId);
-            if (result) {
-                return R.ok("删除成功");
-            } else {
-                return R.error("删除失败");
-            }
-        } catch (Exception e) {
-            logger.error("删除指标失败", e);
-            return R.error("删除失败");
-        }
-    }
-}

+ 0 - 160
fs-admin/src/main/java/com/fs/medical/PhysicalExamReportController.java

@@ -1,160 +0,0 @@
-package com.fs.medical;
-
-import com.fs.common.annotation.RepeatSubmit;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.medical.domain.PhysicalExamReport;
-import com.fs.medical.param.PhysicalExamReportCompareDto;
-import com.fs.medical.param.PhysicalExamReportQueryDto;
-import com.fs.medical.service.PhysicalExamReportService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.Date;
-import java.util.List;
-
-/**
- * 体检报告Controller
- *
- * @author fs
- * @date 2024
- */
-@Api("体检报告")
-@RestController
-@RequestMapping("/admin/medical/report")
-public class PhysicalExamReportController extends BaseController {
-    private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
-    @Autowired
-    private PhysicalExamReportService physicalExamReportService;
-
-    /**
-     * 根据用户ID查询体检报告列表
-     */
-    @ApiOperation("查询用户体检报告列表")
-    @GetMapping("/listByUser/{userId}")
-    public R listByUserId(@PathVariable("userId") Long userId) {
-        try {
-            List<PhysicalExamReport> list = physicalExamReportService.listByUserId(userId);
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("查询用户体检报告失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 分页查询体检报告列表(带筛选)
-     */
-    @ApiOperation("分页查询体检报告列表")
-    @GetMapping("/page")
-    public R page(PhysicalExamReportQueryDto queryDto) {
-        try {
-            PageHelper.startPage(queryDto.getPageNum(), queryDto.getPageSize());
-            List<PhysicalExamReport> list = physicalExamReportService.selectPageList(queryDto);
-            PageInfo<PhysicalExamReport> pageInfo = new PageInfo<>(list);
-            return R.ok().put("data", pageInfo);
-        } catch (Exception e) {
-            logger.error("分页查询体检报告失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据用户ID和体检日期查询体检报告
-     */
-    @ApiOperation("根据用户ID和体检日期查询体检报告")
-    @GetMapping("/getByUserAndDate")
-    public R getByUserIdAndDate(
-            @RequestParam Long userId,
-            @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") Date examDate) {
-        try {
-            PhysicalExamReport report = physicalExamReportService.getByUserIdAndDate(userId, examDate);
-            return R.ok().put("data",report);
-        } catch (Exception e) {
-            logger.error("根据用户ID和日期查询体检报告失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据ID查询体检报告详情
-     */
-    @ApiOperation("查询体检报告详情")
-    @GetMapping("/{reportId}")
-    public R getById(@PathVariable("reportId") Long reportId) {
-        try {
-            PhysicalExamReport report = physicalExamReportService.getById(reportId);
-            return R.ok().put("data",report);
-        } catch (Exception e) {
-            logger.error("查询体检报告详情失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 新增体检报告
-     */
-    @RepeatSubmit
-    @ApiOperation("新增体检报告")
-    @PostMapping("/add")
-    public R add(@RequestBody PhysicalExamReport report) {
-        try {
-            boolean result = physicalExamReportService.save(report);
-            if (result) {
-                return R.ok("新增成功");
-            } else {
-                return R.error("新增失败");
-            }
-        } catch (Exception e) {
-            logger.error("新增体检报告失败", e);
-            return R.error("新增失败");
-        }
-    }
-
-    /**
-     * 更新体检报告
-     */
-    @RepeatSubmit
-    @ApiOperation("更新体检报告")
-    @PutMapping("/update")
-    public R update(@RequestBody PhysicalExamReport report) {
-        try {
-            boolean result = physicalExamReportService.update(report);
-            if (result) {
-                return R.ok("更新成功");
-            } else {
-                return R.error("更新失败");
-            }
-        } catch (Exception e) {
-            logger.error("更新体检报告失败", e);
-            return R.error("更新失败");
-        }
-    }
-
-    /**
-     * 删除体检报告
-     */
-    @ApiOperation("删除体检报告")
-    @DeleteMapping("/{reportId}")
-    public R delete(@PathVariable("reportId") Long reportId) {
-        try {
-            boolean result = physicalExamReportService.deleteById(reportId);
-            if (result) {
-                return R.ok("删除成功");
-            } else {
-                return R.error("删除失败");
-            }
-        } catch (Exception e) {
-            logger.error("删除体检报告失败", e);
-            return R.error("删除失败");
-        }
-    }
-}

+ 0 - 190
fs-admin/src/main/java/com/fs/medical/ReportIndicatorResultController.java

@@ -1,190 +0,0 @@
-package com.fs.medical;
-
-import com.fs.common.annotation.RepeatSubmit;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.medical.domain.ReportIndicatorResult;
-import com.fs.medical.dto.ReportAllIndicatorCateDTO;
-import com.fs.medical.param.ReportIndicatorResultQueryDto;
-import com.fs.medical.service.ReportIndicatorResultService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 报告指标检查Controller
- *
- * @author fs
- * @date 2024
- */
-@Api("报告指标检查")
-@RestController
-@RequestMapping("/admin/medical/result")
-public class ReportIndicatorResultController extends BaseController {
-    private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
-    @Autowired
-    private ReportIndicatorResultService reportIndicatorResultService;
-
-    /**
-     * 根据报告ID查询所有指标结果
-     */
-    @ApiOperation("根据报告ID查询所有指标结果")
-    @GetMapping("/listByReport/{reportId}")
-    public R listByReportId(@PathVariable("reportId") Long reportId) {
-        try {
-            List<ReportIndicatorResult> list = reportIndicatorResultService.listByReportId(reportId);
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("根据报告ID查询指标结果失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    @ApiOperation("获取指定报告的指标分类")
-    @GetMapping("/getAllCateByReportId")
-    public R getAllIndicatorByReportId(@RequestParam("reportId") Long reportId) {
-        List<ReportAllIndicatorCateDTO> allIndicatorByReportId = reportIndicatorResultService.getAllIndicatorByReportId(reportId);
-        return R.ok().put("data",allIndicatorByReportId);
-    }
-
-    /**
-     * 分页查询报告指标检查结果列表(带筛选)
-     */
-    @ApiOperation("分页查询报告指标检查结果列表")
-    @GetMapping("/page")
-    public R page(ReportIndicatorResultQueryDto queryDto) {
-        try {
-            PageHelper.startPage(queryDto.getPageNum(), queryDto.getPageSize());
-            List<ReportIndicatorResult> list = reportIndicatorResultService.selectPageList(queryDto);
-            PageInfo<ReportIndicatorResult> pageInfo = new PageInfo<>(list);
-            return R.ok().put("data", pageInfo);
-        } catch (Exception e) {
-            logger.error("分页查询报告指标检查结果失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据指标ID查询所有结果
-     */
-    @ApiOperation("根据指标ID查询所有结果")
-    @GetMapping("/listByIndicator/{indicatorId}")
-    public R listByIndicatorId(@PathVariable("indicatorId") Long indicatorId) {
-        try {
-            List<ReportIndicatorResult> list = reportIndicatorResultService.listByIndicatorId(indicatorId);
-            return R.ok().put("data",list);
-        } catch (Exception e) {
-            logger.error("根据指标ID查询结果失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 根据ID查询检查结果详情
-     */
-    @ApiOperation("查询检查结果详情")
-    @GetMapping("/{resultId}")
-    public R getById(@PathVariable("resultId") Long resultId) {
-        try {
-            ReportIndicatorResult result = reportIndicatorResultService.getById(resultId);
-            return R.ok().put("data",result);
-        } catch (Exception e) {
-            logger.error("查询检查结果详情失败", e);
-            return R.error("查询失败");
-        }
-    }
-
-    /**
-     * 新增检查结果
-     */
-    @RepeatSubmit
-    @ApiOperation("新增检查结果")
-    @PostMapping("/add")
-    public R add(@RequestBody ReportIndicatorResult result) {
-        try {
-            boolean success = reportIndicatorResultService.save(result);
-            if (success) {
-                return R.ok("新增成功");
-            } else {
-                return R.error("新增失败");
-            }
-        } catch (Exception e) {
-            logger.error("新增检查结果失败", e);
-            return R.error("新增失败");
-        }
-    }
-
-    /**
-     * 批量新增检查结果
-     */
-    @RepeatSubmit
-    @ApiOperation("批量新增检查结果")
-    @PostMapping("/batchAdd")
-    public R batchAdd(@RequestBody List<ReportIndicatorResult> results) {
-        try {
-            int successCount = 0;
-            for (ReportIndicatorResult result : results) {
-                if (reportIndicatorResultService.save(result)) {
-                    successCount++;
-                }
-            }
-            if (successCount == results.size()) {
-                return R.ok("批量新增成功");
-            } else {
-                return R.ok("部分新增成功,成功" + successCount + "条");
-            }
-        } catch (Exception e) {
-            logger.error("批量新增检查结果失败", e);
-            return R.error("批量新增失败"
-
-            );
-        }
-    }
-
-    /**
-     * 更新检查结果
-     */
-    @RepeatSubmit
-    @ApiOperation("更新检查结果")
-    @PutMapping("/update")
-    public R update(@RequestBody ReportIndicatorResult result) {
-        try {
-            boolean success = reportIndicatorResultService.update(result);
-            if (success) {
-                return R.ok("更新成功");
-            } else {
-                return R.error("更新失败");
-            }
-        } catch (Exception e) {
-            logger.error("更新检查结果失败", e);
-            return R.error("更新失败");
-        }
-    }
-
-    /**
-     * 删除检查结果
-     */
-    @ApiOperation("删除检查结果")
-    @DeleteMapping("/{resultId}")
-    public R delete(@PathVariable("resultId") Long resultId) {
-        try {
-            boolean success = reportIndicatorResultService.deleteById(resultId);
-            if (success) {
-                return R.ok("删除成功");
-            } else {
-                return R.error("删除失败");
-            }
-        } catch (Exception e) {
-            logger.error("删除检查结果失败", e);
-            return R.error("删除失败");
-        }
-    }
-}

+ 0 - 82
fs-admin/src/main/java/com/fs/saler/CompetitorInfoController.java

@@ -1,82 +0,0 @@
-package com.fs.saler;
-
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.R;
-import com.fs.saler.domain.FsCompetitorInfo;
-import com.fs.saler.param.FsCompetitorInfoParam;
-import com.fs.saler.service.FsCompetitorInfoService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.util.List;
-
-/**
- * 竞品信息控制器
- */
-@Api("竞品信息")
-@RestController
-@RequestMapping(value="/saler/competitorInfo")
-public class CompetitorInfoController extends BaseController {
-
-    @Autowired
-    private FsCompetitorInfoService competitorInfoService;
-
-    /**
-     * 分页查询竞品列表
-     */
-    @ApiOperation("查看竞品列表")
-    @PostMapping("/listPage")
-    public R listPage(@RequestBody FsCompetitorInfoParam param) {
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-        List<FsCompetitorInfo> list = competitorInfoService.getAll(param);
-        PageInfo<FsCompetitorInfo> pageInfo = new PageInfo<>(list);
-        return R.ok().put("data", pageInfo);
-    }
-
-    /**
-     * 查看竞品详情
-     */
-    @ApiOperation("查看竞品详情")
-    @PostMapping("/findById")
-    public R findById(@RequestBody FsCompetitorInfoParam param) {
-        FsCompetitorInfo competitorInfo = competitorInfoService.getById(param.getId());
-        return R.ok().put("data", competitorInfo);
-    }
-
-    /**
-     * 新增竞品
-     */
-    @ApiOperation("新增竞品")
-    @PostMapping("/save")
-    public R save(@RequestBody FsCompetitorInfo competitorInfo) {
-        boolean result = competitorInfoService.save(competitorInfo);
-        return result ? R.ok() : R.error("新增竞品失败");
-    }
-
-    /**
-     * 更新竞品信息
-     */
-    @ApiOperation("更新竞品信息")
-    @PostMapping("/updateById")
-    public R updateById(@RequestBody FsCompetitorInfo competitorInfo) {
-        boolean result = competitorInfoService.update(competitorInfo);
-        return result ? R.ok() : R.error("更新竞品信息失败");
-    }
-
-    /**
-     * 删除竞品
-     */
-    @ApiOperation("删除竞品")
-    @PostMapping("/deleteById")
-    public R deleteById(@RequestBody FsCompetitorInfoParam param) {
-        boolean result = competitorInfoService.removeById(param.getId());
-        return result ? R.ok() : R.error("删除竞品失败");
-    }
-}

+ 0 - 73
fs-admin/src/main/java/com/fs/saler/FsServiceGoodsController.java

@@ -1,73 +0,0 @@
-package com.fs.saler;
-
-import com.fs.common.core.domain.R;
-import com.fs.saler.domain.FsProductInfo;
-import com.fs.saler.param.ProductInfoListPageParam;
-import com.fs.saler.service.FsProductInfoService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.util.List;
-
-@Api("商品信息")
-@RestController
-@RequestMapping(value="/saler/serviceGoods")
-public class FsServiceGoodsController {
-    @Autowired
-    private FsProductInfoService fsProductInfoService;
-
-    /**
-     * 分页查询商品列表
-     */
-    @ApiOperation("查看商品列表")
-    @PostMapping("/listPage")
-    public R listPage(@RequestBody ProductInfoListPageParam param) {
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-        List<FsProductInfo> list = fsProductInfoService.getAll(param);
-        PageInfo<FsProductInfo> pageInfo = new PageInfo<>(list);
-        return R.ok().put("data", pageInfo);
-    }
-    /**
-     * 查看商品详情
-     */
-    @ApiOperation("查看商品详情")
-    @PostMapping("/findById")
-    public R findById(@RequestBody ProductInfoListPageParam param) {
-        FsProductInfo productInfo = fsProductInfoService.getById(param.getId());
-        return R.ok().put("data", productInfo);
-    }
-    /**
-     * 新增商品
-     */
-    @ApiOperation("新增商品")
-    @PostMapping("/save")
-    public R save(@RequestBody FsProductInfo productInfo) {
-        boolean result = fsProductInfoService.save(productInfo);
-        return result ? R.ok() : R.error("新增商品失败");
-    }
-    /**
-     * 更新商品信息
-     */
-    @ApiOperation("更新商品信息")
-    @PostMapping("/updateById")
-    public R updateById(@RequestBody FsProductInfo productInfo) {
-        boolean result = fsProductInfoService.update(productInfo);
-        return result ? R.ok() : R.error("更新商品信息失败");
-    }
-    /**
-     * 删除商品
-     */
-    @ApiOperation("删除商品")
-    @PostMapping("/deleteById")
-    public R deleteById(@RequestBody ProductInfoListPageParam param) {
-        boolean result = fsProductInfoService.removeById(param.getId());
-        return result ? R.ok() : R.error("删除商品失败");
-    }
-}

+ 0 - 42
fs-common/src/main/java/com/fs/common/utils/DateUtils.java

@@ -271,46 +271,4 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
         return new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
     }
 
-    /**
-     * @Description: yyyy-MM 获取当月的第一天
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 14:30
-     */
-    public static Date getStartOfMonth(Date date) {
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(date);
-        calendar.set(Calendar.DAY_OF_MONTH, 1);
-        return calendar.getTime();
-    }
-
-    /**
-     * @Description: yyyy-MM 获取当月的最后一天
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 14:31
-     */
-
-    public static Date getEndOfMonth(Date date) {
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(date);
-        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
-        return calendar.getTime();
-    }
-
-    /**
-     * @Description: 根据日期获取星期 1-星期一 2-星期二 。。。6-星期六 0-星期日
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/5 14:04
-     */
-
-    public static int getWeek(Date date) {
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(date);
-        return calendar.get(Calendar.DAY_OF_WEEK)-1;
-    }
 }

+ 0 - 3
fs-common/src/main/java/com/fs/common/utils/DictUtils.java

@@ -6,14 +6,12 @@ import com.fs.common.constant.Constants;
 import com.fs.common.core.domain.entity.SysDictData;
 import com.fs.common.core.redis.RedisCache;
 import com.fs.common.utils.spring.SpringUtils;
-import lombok.extern.slf4j.Slf4j;
 
 /**
  * 字典工具类
  *
 
  */
-@Slf4j
 public class DictUtils
 {
     /**
@@ -44,7 +42,6 @@ public class DictUtils
         if (StringUtils.isNotNull(cacheObj))
         {
             List<SysDictData> dictDatas = StringUtils.cast(cacheObj);
-//            log.info("获取缓存 key: {} values: {}",key,dictDatas);
             return dictDatas;
         }
         return null;

+ 0 - 205
fs-common/src/main/java/com/fs/common/utils/FileNameExtractor.java

@@ -1,205 +0,0 @@
-package com.fs.common.utils;
-
-import org.apache.commons.io.FilenameUtils;
-import java.net.URL;
-import java.net.MalformedURLException;
-
-public class FileNameExtractor {
-
-    /**
-     * 使用Apache Commons IO获取文件名
-     * @param urlString URL字符串
-     * @return 文件名
-     */
-    public static String getFileNameFromUrl(String urlString) {
-        if (urlString == null || urlString.trim().isEmpty()) {
-            return null;
-        }
-
-        try {
-            URL url = new URL(urlString);
-            String path = url.getPath();
-            return FilenameUtils.getName(path);
-        } catch (MalformedURLException e) {
-            // 作为普通路径处理
-            return FilenameUtils.getName(urlString);
-        }
-    }
-
-    /**
-     * 获取不带扩展名的文件名
-     * @param urlString URL字符串
-     * @return 不带扩展名的文件名
-     */
-    public static String getBaseNameFromUrl(String urlString) {
-        if (urlString == null || urlString.trim().isEmpty()) {
-            return null;
-        }
-
-        try {
-            URL url = new URL(urlString);
-            String path = url.getPath();
-            return FilenameUtils.getBaseName(path);
-        } catch (MalformedURLException e) {
-            return FilenameUtils.getBaseName(urlString);
-        }
-    }
-
-    /**
-     * 获取文件扩展名
-     * @param urlString URL字符串
-     * @return 文件扩展名
-     */
-    public static String getExtensionFromUrl(String urlString) {
-        if (urlString == null || urlString.trim().isEmpty()) {
-            return null;
-        }
-
-        try {
-            URL url = new URL(urlString);
-            String path = url.getPath();
-            return FilenameUtils.getExtension(path);
-        } catch (MalformedURLException e) {
-            return FilenameUtils.getExtension(urlString);
-        }
-    }
-
-    /**
-     * 从URL或文件路径中获取扩展名
-     * @param urlOrPath URL字符串或文件路径
-     * @return 扩展名(不包含点号),如果没有扩展名则返回null
-     */
-    public static String getExtension(String urlOrPath) {
-        if (urlOrPath == null || urlOrPath.trim().isEmpty()) {
-            return null;
-        }
-
-        String fileName = getFileNameFromUrlOrPath(urlOrPath);
-        if (fileName == null || fileName.isEmpty()) {
-            return null;
-        }
-
-        // 查找最后一个点的位置
-        int lastDotIndex = fileName.lastIndexOf('.');
-
-        // 如果没有点,或者点在开头(隐藏文件),或者点在结尾,则没有扩展名
-        if (lastDotIndex <= 0 || lastDotIndex == fileName.length() - 1) {
-            return null;
-        }
-
-        return fileName.substring(lastDotIndex + 1).toLowerCase();
-    }
-
-    /**
-     * 从URL或文件路径中获取扩展名(包含点号)
-     * @param urlOrPath URL字符串或文件路径
-     * @return 扩展名(包含点号),如果没有扩展名则返回null
-     */
-    public static String getExtensionWithDot(String urlOrPath) {
-        String extension = getExtension(urlOrPath);
-        return extension != null ? "." + extension : null;
-    }
-
-    /**
-     * 检查文件是否具有指定的扩展名
-     * @param urlOrPath URL字符串或文件路径
-     * @param expectedExtension 期望的扩展名(可以带点号也可以不带)
-     * @return 是否匹配
-     */
-    public static boolean hasExtension(String urlOrPath, String expectedExtension) {
-        if (expectedExtension == null) {
-            return false;
-        }
-
-        String actualExtension = getExtension(urlOrPath);
-        if (actualExtension == null) {
-            return false;
-        }
-
-        // 处理期望扩展名可能带点号的情况
-        String cleanExpectedExtension = expectedExtension.startsWith(".") ?
-                expectedExtension.substring(1) : expectedExtension;
-
-        return actualExtension.equalsIgnoreCase(cleanExpectedExtension);
-    }
-
-    /**
-     * 检查文件是否是图片类型
-     * @param urlOrPath URL字符串或文件路径
-     * @return 是否是图片文件
-     */
-    public static boolean isImageFile(String urlOrPath) {
-        String extension = getExtension(urlOrPath);
-        if (extension == null) {
-            return false;
-        }
-
-        String[] imageExtensions = {"jpg", "jpeg", "png", "gif", "bmp", "webp", "svg", "ico"};
-        for (String imgExt : imageExtensions) {
-            if (extension.equalsIgnoreCase(imgExt)) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /**
-     * 检查文件是否是文档类型
-     * @param urlOrPath URL字符串或文件路径
-     * @return 是否是文档文件
-     */
-    public static boolean isDocumentFile(String urlOrPath) {
-        String extension = getExtension(urlOrPath);
-        if (extension == null) {
-            return false;
-        }
-
-        String[] docExtensions = {"pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "txt", "rtf"};
-        for (String docExt : docExtensions) {
-            if (extension.equalsIgnoreCase(docExt)) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /**
-     * 从URL或路径中提取文件名的辅助方法
-     */
-    private static String getFileNameFromUrlOrPath(String urlOrPath) {
-        try {
-            java.net.URL url = new java.net.URL(urlOrPath);
-            String path = url.getPath();
-
-            // 处理查询参数,移除?后面的内容
-            int queryIndex = path.indexOf('?');
-            if (queryIndex > 0) {
-                path = path.substring(0, queryIndex);
-            }
-
-            if (path.endsWith("/")) {
-                path = path.substring(0, path.length() - 1);
-            }
-
-            int lastSlashIndex = path.lastIndexOf('/');
-            return lastSlashIndex >= 0 ? path.substring(lastSlashIndex + 1) : path;
-
-        } catch (java.net.MalformedURLException e) {
-            // 作为普通路径处理
-            String path = urlOrPath.trim();
-
-            // 处理查询参数
-            int queryIndex = path.indexOf('?');
-            if (queryIndex > 0) {
-                path = path.substring(0, queryIndex);
-            }
-
-            if (path.endsWith("/") || path.endsWith("\\")) {
-                path = path.substring(0, path.length() - 1);
-            }
-
-            int lastSlashIndex = Math.max(path.lastIndexOf('/'), path.lastIndexOf('\\'));
-            return lastSlashIndex >= 0 ? path.substring(lastSlashIndex + 1) : path;
-        }
-    }
-}

+ 0 - 155
fs-company-app/src/main/java/com/fs/app/controller/FsUserHealthDataController.java

@@ -1,155 +0,0 @@
-package com.fs.app.controller;
-
-import com.alibaba.fastjson.JSON;
-import com.fs.app.annotation.Login;
-import com.fs.common.core.domain.R;
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.StringUtils;
-import com.fs.his.config.HealthIndicatorConfig;
-import com.fs.his.domain.FsUserHealthData;
-import com.fs.his.service.IFsUserHealthDataService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 用户身体检测数据Controller
- *
- * @author fs
- * @date 2025-08-27
- */
-@RestController
-@RequestMapping("/app/fs/health/data")
-@Api(tags = "用户身体检测数据血糖,尿酸,血压等")
-public class FsUserHealthDataController extends AppBaseController {
-    @Autowired
-    private IFsUserHealthDataService fsUserHealthDataService;
-
-
-    /**
-     * 查询用户身体检测数据列表
-     */
-    @Login
-    @GetMapping("/list")
-    @ApiOperation("获取用户列表信息")
-    public R list(FsUserHealthData fsUserHealthData,
-                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
-                  @RequestParam(required = false, defaultValue = "1000") Integer pageSize
-    ) {
-        return R.ok(fsUserHealthDataService.selectFsUserHealthDataListInfo(fsUserHealthData, pageNum, pageSize));
-    }
-
-
-    /**
-     * 查询用户身体检测数据列表 最新数据  如果查询时间为周或者月的话 每天只返回最新的数据
-     */
-    @Login
-    @GetMapping("/latest/list")
-    @ApiOperation("获取用户列表信息")
-    public R listByLatest(FsUserHealthData fsUserHealthData,
-                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
-                  @RequestParam(required = false, defaultValue = "1000") Integer pageSize
-    ) {
-        return R.ok(fsUserHealthDataService.selectFsUserHealthDataListInfoLatest(fsUserHealthData, pageNum, pageSize));
-    }
-
-    /**
-     * 根据检测类型获取 检测指标
-     */
-    @Login
-    @GetMapping("/flag")
-    @ApiOperation(" 根据检测类型获取 检测指标")
-    public R getInfo(@RequestParam("measurementType") Integer measurementType) {
-        // 获取检测指标 (0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI)
-        Map<String, Object> data = new HashMap<>();
-        // 血糖 尿酸 需要
-        HealthIndicatorConfig healthIndicatorConfig = fsUserHealthDataService.parseHealthIndicator();
-        if (measurementType == 2) { // 血糖
-            if (healthIndicatorConfig != null) {
-                String[] key = {"fasting", "post1Hour", "post2Hour"}; // 正常 餐后1小时 餐后2小时
-                for (int i = 0; i < key.length; i++) {
-                    String value = fsUserHealthDataService.getHealthIndicatorValue(healthIndicatorConfig, "bloodGlucose", key[i], "normal");
-                    // value json串转Map对象
-                    data.put(key[i], value);
-                }
-            }
-        } else if (measurementType == 4) {
-            String[] key = new String[]{"male", "female"};
-            for (int i = 0; i < key.length; i++) {
-                String value = fsUserHealthDataService.getHealthIndicatorValue(healthIndicatorConfig, "uricAcid", key[i], "normal");
-                data.put(key[i], value);
-            }
-        }
-        return R.ok().put("data", data);
-    }
-
-
-    /**
-     * 根据用户ID 查询用户身体检测最新数据
-     */
-    @Login
-    @GetMapping("/latest/info")
-    @ApiOperation("根据用户ID 获取用户身体检测最新数据")
-    public R getInfo(@RequestParam("userId") Long userId, @RequestParam("measurementType") Integer measurementType) {
-        FsUserHealthData fsUserHealthData = new FsUserHealthData();
-        fsUserHealthData.setUserId(userId);
-        fsUserHealthData.setMeasurementType(measurementType);
-        fsUserHealthData = fsUserHealthDataService.selectFsUserHealthDataByUserId(fsUserHealthData);
-        return R.ok().put("data", fsUserHealthData);
-    }
-
-    /**
-     * 根据ID 查询用户身体检测最新数据
-     */
-    @Login
-    @GetMapping("/info")
-    @ApiOperation("根据ID 获取用户身体检测最新数据")
-    public R getInfoById(@RequestParam("id") Long id) {
-        FsUserHealthData fsUserHealthData = fsUserHealthDataService.selectFsUserHealthDataById(id);
-        return R.ok().put("data", fsUserHealthData);
-    }
-
-    /**
-     * 新增用户身体检测数据
-     */
-    @Login
-    @PostMapping("/add")
-    @ApiOperation("新增用户身体检测数据")
-    public R add(@RequestBody FsUserHealthData fsUserHealthData) {
-        // 登记检测数据信息
-        fsUserHealthDataService.addHealthData(fsUserHealthData);
-        return R.ok();
-    }
-
-    /**
-     * 修改用户身体检测数据
-     */
-    @Login
-    @PostMapping("/update")
-    @ApiOperation("修改用户身体检测数据")
-    public R edit(@RequestBody FsUserHealthData fsUserHealthData) {
-        // 修改检测数据信息
-        fsUserHealthDataService.updateFsUserHealthDataAndLevel(fsUserHealthData);
-        return R.ok();
-    }
-
-    /**
-     * 删除用户身体检测数据
-     */
-    @Login
-    @GetMapping("/delete")
-    @ApiOperation("删除用户身体检测数据")
-    public R remove(@RequestParam Long id) {
-        if (fsUserHealthDataService.deleteFsUserHealthDataById(id) <= 0) {
-            return R.error("用户身体检测数据删除失败");
-        }
-        return R.ok();
-    }
-}

+ 0 - 139
fs-company-app/src/main/java/com/fs/app/controller/FsUserHealthProfileController.java

@@ -1,139 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.core.domain.R;
-import com.fs.common.utils.DateUtils;
-import com.fs.his.domain.FsUserHealthData;
-import com.fs.his.domain.FsUserHealthProfile;
-import com.fs.his.domain.FsUserInfo;
-import com.fs.his.dto.FsUserHealthInfoDTO;
-import com.fs.his.service.IFsUserHealthDataService;
-import com.fs.his.service.IFsUserHealthProfileService;
-import com.fs.his.service.IFsUserInfoService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * 用户健康档案Controller
- *
- * @author fs
- * @date 2025-08-27
- */
-@RestController
-@RequestMapping("/app/fs/health/profile")
-@Api(tags = "用户健康档案")
-public class FsUserHealthProfileController extends AppBaseController {
-    @Autowired
-    private IFsUserHealthProfileService fsUserHealthProfileService;
-    @Autowired
-    private IFsUserHealthDataService fsUserHealthDataService;
-    @Autowired
-    private IFsUserInfoService fsUserInfoService;
-
-
-    /**
-     * 获取用户健康档案详细信息
-     */
-    @Login
-    @GetMapping(value = "/info")
-    @ApiOperation("获取用户健康档案详细信息")
-    public R getInfo(@RequestParam("userId") Long userId) {
-        FsUserHealthProfile profile = fsUserHealthProfileService.selectFsUserHealthProfileByUserId(userId);
-        return R.ok().put("data", profile);
-    }
-
-
-    /**
-     * 获取用户健康档案主页信息
-     */
-    @Login
-    @GetMapping(value = "/home/info")
-    @ApiOperation("获取用户健康档案主页信息")
-    public R getHomeInfo(@RequestParam("userId") Long userId) {
-        FsUserHealthInfoDTO infoDTO = new FsUserHealthInfoDTO();
-        // 查询用户信息
-        FsUserInfo userInfo = fsUserInfoService.selectFsUserInfoById(userId);
-        if (userInfo == null) {
-            return R.error("用户不存在");
-        }
-        infoDTO.setUserId(userId);
-        infoDTO.setUsername(userInfo.getUsername());
-        infoDTO.setAvatar(userInfo.getAvatar());
-        infoDTO.setSex(userInfo.getSex());
-        // 根据生日获取年龄
-        if(userInfo.getBirthdate()!=null){
-            infoDTO.setAge(DateUtils.getAge(userInfo.getBirthdate()));
-        }
-
-        // 查询各指标 数据 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI)
-        FsUserHealthData query = new FsUserHealthData();
-        query.setUserId(userId);
-        Map<String, Object> dataMap = new HashMap<>();
-        for (int i = 0; i < 6; i++) {
-            query.setMeasurementType(i);
-            FsUserHealthData healthData = fsUserHealthDataService.selectFsUserHealthDataByUserId(query);
-            dataMap.put(String.valueOf(i), healthData);
-        }
-        infoDTO.setDataMap(dataMap);
-
-        // 查询健康档案
-        FsUserHealthProfile profile = fsUserHealthProfileService.selectFsUserHealthProfileByUserId(userId);
-        if (profile != null) {
-            infoDTO.setSymptomHistory(profile.getSymptomHistory());
-            infoDTO.setOtherMedicalHistory(profile.getOtherMedicalHistory());
-        }
-
-        return R.ok().put("data", infoDTO);
-    }
-
-
-    /**
-     * 新增用户健康档案
-     */
-    @Login
-    @PostMapping("/add")
-    @ApiOperation("新增用户健康档案")
-    @Transactional
-    public R add(@RequestBody FsUserHealthProfile fsUserHealthProfile) {
-
-        if (fsUserHealthProfileService.insertFsUserHealthProfile(fsUserHealthProfile) <= 0) {
-            return R.error("新增用户健康档案失败");
-        }
-
-        // 登记身体检测数据 FsUserHealthData
-        fsUserHealthDataService.initHealthData(fsUserHealthProfile);
-
-        return R.ok();
-    }
-
-    /**
-     * 修改用户健康档案
-     */
-    @Login
-    @PostMapping("/update")
-    @ApiOperation("修改用户健康档案")
-    public R edit(@RequestBody FsUserHealthProfile fsUserHealthProfile) {
-        if (fsUserHealthProfileService.updateFsUserHealthProfile(fsUserHealthProfile) <= 0) {
-            return R.error("用户健康档案修改失败");
-        }
-        return R.ok();
-    }
-
-    /**
-     * 删除用户健康档案
-     */
-    @Login
-    @GetMapping("/delete")
-    public R remove(@RequestParam Long userId) {
-        if (fsUserHealthProfileService.deleteFsUserHealthProfileByUserId(userId) <= 0) {
-            return R.error("用户健康档案删除失败");
-        }
-        return R.ok();
-    }
-}

+ 0 - 111
fs-company-app/src/main/java/com/fs/app/controller/FsUserInfoController.java

@@ -1,111 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.core.domain.R;
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.StringUtils;
-import com.fs.his.domain.FsUser;
-import com.fs.his.domain.FsUserInfo;
-import com.fs.his.service.IFsUserInfoService;
-import com.fs.his.service.IFsUserService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 用户信息Controller
- *
- * @author fs
- * @date 2025-08-25
- */
-@RestController
-@RequestMapping("/app/fs/userinfo")
-@Api(tags = "用户信息")
-public class FsUserInfoController extends AppBaseController {
-    @Autowired
-    private IFsUserInfoService fsUserInfoService;
-
-    @Autowired
-    private IFsUserService fsUserService;
-
-    /**
-     * 查询用户信息列表
-     */
-    @Login
-    @GetMapping("/list")
-    @ApiOperation("获取用户列表信息")
-    public R list(FsUserInfo fsUserInfo,
-                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
-                  @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
-
-        // companyUserId 传空的查询所有
-        PageHelper.startPage(pageNum, pageSize);
-        List<FsUserInfo> list = fsUserInfoService.selectFsUserInfoList(fsUserInfo.getCompanyUserId());
-        return R.ok().put("data", new PageInfo<>(list));
-    }
-
-
-    /**
-     * 获取用户信息详细信息
-     */
-    @Login
-    @GetMapping(value = "/info")
-    @ApiOperation("获取用户详情信息")
-    public R getInfo(@RequestParam("userId") Long userId) {
-        FsUserInfo fsUserInfo = fsUserInfoService.selectFsUserInfoById(userId);
-        if (fsUserInfo == null) {
-            return R.error("用户不存在");
-        } else if(fsUserInfo.getIsDel()!=0){
-            return R.error("用户信息已删除");
-        }else{
-            if(fsUserInfo.getBirthdate()!=null){
-                fsUserInfo.setAge(DateUtils.getAge(fsUserInfo.getBirthdate()));
-            }
-        }
-        return R.ok().put("data", fsUserInfo);
-    }
-
-
-    /**
-     * 新增用户信息
-     */
-    @Login
-    @PostMapping("/add")
-    @ApiOperation("新增用户信息")
-    public R add(@RequestBody FsUserInfo fsUserInfo) {
-        fsUserInfoService.add(fsUserInfo);
-        return R.ok();
-    }
-
-    /**
-     * 修改用户信息
-     */
-    @Login
-    @PostMapping("/update")
-    @ApiOperation("修改用户信息")
-    public R edit(@RequestBody FsUserInfo fsUserInfo) {
-        fsUserInfoService.updateFsUserInfo(fsUserInfo);
-        return R.ok();
-    }
-
-    /**
-     * 删除用户信息
-     */
-    @Login
-    @GetMapping("/delete")
-    @ApiOperation("删除用户信息")
-    @Transactional
-    public R remove(@RequestParam("userId") Long userId) {
-        // 更新fsUser表状态
-        if (fsUserInfoService.deleteFsUserInfoByUserId(userId) <= 0) {
-            return R.error("用户信息删除原表失败");
-        }
-        return R.ok();
-    }
-}

+ 0 - 96
fs-company-app/src/main/java/com/fs/app/controller/FsUserPayCompetitorsRecordController.java

@@ -1,96 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.core.domain.R;
-import com.fs.his.domain.FsUserPayCompetitorsRecord;
-import com.fs.his.service.IFsUserPayCompetitorsRecordService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 用户购买竞品信息记录Controller
- *
- * @author fs
- * @date 2025-08-26
- */
-@RestController
-@RequestMapping("/app/fs/rival/products")
-public class FsUserPayCompetitorsRecordController extends AppBaseController {
-    @Autowired
-    private IFsUserPayCompetitorsRecordService fsUserPayCompetitorsRecordService;
-
-    /**
-     * 查询用户购买竞品信息记录列表
-     */
-    @Login
-    @GetMapping("/list")
-    @ApiOperation("获取用户购买竞品信息记录列表")
-    public R list(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord,
-                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
-                  @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
-        // 校验userId不能为空
-        if (fsUserPayCompetitorsRecord.getUserId() == null) {
-            return R.error("用户ID不能为空");
-        }
-
-        PageHelper.startPage(pageNum, pageSize);
-        List<FsUserPayCompetitorsRecord> list = fsUserPayCompetitorsRecordService.selectFsUserPayCompetitorsRecordList(fsUserPayCompetitorsRecord);
-        return R.ok().put("data", new PageInfo<>(list));
-    }
-
-
-    /**
-     * 获取用户购买竞品信息记录详细信息
-     */
-    @Login
-    @GetMapping(value = "/info")
-    @ApiOperation("获取用户购买竞品信息记录详细信息")
-    public R getInfo(@RequestParam("id") Long id) {
-        FsUserPayCompetitorsRecord record = fsUserPayCompetitorsRecordService.selectFsUserPayCompetitorsRecordById(id);
-        return R.ok().put("data", record);
-    }
-
-    /**
-     * 新增用户购买竞品信息记录
-     */
-    @Login
-    @PostMapping("/add")
-    @ApiOperation("新增用户购买竞品信息记录")
-    public R add(@RequestBody FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord) {
-        if (fsUserPayCompetitorsRecordService.insertFsUserPayCompetitorsRecord(fsUserPayCompetitorsRecord) <= 0) {
-            return R.error("用户购买竞品信息记录登记失败");
-        }
-        return R.ok();
-    }
-
-    /**
-     * 修改用户购买竞品信息记录
-     */
-    @Login
-    @PostMapping("/update")
-    @ApiOperation("修改用户购买竞品信息记录")
-    public R edit(@RequestBody FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord) {
-        if (fsUserPayCompetitorsRecordService.updateFsUserPayCompetitorsRecord(fsUserPayCompetitorsRecord) <= 0) {
-            return R.error("用户购买竞品信息记录修改失败");
-        }
-        return R.ok();
-    }
-
-    /**
-     * 删除用户购买竞品信息记录
-     */
-    @Login
-    @GetMapping("/delete")
-    @ApiOperation("删除用户购买竞品信息记录")
-    public R remove(@RequestParam("id") Long id) {
-        if (fsUserPayCompetitorsRecordService.deleteFsUserPayCompetitorsRecordById(id) <= 0) {
-            return R.error("用户购买竞品信息记录删除失败");
-        }
-        return R.ok();
-    }
-}

+ 0 - 96
fs-company-app/src/main/java/com/fs/app/controller/FsUserPayRecordController.java

@@ -1,96 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.core.domain.R;
-import com.fs.his.domain.FsUserPayRecord;
-import com.fs.his.service.IFsUserPayRecordService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 用户购买服务信息记录Controller
- *
- * @author fs
- * @date 2025-08-26
- */
-@RestController
-@RequestMapping("/app/fs/pay/products")
-public class FsUserPayRecordController extends AppBaseController {
-    @Autowired
-    private IFsUserPayRecordService fsUserPayRecordService;
-
-    /**
-     * 查询用户购买服务信息记录列表
-     */
-    @Login
-    @GetMapping("/list")
-    @ApiOperation("获取用户购买服务信息记录列表")
-    public R list(FsUserPayRecord fsUserPayRecord,
-                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
-                  @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
-
-        if (fsUserPayRecord.getUserId() == null) {
-            return R.error("用户ID不能为空");
-        }
-
-        PageHelper.startPage(pageNum, pageSize);
-        List<FsUserPayRecord> list = fsUserPayRecordService.selectFsUserPayRecordList(fsUserPayRecord);
-        return R.ok().put("data", new PageInfo<>(list));
-    }
-
-
-    /**
-     * 获取用户购买服务信息记录详细信息
-     */
-    @Login
-    @GetMapping(value = "/info")
-    @ApiOperation("获取用户购买服务信息记录详细信息")
-    public R getInfo(@RequestParam("id") Long id) {
-        FsUserPayRecord fsUserPayRecord = fsUserPayRecordService.selectFsUserPayRecordById(id);
-        return R.ok().put("data", fsUserPayRecord);
-    }
-
-    /**
-     * 新增用户购买服务信息记录
-     */
-    @Login
-    @PostMapping("/add")
-    @ApiOperation("新增用户购买服务信息记录")
-    public R add(@RequestBody FsUserPayRecord fsUserPayRecord) {
-        if (fsUserPayRecordService.insertFsUserPayRecord(fsUserPayRecord) <= 0) {
-            return R.error("用户购买服务信息记录登记失败");
-        }
-        return R.ok();
-    }
-
-    /**
-     * 修改用户购买服务信息记录
-     */
-    @Login
-    @PostMapping("/update")
-    @ApiOperation("修改用户购买服务信息记录")
-    public R edit(@RequestBody FsUserPayRecord fsUserPayRecord) {
-        if (fsUserPayRecordService.updateFsUserPayRecord(fsUserPayRecord) <= 0) {
-            return R.error("用户购买服务信息记录修改失败");
-        }
-        return R.ok();
-    }
-
-    /**
-     * 删除用户购买服务信息记录
-     */
-    @Login
-    @GetMapping("/delete")
-    @ApiOperation("删除用户购买服务信息记录")
-    public R remove(@RequestParam("id") Long id) {
-        if (fsUserPayRecordService.deleteFsUserPayRecordById(id) <= 0) {
-            return R.error("用户购买服务信息记录删除失败");
-        }
-        return R.ok();
-    }
-}

+ 0 - 13
fs-company-app/src/main/java/com/fs/app/exception/FSExceptionHandler.java

@@ -5,7 +5,6 @@ package com.fs.app.exception;
 
 import com.fs.common.core.domain.R;
 import com.fs.common.exception.CustomException;
-import com.fs.common.exception.ServiceException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.dao.DuplicateKeyException;
@@ -37,18 +36,6 @@ public class FSExceptionHandler {
 		return r;
 	}
 
-	/**
-	 * 处理自定义异常
-	 */
-	@ExceptionHandler(ServiceException.class)
-	public R handleRRException(ServiceException e){
-		R r = new R();
-		r.put("code", e.getCode());
-		r.put("msg", e.getMessage());
-
-		return r;
-	}
-
 	@ExceptionHandler(NoHandlerFoundException.class)
 	public R handlerNoFoundException(Exception e) {
 		logger.error(e.getMessage(), e);

+ 1 - 1
fs-company/src/main/java/com/fs/hisStore/controller/FsStoreProductScrmController.java

@@ -37,7 +37,7 @@ public class FsStoreProductScrmController extends BaseController
     /**
      * 查询商品列表
      */
-//    @PreAuthorize("@ss.hasPermi('store:storeProduct:list')")
+    @PreAuthorize("@ss.hasPermi('store:storeProduct:list')")
     @GetMapping("/list")
     public TableDataInfo list(FsStoreProductScrm fsStoreProduct)
     {

+ 3 - 0
fs-framework/src/main/java/com/fs/framework/config/LogInterceptor.java

@@ -1,5 +1,7 @@
 package com.fs.framework.config;
 
+
+
 import org.slf4j.MDC;
 import org.springframework.stereotype.Component;
 import org.springframework.util.StringUtils;
@@ -9,6 +11,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.util.UUID;
 
+
 /**
  * @description: 日志拦截器
  * @author: xdd

+ 0 - 65
fs-service/src/main/java/com/fs/complaint/domain/FsComplaint.java

@@ -1,65 +0,0 @@
-package com.fs.complaint.domain;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.time.LocalDateTime;
-
-/**
- * 投诉表实体类
- */
-@Data
-@AllArgsConstructor
-@NoArgsConstructor
-public class FsComplaint {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 投诉单号
-     */
-    private String complaintNo;
-
-    /**
-     * 投诉分类ID
-     */
-    private Long categoryId;
-    /**
-     * 投诉分类名称
-     */
-    private String categoryName;
-
-    /**
-     * 投诉内容
-     */
-    private String content;
-
-    /**
-     * 联系手机号
-     */
-    private String contactPhone;
-
-    /**
-     * 联系邮箱
-     */
-    private String contactEmail;
-
-    /**
-     * 状态:1-待处理,2-处理中,3-已完成,4-已关闭
-     */
-    private Integer status;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    private LocalDateTime updateTime;
-}

+ 0 - 51
fs-service/src/main/java/com/fs/complaint/domain/FsComplaintAttachment.java

@@ -1,51 +0,0 @@
-package com.fs.complaint.domain;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.time.LocalDateTime;
-
-/**
- * 投诉附件表实体类
- */
-@Data
-@AllArgsConstructor
-@NoArgsConstructor
-public class FsComplaintAttachment {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 投诉ID
-     */
-    private Long complaintId;
-
-    /**
-     * 文件名
-     */
-    private String fileName;
-
-    /**
-     * 文件路径
-     */
-    private String filePath;
-
-    /**
-     * 文件大小(字节)
-     */
-    private Long fileSize;
-
-    /**
-     * 文件类型
-     */
-    private String fileType;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-}

+ 0 - 55
fs-service/src/main/java/com/fs/complaint/domain/FsComplaintCategory.java

@@ -1,55 +0,0 @@
-package com.fs.complaint.domain;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-/**
- * 投诉分类表实体类
- */
-@Data
-@AllArgsConstructor
-@NoArgsConstructor
-public class FsComplaintCategory implements Serializable {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 分类名称
-     */
-    private String categoryName;
-
-    private Long userId;
-    private Long companyUserId;
-
-    /**
-     * 分类编码
-     */
-    private String categoryCode;
-
-    /**
-     * 排序
-     */
-    private Integer sortOrder;
-
-    /**
-     * 状态:1-启用,0-禁用
-     */
-    private Integer status;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    private LocalDateTime updateTime;
-}

+ 0 - 20
fs-service/src/main/java/com/fs/complaint/dto/ComplaintQueryDTO.java

@@ -1,20 +0,0 @@
-package com.fs.complaint.dto;
-
-import lombok.Data;
-
-/**
- * 投诉查询条件参数
- */
-@Data
-public class ComplaintQueryDTO {
-
-    private String complaintNo;
-    private Long categoryId;
-    private String categoryName;
-    private Integer status;
-    private String contactPhone;
-    private String startTime;
-    private String endTime;
-    private Integer pageNum = 1;
-    private Integer pageSize = 10;
-}

+ 0 - 29
fs-service/src/main/java/com/fs/complaint/dto/SubmitComplaintDTO.java

@@ -1,29 +0,0 @@
-package com.fs.complaint.dto;
-
-import lombok.Data;
-
-import java.io.Serializable;
-import java.util.List;
-
-@Data
-public class SubmitComplaintDTO implements Serializable {
-    /**
-     * 投诉类型
-     */
-    private Long type;
-
-    /**
-     * 投诉类型
-     */
-    private String content;
-
-    /**
-     * 凭证列表
-     */
-    private List<String> url;
-
-    /**
-     * 联系方式
-     */
-    private String contact;
-}

+ 0 - 16
fs-service/src/main/java/com/fs/complaint/dto/UpdateComplaintDTO.java

@@ -1,16 +0,0 @@
-package com.fs.complaint.dto;
-
-import lombok.Data;
-
-/**
- * 更新投诉请求参数
- */
-@Data
-public class UpdateComplaintDTO {
-
-    private Long categoryId;
-    private String content;
-    private String contactPhone;
-    private String contactEmail;
-    private Integer status;
-}

+ 0 - 59
fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintAttachmentMapper.java

@@ -1,59 +0,0 @@
-package com.fs.complaint.mapper;
-
-import com.fs.complaint.domain.FsComplaintAttachment;
-import org.apache.ibatis.annotations.*;
-
-import java.util.List;
-
-/**
- * 投诉附件表数据访问层
- */
-@Mapper
-public interface FsComplaintAttachmentMapper {
-
-    /**
-     * 根据ID查询附件信息
-     */
-    @Select("SELECT * FROM fs_complaint_attachment WHERE id = #{id}")
-    FsComplaintAttachment selectById(Long id);
-
-    /**
-     * 根据投诉ID查询附件列表
-     */
-    @Select("SELECT * FROM fs_complaint_attachment WHERE complaint_id = #{complaintId}")
-    List<FsComplaintAttachment> selectByComplaintId(Long complaintId);
-
-    /**
-     * 插入附件信息
-     */
-    @Insert("INSERT INTO fs_complaint_attachment(complaint_id, file_name, file_path, file_size, file_type) " +
-            "VALUES(#{complaintId}, #{fileName}, #{filePath}, #{fileSize}, #{fileType})")
-    @Options(useGeneratedKeys = true, keyProperty = "id")
-    int insert(FsComplaintAttachment attachment);
-
-    /**
-     * 根据ID删除附件信息
-     */
-    @Update("DELETE FROM fs_complaint_attachment WHERE id = #{id}")
-    int deleteById(Long id);
-
-    /**
-     * 根据投诉ID删除附件信息
-     */
-    @Update("DELETE FROM fs_complaint_attachment WHERE complaint_id = #{complaintId}")
-    int deleteByComplaintId(Long complaintId);
-
-
-    /**
-     * 批量插入附件信息
-     */
-    @Insert("<script>" +
-            "INSERT INTO fs_complaint_attachment(complaint_id, file_name, file_path, file_size, file_type) VALUES " +
-            "<foreach collection='list' item='item' separator=','>" +
-            "(#{item.complaintId}, #{item.fileName}, #{item.filePath}, #{item.fileSize}, #{item.fileType})" +
-            "</foreach>" +
-            "</script>")
-    @Options(useGeneratedKeys = true, keyProperty = "id")
-    int batchInsert(@Param("list") List<FsComplaintAttachment> attachmentList);
-
-}

+ 0 - 66
fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintCategoryMapper.java

@@ -1,66 +0,0 @@
-package com.fs.complaint.mapper;
-
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-import org.apache.ibatis.annotations.*;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * 投诉分类表数据访问层
- */
-@Mapper
-public interface FsComplaintCategoryMapper {
-
-    /**
-     * 根据ID查询分类信息
-     */
-    @Select("SELECT * FROM fs_complaint_category WHERE id = #{id}")
-    FsComplaintCategory selectById(Long id);
-
-    /**
-     * 查询所有启用的分类列表
-     */
-    @Select("SELECT * FROM fs_complaint_category WHERE status = 1 ORDER BY sort_order ASC")
-    List<FsComplaintCategory> selectAllEnabled();
-
-    /**
-     * 查询所有分类列表
-     */
-    @Select("SELECT * FROM fs_complaint_category where status=1 ORDER BY sort_order ASC")
-    List<FsComplaintCategory> selectAll();
-
-    @Select("SELECT id,category_name FROM fs_complaint_category where status=1 ORDER BY sort_order ASC")
-    @MapKey("id")
-    Map<Long,FsComplaintCategory> selectAllMap();
-
-    /**
-     * 插入分类信息
-     */
-    @Insert("INSERT INTO fs_complaint_category(category_name, category_code, sort_order, status) " +
-            "VALUES(#{categoryName}, #{categoryCode}, #{sortOrder}, #{status})")
-    @Options(useGeneratedKeys = true, keyProperty = "id")
-    int insert(FsComplaintCategory category);
-
-    /**
-     * 更新分类信息
-     */
-
-    int updateById(FsComplaintCategory category);
-
-    /**
-     * 根据ID删除分类信息
-     */
-    @Update("DELETE FROM fs_complaint_category WHERE id = #{id}")
-    int deleteById(Long id);
-
-    List<FsComplaintCategoryListVO> selectFsComplaintCategoryListVO(FsComplaintCategoryParam param);
-
-
-    @Select("select * from fs_complaint_category where id=#{id}")
-    FsComplaintCategory selectFsComplaintCategoryById(@Param("id") Long id);
-
-
-}

+ 0 - 135
fs-service/src/main/java/com/fs/complaint/mapper/FsComplaintMapper.java

@@ -1,135 +0,0 @@
-package com.fs.complaint.mapper;
-
-import com.fs.complaint.domain.FsComplaint;
-import com.fs.complaint.dto.ComplaintQueryDTO;
-import org.apache.ibatis.annotations.*;
-
-import java.util.List;
-
-/**
- * 投诉表数据访问层
- */
-@Mapper
-public interface FsComplaintMapper {
-
-    /**
-     * 根据ID查询投诉信息
-     */
-    @Select("SELECT * FROM fs_complaint WHERE id = #{id}")
-    FsComplaint selectById(Long id);
-
-    /**
-     * 根据投诉单号查询投诉信息
-     */
-    @Select("SELECT * FROM fs_complaint WHERE complaint_no = #{complaintNo}")
-    FsComplaint selectByComplaintNo(String complaintNo);
-
-    /**
-     * 条件查询投诉总数
-     */
-    @SelectProvider(type = ComplaintSqlProvider.class, method = "countByCondition")
-    int countByCondition(ComplaintQueryDTO queryDTO);
-
-    /**
-     * 条件分页查询投诉列表
-     */
-    @SelectProvider(type = ComplaintSqlProvider.class, method = "selectByCondition")
-    List<FsComplaint> selectByCondition(ComplaintQueryDTO queryDTO);
-
-    /**
-     * 插入投诉信息
-     */
-    @Insert("INSERT INTO fs_complaint(complaint_no, category_id, category_name, content, contact_phone, contact_email, status, create_time, update_time) " +
-            "VALUES(#{complaintNo}, #{categoryId}, #{categoryName}, #{content}, #{contactPhone}, #{contactEmail}, #{status}, #{createTime}, #{updateTime})")
-    @Options(useGeneratedKeys = true, keyProperty = "id")
-    int insert(FsComplaint complaint);
-
-    /**
-     * 更新投诉信息
-     */
-    @UpdateProvider(type = ComplaintSqlProvider.class, method = "updateSelective")
-    int updateSelective(FsComplaint complaint);
-
-    /**
-     * 根据ID删除投诉信息
-     */
-    @Delete("DELETE FROM fs_complaint WHERE id = #{id}")
-    int deleteById(Long id);
-
-    /**
-     * SQL构建器
-     */
-    class ComplaintSqlProvider {
-
-        public String countByCondition(ComplaintQueryDTO queryDTO) {
-            return buildConditionSql("SELECT COUNT(*) FROM fs_complaint", queryDTO, false);
-        }
-
-        public String selectByCondition(ComplaintQueryDTO queryDTO) {
-            String sql = buildConditionSql("SELECT * FROM fs_complaint", queryDTO, true);
-            int offset = (queryDTO.getPageNum() - 1) * queryDTO.getPageSize();
-            return sql + " LIMIT " + offset + ", " + queryDTO.getPageSize();
-        }
-
-        public String updateSelective(FsComplaint complaint) {
-            StringBuilder sql = new StringBuilder("UPDATE fs_complaint SET update_time = #{updateTime}");
-
-            if (complaint.getCategoryId() != null) {
-                sql.append(", category_id = #{categoryId}");
-            }
-            if (complaint.getCategoryName() != null) {
-                sql.append(", category_name = #{categoryName}");
-            }
-            if (complaint.getContent() != null) {
-                sql.append(", content = #{content}");
-            }
-            if (complaint.getContactPhone() != null) {
-                sql.append(", contact_phone = #{contactPhone}");
-            }
-            if (complaint.getContactEmail() != null) {
-                sql.append(", contact_email = #{contactEmail}");
-            }
-            if (complaint.getStatus() != null) {
-                sql.append(", status = #{status}");
-            }
-
-            sql.append(" WHERE id = #{id}");
-            return sql.toString();
-        }
-
-        private String buildConditionSql(String baseSql, ComplaintQueryDTO queryDTO, boolean needOrder) {
-            StringBuilder sql = new StringBuilder(baseSql);
-            StringBuilder where = new StringBuilder(" WHERE 1=1");
-
-            if (queryDTO.getComplaintNo() != null && !queryDTO.getComplaintNo().trim().isEmpty()) {
-                where.append(" AND complaint_no LIKE CONCAT('%', #{complaintNo}, '%')");
-            }
-            if (queryDTO.getCategoryId() != null) {
-                where.append(" AND category_id = #{categoryId}");
-            }
-            if (queryDTO.getCategoryName() != null && !queryDTO.getCategoryName().trim().isEmpty()) {
-                where.append(" AND category_name LIKE CONCAT('%', #{categoryName}, '%')");
-            }
-            if (queryDTO.getStatus() != null) {
-                where.append(" AND status = #{status}");
-            }
-            if (queryDTO.getContactPhone() != null && !queryDTO.getContactPhone().trim().isEmpty()) {
-                where.append(" AND contact_phone LIKE CONCAT('%', #{contactPhone}, '%')");
-            }
-            if (queryDTO.getStartTime() != null && !queryDTO.getStartTime().trim().isEmpty()) {
-                where.append(" AND create_time >= #{startTime}");
-            }
-            if (queryDTO.getEndTime() != null && !queryDTO.getEndTime().trim().isEmpty()) {
-                where.append(" AND create_time <= #{endTime}");
-            }
-
-            sql.append(where);
-
-            if (needOrder) {
-                sql.append(" ORDER BY create_time DESC");
-            }
-
-            return sql.toString();
-        }
-    }
-}

+ 0 - 28
fs-service/src/main/java/com/fs/complaint/param/FsComplaintCategoryParam.java

@@ -1,28 +0,0 @@
-package com.fs.complaint.param;
-
-import com.fs.common.core.domain.BaseEntity;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * 投诉分类查询参数
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsComplaintCategoryParam extends BaseEntity {
-
-    /**
-     * 分类名称
-     */
-    private String categoryName;
-
-    /**
-     * 分类编码
-     */
-    private String categoryCode;
-
-    /**
-     * 状态:1-启用,0-禁用
-     */
-    private Integer status;
-}

+ 0 - 52
fs-service/src/main/java/com/fs/complaint/service/FsComplaintCategoryService.java

@@ -1,52 +0,0 @@
-package com.fs.complaint.service;
-
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-
-import java.util.List;
-
-public interface FsComplaintCategoryService {
-    List<FsComplaintCategoryListVO> selectFsComplaintCategoryListVO(FsComplaintCategoryParam param);
-    /**
-     * 根据ID查询投诉分类
-     *
-     * @param id 投诉分类ID
-     * @return 投诉分类
-     */
-    FsComplaintCategory selectFsComplaintCategoryById(Long id);
-    /**
-     * 新增投诉分类
-     *
-     * @param fsComplaintCategory 投诉分类
-     * @return 结果
-     */
-    int insertFsComplaintCategory(FsComplaintCategory fsComplaintCategory);
-    /**
-     * 修改投诉分类
-     *
-     * @param fsComplaintCategory 投诉分类
-     * @return 结果
-     */
-    int updateFsComplaintCategory(FsComplaintCategory fsComplaintCategory);
-    /**
-     * 批量删除投诉分类
-     *
-     * @param ids 需要删除的投诉分类ID
-     * @return 结果
-     */
-    void deleteFsComplaintCategoryByIds(Long[] ids);
-    /**
-     * 修改投诉分类状态
-     *
-     * @param fsComplaintCategory 投诉分类
-     * @return 结果
-     */
-    int updateFsComplaintCategoryStatus(FsComplaintCategory fsComplaintCategory);
-
-    /**
-     * 查询所有分类
-     * @return List<FsComplaintCategory>
-     */
-    List<FsComplaintCategory> queryAllCategory();
-}

+ 0 - 43
fs-service/src/main/java/com/fs/complaint/service/FsComplaintService.java

@@ -1,43 +0,0 @@
-package com.fs.complaint.service;
-
-import cn.hutool.db.PageResult;
-import com.fs.complaint.domain.FsComplaint;
-import com.fs.complaint.dto.ComplaintQueryDTO;
-import com.fs.complaint.dto.SubmitComplaintDTO;
-import com.fs.complaint.dto.UpdateComplaintDTO;
-import com.fs.complaint.vo.ComplaintVO;
-
-import java.util.List;
-
-public interface FsComplaintService {
-
-    /**
-     * 提交投诉
-     */
-    void submitComplaint(SubmitComplaintDTO dto);
-
-    /**
-     * 根据ID查询投诉详情
-     */
-    ComplaintVO getComplaintById(Long id);
-
-    /**
-     * 根据投诉单号查询投诉详情
-     */
-    ComplaintVO getComplaintByNo(String complaintNo);
-
-    /**
-     * 分页查询投诉列表
-     */
-    List<FsComplaint> getComplaintPage(ComplaintQueryDTO queryDTO);
-
-    /**
-     * 更新投诉信息
-     */
-    void updateComplaint(Long id, UpdateComplaintDTO dto);
-
-    /**
-     * 删除投诉
-     */
-    void deleteComplaint(Long id);
-}

+ 0 - 68
fs-service/src/main/java/com/fs/complaint/service/impl/FsComplaintCategoryServiceImpl.java

@@ -1,68 +0,0 @@
-package com.fs.complaint.service.impl;
-
-import com.fs.common.exception.ServiceException;
-import com.fs.common.utils.StringUtils;
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.mapper.FsComplaintCategoryMapper;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.service.FsComplaintCategoryService;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-import com.tencentcloudapi.tiems.v20190416.models.Runtime;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.time.LocalDateTime;
-import java.util.Collections;
-import java.util.List;
-@Slf4j
-@Service
-public class FsComplaintCategoryServiceImpl implements FsComplaintCategoryService {
-    @Autowired
-    private FsComplaintCategoryMapper fsComplaintCategoryMapper;
-
-    @Override
-    public List<FsComplaintCategoryListVO> selectFsComplaintCategoryListVO(FsComplaintCategoryParam param) {
-        return fsComplaintCategoryMapper.selectFsComplaintCategoryListVO(param);
-    }
-
-    @Override
-    public FsComplaintCategory selectFsComplaintCategoryById(Long id) {
-        return fsComplaintCategoryMapper.selectFsComplaintCategoryById(id);
-    }
-
-    @Override
-    public int insertFsComplaintCategory(FsComplaintCategory fsComplaintCategory) {
-
-        fsComplaintCategory.setCreateTime(LocalDateTime.now());
-        fsComplaintCategory.setUpdateTime(LocalDateTime.now());
-        return fsComplaintCategoryMapper.insert(fsComplaintCategory);
-    }
-
-    @Override
-    public int updateFsComplaintCategory(FsComplaintCategory fsComplaintCategory) {
-
-        fsComplaintCategory.setUpdateTime(LocalDateTime.now());
-        return fsComplaintCategoryMapper.updateById(fsComplaintCategory);
-
-    }
-
-    @Override
-    public void deleteFsComplaintCategoryByIds(Long[] ids) {
-        for(Long id : ids) {
-            fsComplaintCategoryMapper.deleteById(id);
-        }
-    }
-
-    @Override
-    public int updateFsComplaintCategoryStatus(FsComplaintCategory fsComplaintCategory) {
-        fsComplaintCategory.setUpdateTime(LocalDateTime.now());
-        return fsComplaintCategoryMapper.updateById(fsComplaintCategory);
-    }
-
-    @Override
-    public List<FsComplaintCategory> queryAllCategory() {
-        return fsComplaintCategoryMapper.selectAll();
-    }
-
-}

+ 0 - 195
fs-service/src/main/java/com/fs/complaint/service/impl/FsComplaintServiceImpl.java

@@ -1,195 +0,0 @@
-package com.fs.complaint.service.impl;
-
-import cn.hutool.core.lang.Snowflake;
-import cn.hutool.core.util.IdUtil;
-import cn.hutool.db.PageResult;
-import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import com.fs.common.utils.FileNameExtractor;
-import com.fs.common.utils.bean.BeanUtils;
-import com.fs.complaint.domain.FsComplaint;
-import com.fs.complaint.domain.FsComplaintAttachment;
-import com.fs.complaint.domain.FsComplaintCategory;
-import com.fs.complaint.dto.ComplaintQueryDTO;
-import com.fs.complaint.dto.SubmitComplaintDTO;
-import com.fs.complaint.dto.UpdateComplaintDTO;
-import com.fs.complaint.mapper.FsComplaintAttachmentMapper;
-import com.fs.complaint.mapper.FsComplaintCategoryMapper;
-import com.fs.complaint.mapper.FsComplaintMapper;
-import com.fs.complaint.param.FsComplaintCategoryParam;
-import com.fs.complaint.service.FsComplaintCategoryService;
-import com.fs.complaint.service.FsComplaintService;
-import com.fs.complaint.vo.ComplaintVO;
-import com.fs.complaint.vo.FsComplaintCategoryListVO;
-import lombok.extern.slf4j.Slf4j;
-import org.bouncycastle.oer.its.etsi102941.Url;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Propagation;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.*;
-import java.util.stream.Collectors;
-
-@Slf4j
-@Service
-public class FsComplaintServiceImpl implements FsComplaintService {
-    @Autowired
-    private FsComplaintMapper fsComplaintMapper;
-    @Autowired
-    private FsComplaintAttachmentMapper fsComplaintAttachmentMapper;
-    @Autowired
-    private FsComplaintCategoryMapper fsComplaintCategoryMapper;
-
-    @Override
-    @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
-    public void submitComplaint(SubmitComplaintDTO dto) {
-        FsComplaint fsComplaint = new FsComplaint();
-        String complaintNo = IdUtil.getSnowflake(0, 0).nextIdStr();
-
-        fsComplaint.setComplaintNo(complaintNo);
-        fsComplaint.setCategoryId(dto.getType());
-        fsComplaint.setContent(dto.getContent());
-        fsComplaint.setContactPhone(dto.getContact());
-        fsComplaint.setCreateTime(LocalDateTime.now());
-        fsComplaint.setUpdateTime(LocalDateTime.now());
-        fsComplaint.setStatus(1);
-
-        fsComplaintMapper.insert(fsComplaint);
-        List<String> urls = dto.getUrl();
-
-        List<FsComplaintAttachment> attachments = new ArrayList<>();
-        for (String url : urls) {
-            FsComplaintAttachment attachment = new FsComplaintAttachment();
-            attachment.setComplaintId(fsComplaint.getId());
-            attachment.setCreateTime(LocalDateTime.now());
-
-            String fileNameFromUrl = FileNameExtractor.getFileNameFromUrl(url);
-            attachment.setFileName(fileNameFromUrl);
-            attachment.setFilePath(url);
-            attachment.setFileType(FileNameExtractor.getExtensionFromUrl(url));
-            attachment.setCreateTime(LocalDateTime.now());
-            attachments.add(attachment);
-        }
-        fsComplaintAttachmentMapper.batchInsert(attachments);
-    }
-
-    @Override
-    public ComplaintVO getComplaintById(Long id) {
-        log.info("根据ID查询投诉详情,ID:{}", id);
-
-        FsComplaint complaint = fsComplaintMapper.selectById(id);
-        if (complaint == null) {
-            throw new RuntimeException("投诉信息不存在");
-        }
-
-        return convertToVO(complaint);
-    }
-
-    @Override
-    public ComplaintVO getComplaintByNo(String complaintNo) {
-        log.info("根据投诉单号查询投诉详情,投诉单号:{}", complaintNo);
-
-        FsComplaint complaint = fsComplaintMapper.selectByComplaintNo(complaintNo);
-        if (complaint == null) {
-            throw new RuntimeException("投诉信息不存在");
-        }
-
-        return convertToVO(complaint);
-    }
-
-    @Override
-    public List<FsComplaint> getComplaintPage(ComplaintQueryDTO queryDTO) {
-        log.info("分页查询投诉列表,参数:{}", queryDTO);
-
-        Map<Long, FsComplaintCategory> categoryMap = fsComplaintCategoryMapper.selectAllMap();
-
-        List<FsComplaint> complaints = fsComplaintMapper.selectByCondition(queryDTO);
-        for (FsComplaint complaint : complaints) {
-            FsComplaintCategory fsComplaintCategory = categoryMap.get(complaint.getCategoryId());
-            if(ObjectUtils.isNotNull(fsComplaintCategory)){
-                complaint.setCategoryName(fsComplaintCategory.getCategoryName());
-            }
-        }
-
-        return complaints;
-    }
-
-    @Override
-    public void updateComplaint(Long id, UpdateComplaintDTO dto) {
-        log.info("更新投诉信息,ID:{},参数:{}", id, dto);
-
-        // 检查投诉是否存在
-        FsComplaint existComplaint = fsComplaintMapper.selectById(id);
-        if (existComplaint == null) {
-            throw new RuntimeException("投诉信息不存在");
-        }
-
-        FsComplaint complaint = new FsComplaint();
-        BeanUtils.copyProperties(dto, complaint);
-        complaint.setId(id);
-        complaint.setUpdateTime(LocalDateTime.now());
-
-        int result = fsComplaintMapper.updateSelective(complaint);
-        if (result <= 0) {
-            throw new RuntimeException("更新投诉信息失败");
-        }
-
-        log.info("投诉信息更新成功,ID:{}", id);
-    }
-
-    @Override
-    public void deleteComplaint(Long id) {
-        log.info("删除投诉,ID:{}", id);
-
-        // 检查投诉是否存在
-        FsComplaint existComplaint = fsComplaintMapper.selectById(id);
-        if (existComplaint == null) {
-            throw new RuntimeException("投诉信息不存在");
-        }
-
-        int result = fsComplaintMapper.deleteById(id);
-        if (result <= 0) {
-            throw new RuntimeException("删除投诉失败");
-        }
-
-        log.info("投诉删除成功,ID:{}", id);
-    }
-
-    /**
-     * 生成投诉单号
-     */
-    private String generateComplaintNo() {
-        String timestamp = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
-        String random = String.format("%04d", new Random().nextInt(10000));
-        return "TS" + timestamp + random;
-    }
-
-    /**
-     * 转换为VO对象
-     */
-    private ComplaintVO convertToVO(FsComplaint complaint) {
-        ComplaintVO vo = new ComplaintVO();
-        BeanUtils.copyProperties(complaint, vo);
-        vo.setStatusName(getStatusName(complaint.getStatus()));
-        return vo;
-    }
-
-    /**
-     * 获取状态名称
-     */
-    private String getStatusName(Integer status) {
-        if (status == null) {
-            return "";
-        }
-        switch (status) {
-            case 1: return "待处理";
-            case 2: return "处理中";
-            case 3: return "已完成";
-            case 4: return "已关闭";
-            default: return "未知状态";
-        }
-    }
-
-}

+ 0 - 22
fs-service/src/main/java/com/fs/complaint/vo/ComplaintVO.java

@@ -1,22 +0,0 @@
-package com.fs.complaint.vo;
-
-import lombok.Data;
-import java.time.LocalDateTime;
-
-/**
- * 投诉信息返回对象
- */
-@Data
-public class ComplaintVO {
-
-    private Long id;
-    private String complaintNo;
-    private Long categoryId;
-    private String content;
-    private String contactPhone;
-    private String contactEmail;
-    private Integer status;
-    private String statusName;
-    private LocalDateTime createTime;
-    private LocalDateTime updateTime;
-}

+ 0 - 50
fs-service/src/main/java/com/fs/complaint/vo/FsComplaintCategoryListVO.java

@@ -1,50 +0,0 @@
-package com.fs.complaint.vo;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-/**
- * 投诉分类列表VO
- */
-@Data
-public class FsComplaintCategoryListVO {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 分类名称
-     */
-    private String categoryName;
-
-    /**
-     * 分类编码
-     */
-    private String categoryCode;
-
-    /**
-     * 排序
-     */
-    private Integer sortOrder;
-
-    /**
-     * 状态:1-启用,0-禁用
-     */
-    private Integer status;
-
-    /**
-     * 创建时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime updateTime;
-}

+ 0 - 59
fs-service/src/main/java/com/fs/foods/domain/FsFoodRecord.java

@@ -1,59 +0,0 @@
-package com.fs.foods.domain;
-
-import lombok.Data;
-import lombok.Builder;
-import lombok.NoArgsConstructor;
-import lombok.AllArgsConstructor;
-
-import java.util.Date;
-import java.time.LocalDate;
-import java.time.LocalTime;
-
-/**
- * 饮食记录实体类
- */
-@Data
-@Builder
-@NoArgsConstructor
-@AllArgsConstructor
-public class FsFoodRecord {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 用户ID
-     */
-    private Long userId;
-    /**
-     * 用户名
-     */
-    private String username;
-
-    /**
-     * 用餐日期
-     */
-    private LocalDate recordDate;
-
-    /**
-     * 记录时间点
-     */
-    private LocalTime recordTime;
-
-    /**
-     * 用餐情况描述
-     */
-    private String mealDescription;
-
-    /**
-     * 创建时间
-     */
-    private Date createdAt;
-
-    /**
-     * 更新时间
-     */
-    private Date updatedAt;
-}

+ 0 - 73
fs-service/src/main/java/com/fs/foods/mapper/FoodRecordMapper.java

@@ -1,73 +0,0 @@
-package com.fs.foods.mapper;
-
-import com.fs.foods.domain.FsFoodRecord;
-import com.fs.foods.param.FoodRecordQueryParam;
-import org.apache.ibatis.annotations.Insert;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Options;
-import org.apache.ibatis.annotations.Select;
-import org.apache.ibatis.annotations.Update;
-import org.apache.ibatis.annotations.Param;
-
-import java.time.LocalDate;
-import java.util.List;
-
-/**
- * 饮食记录数据访问接口
- */
-@Mapper
-public interface FoodRecordMapper {
-
-    /**
-     * 根据ID查询饮食记录
-     */
-    @Select("SELECT * FROM fs_food_records WHERE id = #{id}")
-    FsFoodRecord getById(@Param("id") Long id);
-
-    /**
-     * 获取用户某日的所有饮食记录
-     */
-    @Select("SELECT * FROM fs_food_records WHERE user_id = #{userId} AND record_date = #{recordDate} ORDER BY record_time")
-    List<FsFoodRecord> getByUserAndDate(@Param("userId") Long userId, @Param("recordDate") LocalDate recordDate);
-
-    /**
-     * 获取用户所有饮食记录
-     */
-    @Select("SELECT * FROM fs_food_records WHERE user_id = #{userId} ORDER BY record_date DESC, record_time DESC")
-    List<FsFoodRecord> getByUser(@Param("userId") Long userId);
-
-    /**
-     * 新增饮食记录
-     */
-    @Insert("INSERT INTO fs_food_records(user_id, record_date, record_time, meal_description) " +
-            "VALUES(#{userId}, #{recordDate}, #{recordTime}, #{mealDescription})")
-    @Options(useGeneratedKeys = true, keyProperty = "id")
-    int insert(FsFoodRecord foodRecord);
-
-    /**
-     * 更新饮食记录
-     */
-    @Update("UPDATE fs_food_records SET record_date = #{recordDate}, record_time = #{recordTime}, " +
-            "meal_description = #{mealDescription} WHERE id = #{id}")
-    int update(FsFoodRecord foodRecord);
-
-    /**
-     * 删除饮食记录
-     */
-    @Update("DELETE FROM fs_food_records WHERE id = #{id}")
-    int deleteById(@Param("id") Long id);
-
-    List<FsFoodRecord> selectFoodRecordList(FoodRecordQueryParam param);
-
-    List<FsFoodRecord> selectFoodRecordsByUserAndDate(FoodRecordQueryParam param);
-
-    int deleteFsFoodRecordByIds(Long[] ids);
-
-    Integer selectFoodRecordCount(FoodRecordQueryParam param);
-
-    Integer selectRecordDays(FoodRecordQueryParam param);
-
-    FsFoodRecord selectLatestRecord(Long userId);
-
-    List<FsFoodRecord> selectRecentFoodRecords(FoodRecordQueryParam param);
-}

+ 0 - 47
fs-service/src/main/java/com/fs/foods/param/FoodRecordAddParam.java

@@ -1,47 +0,0 @@
-package com.fs.foods.param;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import javax.validation.constraints.NotNull;
-import java.time.LocalDate;
-import java.time.LocalTime;
-
-/**
- * 新增饮食记录参数
- */
-@Data
-@ApiModel("新增饮食记录参数")
-public class FoodRecordAddParam {
-
-    /**
-     * 用餐日期
-     */
-    @ApiModelProperty("用餐日期")
-    @NotNull(message = "用餐日期不能为空")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate recordDate;
-
-    /**
-     * 记录时间点
-     */
-    @ApiModelProperty("记录时间点")
-    @NotNull(message = "记录时间不能为空")
-    @DateTimeFormat(pattern = "HH:mm:ss")
-    private LocalTime recordTime;
-
-    /**
-     * 用餐情况描述
-     */
-    @ApiModelProperty("用餐情况描述")
-    @NotNull(message = "用餐描述不能为空")
-    private String mealDescription;
-
-    /**
-     * 用户ID
-     */
-    private Long userId;
-
-}

+ 0 - 48
fs-service/src/main/java/com/fs/foods/param/FoodRecordEditParam.java

@@ -1,48 +0,0 @@
-package com.fs.foods.param;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import javax.validation.constraints.NotNull;
-import java.time.LocalDate;
-import java.time.LocalTime;
-
-/**
- * 修改饮食记录参数
- */
-@Data
-@ApiModel("修改饮食记录参数")
-public class FoodRecordEditParam {
-
-    /**
-     * 主键ID
-     */
-    @ApiModelProperty("记录ID")
-    @NotNull(message = "记录ID不能为空")
-    private Long id;
-
-    /**
-     * 用餐日期
-     */
-    @ApiModelProperty("用餐日期")
-    @NotNull(message = "用餐日期不能为空")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate recordDate;
-
-    /**
-     * 记录时间点
-     */
-    @ApiModelProperty("记录时间点")
-    @NotNull(message = "记录时间不能为空")
-    @DateTimeFormat(pattern = "HH:mm:ss")
-    private LocalTime recordTime;
-
-    /**
-     * 用餐情况描述
-     */
-    @ApiModelProperty("用餐情况描述")
-    @NotNull(message = "用餐描述不能为空")
-    private String mealDescription;
-}

+ 0 - 57
fs-service/src/main/java/com/fs/foods/param/FoodRecordQueryParam.java

@@ -1,57 +0,0 @@
-package com.fs.foods.param;
-
-import com.fs.common.core.domain.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.time.LocalDate;
-
-/**
- * 饮食记录查询参数
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@ApiModel("饮食记录查询参数")
-public class FoodRecordQueryParam extends BaseEntity {
-
-    /**
-     * 用户ID
-     */
-    @ApiModelProperty("用户ID")
-    private Long userId;
-
-    /**
-     * 开始日期
-     */
-    @ApiModelProperty("开始日期")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate startDate;
-
-    /**
-     * 结束日期
-     */
-    @ApiModelProperty("结束日期")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate endDate;
-
-    /**
-     * 页码
-     */
-    @ApiModelProperty("页码")
-    private Integer pageNum = 1;
-
-    /**
-     * 页大小
-     */
-    @ApiModelProperty("页大小")
-    private Integer pageSize = 10;
-
-    /**
-     * 搜索描述关键词
-     */
-    @ApiModelProperty("搜索描述关键词")
-    private String keyword;
-}

+ 0 - 90
fs-service/src/main/java/com/fs/foods/service/IFsFoodRecordService.java

@@ -1,90 +0,0 @@
-package com.fs.foods.service;
-
-import com.fs.foods.domain.FsFoodRecord;
-import com.fs.foods.param.FoodRecordQueryParam;
-
-import java.time.LocalDate;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 饮食记录Service接口
- */
-public interface IFsFoodRecordService {
-
-    /**
-     * 查询饮食记录
-     *
-     * @param id 饮食记录主键
-     * @return 饮食记录
-     */
-    public FsFoodRecord selectFsFoodRecordById(Long id);
-
-    /**
-     * 查询饮食记录列表
-     *
-     * @param param 查询参数
-     * @return 饮食记录集合
-     */
-    public List<FsFoodRecord> selectFoodRecordList(FoodRecordQueryParam param);
-
-    /**
-     * 根据用户ID和日期查询饮食记录
-     *
-     * @param userId 用户ID
-     * @param recordDate 记录日期
-     * @return 饮食记录集合
-     */
-    public List<FsFoodRecord> selectFoodRecordsByUserAndDate(Long userId, LocalDate recordDate);
-
-    /**
-     * 新增饮食记录
-     *
-     * @param fsFoodRecord 饮食记录
-     * @return 结果
-     */
-    public int insertFsFoodRecord(FsFoodRecord fsFoodRecord);
-
-    /**
-     * 修改饮食记录
-     *
-     * @param fsFoodRecord 饮食记录
-     * @return 结果
-     */
-    public int updateFsFoodRecord(FsFoodRecord fsFoodRecord);
-
-    /**
-     * 批量删除饮食记录
-     *
-     * @param ids 需要删除的饮食记录主键集合
-     * @return 结果
-     */
-    public int deleteFsFoodRecordByIds(Long[] ids);
-
-    /**
-     * 删除饮食记录信息
-     *
-     * @param id 饮食记录主键
-     * @return 结果
-     */
-    public int deleteFsFoodRecordById(Long id);
-
-    /**
-     * 获取用户饮食记录统计信息
-     *
-     * @param userId 用户ID
-     * @param startDate 开始日期
-     * @param endDate 结束日期
-     * @return 统计信息
-     */
-    public Map<String, Object> getFoodRecordStats(Long userId, LocalDate startDate, LocalDate endDate);
-
-    /**
-     * 获取用户最近的饮食记录
-     *
-     * @param userId 用户ID
-     * @param limit 限制条数
-     * @return 饮食记录集合
-     */
-    public List<FsFoodRecord> selectRecentFoodRecords(Long userId, Integer limit);
-}

+ 0 - 179
fs-service/src/main/java/com/fs/foods/service/impl/FsFoodRecordServiceImpl.java

@@ -1,179 +0,0 @@
-package com.fs.foods.service.impl;
-
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.StringUtils;
-import com.fs.foods.domain.FsFoodRecord;
-import com.fs.foods.mapper.FoodRecordMapper;
-import com.fs.foods.param.FoodRecordQueryParam;
-import com.fs.foods.service.IFsFoodRecordService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.time.LocalDate;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 饮食记录Service业务层处理
- */
-@Slf4j
-@Service
-public class FsFoodRecordServiceImpl implements IFsFoodRecordService {
-
-    @Autowired
-    private FoodRecordMapper fsFoodRecordMapper;
-
-    /**
-     * 查询饮食记录
-     *
-     * @param id 饮食记录主键
-     * @return 饮食记录
-     */
-    @Override
-    public FsFoodRecord selectFsFoodRecordById(Long id) {
-        return fsFoodRecordMapper.getById(id);
-    }
-
-    /**
-     * 查询饮食记录列表
-     *
-     * @param param 查询参数
-     * @return 饮食记录
-     */
-    @Override
-    public List<FsFoodRecord> selectFoodRecordList(FoodRecordQueryParam param) {
-        return fsFoodRecordMapper.selectFoodRecordList(param);
-    }
-
-    /**
-     * 根据用户ID和日期查询饮食记录
-     *
-     * @param userId 用户ID
-     * @param recordDate 记录日期
-     * @return 饮食记录集合
-     */
-    @Override
-    public List<FsFoodRecord> selectFoodRecordsByUserAndDate(Long userId, LocalDate recordDate) {
-        FoodRecordQueryParam param = new FoodRecordQueryParam();
-        param.setUserId(userId);
-        param.setStartDate(recordDate);
-        param.setEndDate(recordDate);
-        return fsFoodRecordMapper.selectFoodRecordsByUserAndDate(param);
-    }
-
-    /**
-     * 新增饮食记录
-     *
-     * @param fsFoodRecord 饮食记录
-     * @return 结果
-     */
-    @Override
-    public int insertFsFoodRecord(FsFoodRecord fsFoodRecord) {
-        fsFoodRecord.setCreatedAt(DateUtils.getNowDate());
-        return fsFoodRecordMapper.insert(fsFoodRecord);
-    }
-
-    /**
-     * 修改饮食记录
-     *
-     * @param fsFoodRecord 饮食记录
-     * @return 结果
-     */
-    @Override
-    public int updateFsFoodRecord(FsFoodRecord fsFoodRecord) {
-        fsFoodRecord.setUpdatedAt(DateUtils.getNowDate());
-        return fsFoodRecordMapper.update(fsFoodRecord);
-    }
-
-    /**
-     * 批量删除饮食记录
-     *
-     * @param ids 需要删除的饮食记录主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsFoodRecordByIds(Long[] ids) {
-        return fsFoodRecordMapper.deleteFsFoodRecordByIds(ids);
-    }
-
-    /**
-     * 删除饮食记录信息
-     *
-     * @param id 饮食记录主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsFoodRecordById(Long id) {
-        return fsFoodRecordMapper.deleteById(id);
-    }
-
-    /**
-     * 获取用户饮食记录统计信息
-     *
-     * @param userId 用户ID
-     * @param startDate 开始日期
-     * @param endDate 结束日期
-     * @return 统计信息
-     */
-    @Override
-    public Map<String, Object> getFoodRecordStats(Long userId, LocalDate startDate, LocalDate endDate) {
-        try {
-            // 如果没有指定日期范围,默认查询最近30天
-            if (startDate == null || endDate == null) {
-                endDate = LocalDate.now();
-                startDate = endDate.minusDays(30);
-            }
-
-            FoodRecordQueryParam param = new FoodRecordQueryParam();
-            param.setUserId(userId);
-            param.setStartDate(startDate);
-            param.setEndDate(endDate);
-
-            // 获取总记录数
-            Integer totalCount = fsFoodRecordMapper.selectFoodRecordCount(param);
-
-            // 获取记录天数
-            Integer recordDays = fsFoodRecordMapper.selectRecordDays(param);
-
-            // 获取平均每日记录数
-            Double avgRecordsPerDay = recordDays > 0 ? (double) totalCount / recordDays : 0.0;
-
-            // 获取最近一次记录时间
-            FsFoodRecord latestRecord = fsFoodRecordMapper.selectLatestRecord(userId);
-
-            Map<String, Object> stats = new HashMap<>();
-            stats.put("totalCount", totalCount);
-            stats.put("recordDays", recordDays);
-            stats.put("avgRecordsPerDay", String.format("%.1f", avgRecordsPerDay));
-            stats.put("latestRecordDate", latestRecord != null ? latestRecord.getRecordDate() : null);
-            stats.put("startDate", startDate);
-            stats.put("endDate", endDate);
-
-            return stats;
-        } catch (Exception e) {
-            log.error("获取饮食记录统计异常:", e);
-            return new HashMap<>();
-        }
-    }
-
-    /**
-     * 获取用户最近的饮食记录
-     *
-     * @param userId 用户ID
-     * @param limit 限制条数
-     * @return 饮食记录集合
-     */
-    @Override
-    public List<FsFoodRecord> selectRecentFoodRecords(Long userId, Integer limit) {
-        FoodRecordQueryParam param = new FoodRecordQueryParam();
-        param.setUserId(userId);
-        if (limit != null && limit > 0) {
-            param.setPageSize(limit);
-        } else {
-            param.setPageSize(10); // 默认10条
-        }
-        return fsFoodRecordMapper.selectRecentFoodRecords(param);
-    }
-}

+ 0 - 66
fs-service/src/main/java/com/fs/his/config/HealthIndicatorConfig.java

@@ -1,66 +0,0 @@
-package com.fs.his.config;
-
-import com.alibaba.fastjson.JSON;
-import lombok.Data;
-
-import java.util.Map;
-
-/**
- * @description: 血糖指标配置类
- * @author: Xgb
- * @createDate: 2025/8/28
- * @version: 1.0
- */
-@Data
-public class HealthIndicatorConfig {
-
-    /**
-     * 血糖指标
-     */
-    private Map<String, Object> bloodGlucose;
-    /**
-     * 血压指标
-     */
-    private Map<String, Object> bloodPressure;
-    /**
-     * 尿酸指标
-     */
-    private Map<String, Object> uricAcid;
-    /**
-     * BMI指标
-     */
-    private Map<String, Object> bmi;
-    /**
-     * 腰围
-     */
-    private Map<String, Object> waist;
-    /**
-     * 臀围
-     */
-    private Map<String, Object> hip;
-
-    public static final String SEVERITY = "severity";
-
-    // normal 正常, mild 轻微, severe 严重
-    public static final String NORMAL = "normal";
-    public static final String MILD = "mild";
-    public static final String SEVERE = "severe";
-
-    // systolic  高压 diastolic  低压 血压使用
-    public static final String SYSTOLIC = "systolic";
-    public static final String DIASTOLIC = "diastolic";
-
-    // male  男性 female  女性 尿酸使用
-    public static final String MALE = "male";
-    public static final String FEMALE = "female";
-
-
-    /**
-     * 从JSON字符串创建对象实例
-     * @param json JSON字符串
-     * @return HealthIndicatorConfig对象
-     */
-    public static HealthIndicatorConfig fromJson(String json) {
-        return JSON.parseObject(json, HealthIndicatorConfig.class);
-    }
-}

+ 0 - 55
fs-service/src/main/java/com/fs/his/domain/FsAttachment.java

@@ -1,55 +0,0 @@
-package com.fs.his.domain;
-
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-
-/**
- * 附件管理对象 fs_attachment
- *
- * @author fs
- * @date 2025-08-23
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsAttachment extends BaseEntity{
-
-    @TableId
-    @ApiModelProperty(value = "附件id")
-    private Long attachmentId;
-
-    /** 父id */
-    @Excel(name = "父id")
-    @ApiModelProperty(value = "父id")
-    private Long parentId;
-
-    /** 用户id */
-    @Excel(name = "用户id")
-    @ApiModelProperty(value = "用户id")
-    private Long userId;
-
-    /** 文件类型 0:文件夹 1图片 */
-    @Excel(name = "文件类型 0:文件夹 1图片 2体检报告")
-    @ApiModelProperty(value = "文件类型 0:文件夹 1图片 2体检报告")
-    private Integer type;
-
-    /** 文件大小(kb) */
-    @Excel(name = "文件大小(kb)")
-    @ApiModelProperty(value = "文件大小(kb)")
-    private Long size;
-
-    /** 文件名 */
-    @Excel(name = "文件名")
-    @ApiModelProperty(value = "文件名")
-    private String fileName;
-
-    /** oss路径 */
-    @Excel(name = "oss路径")
-    @ApiModelProperty(value = "文件:oss地址 体检报告:报告id")
-    private String url;
-
-
-}

+ 7 - 4
fs-service/src/main/java/com/fs/his/domain/FsUser.java

@@ -191,8 +191,11 @@ public class FsUser extends BaseEntity
     @TableField(exist = false)
     private String nickname;
 
-    /**
-     * 用户余额
-     */
-    private BigDecimal money;
+    public String getNickname() {
+        return nickname;
+    }
+
+    public void setNickname(String nickname) {
+        this.nickname = nickname;
+    }
 }

+ 0 - 74
fs-service/src/main/java/com/fs/his/domain/FsUserHealthData.java

@@ -1,74 +0,0 @@
-package com.fs.his.domain;
-
-import java.math.BigDecimal;
-import java.sql.Time;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-
-/**
- * 用户身体检测数据对象 fs_user_health_data
- *
- * @author fs
- * @date 2025-08-27
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserHealthData extends BaseEntity{
-
-    /** 自增主键 */
-    @ApiModelProperty("自增主键")
-    private Long id;
-
-    /** 用户ID */
-    @ApiModelProperty("用户ID")
-    private Long userId;
-
-    /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-    @ApiModelProperty("测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI)")
-    private Integer measurementType;
-
-    /** 数值1(测量值1 测量值只有一个时默认填写/身高cm/舒张压) */
-    @ApiModelProperty("数值1(测量值1 测量值只有一个时默认填写/身高cm/舒张压)")
-    private BigDecimal value1;
-
-    /** 数值2(测量值2 体重kg/收缩压) */
-    @ApiModelProperty("数值2(测量值2 体重kg/收缩压)")
-    private BigDecimal value2;
-
-    /** 测量日期 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @ApiModelProperty("测量日期")
-    private Date measurementDate;
-
-    /** 测量时间 */
-    @JsonFormat(pattern = "HH:mm:ss")
-    @ApiModelProperty("测量时间")
-    private Date measurementTime;
-
-    /** 星期 */
-    @ApiModelProperty("星期")
-    private Integer week;
-
-    /** 等级(无-0,轻微-1,严重-2) */
-    @ApiModelProperty("等级(无-0,轻微-1,严重-2)")
-    private Integer level;
-
-    /** 记录创建时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @ApiModelProperty("记录创建时间")
-    private Date createdAt;
-
-    /** 性别(0:男, 1:女, 2:未知) */
-    @ApiModelProperty("性别(0:男, 1:女, 2:未知)")
-    private Integer sex;
-    /** 查询时间 格式yyyy-MM-dd yyyy-MM-dd;yyyy-MM-dd yyyy-MM */
-    @ApiModelProperty("查询时间 格式yyyy-MM-dd yyyy-MM-dd;yyyy-MM-dd yyyy-MM")
-    private String timeSearch;
-
-}

+ 0 - 98
fs-service/src/main/java/com/fs/his/domain/FsUserHealthProfile.java

@@ -1,98 +0,0 @@
-package com.fs.his.domain;
-
-import java.math.BigDecimal;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-
-/**
- * 用户健康档案对象 fs_user_health_profile
- *
- * @author fs
- * @date 2025-08-27
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserHealthProfile extends BaseEntity{
-
-    /** 用户ID(主键) */
-    @ApiModelProperty("用户ID(主键)")
-    private Long userId;
-
-    /** 身高(单位:厘米) */
-    @ApiModelProperty("身高(单位:厘米)")
-    private BigDecimal height;
-
-    /** 体重(单位:千克) */
-    @ApiModelProperty("体重(单位:千克)")
-    private BigDecimal weight;
-
-    /** 腰围(单位:厘米) */
-    @ApiModelProperty("腰围(单位:厘米)")
-    private BigDecimal waistCircumference;
-
-    /** 臀围(单位:厘米) */
-    @ApiModelProperty("臀围(单位:厘米)")
-    private BigDecimal hipCircumference;
-
-    /** 高血糖(无-0,轻微-1,严重-2) */
-    @ApiModelProperty("高血糖(无-0,轻微-1,严重-2)")
-    private Long hyperglycemia;
-
-    /** 高血糖测量值(单位:mmol/L) */
-    @ApiModelProperty("高血糖测量值(单位:mmol/L)")
-    private BigDecimal hyperglycemiaValue;
-
-    /** 高血压(无-0,轻微-1,严重-2) */
-    @ApiModelProperty("高血压(无-0,轻微-1,严重-2)")
-    private Long hypertension;
-
-    /** 收缩压(高压) */
-    @ApiModelProperty("收缩压(高压)")
-    private BigDecimal systolicPressure;
-
-    /** 舒张压(低压) */
-    @ApiModelProperty("舒张压(低压)")
-    private BigDecimal diastolicPressure;
-
-    /** 高血脂(无-0,轻微-1,严重-2) */
-    @ApiModelProperty("hyperlipidemia")
-    private Long hyperlipidemia;
-
-    /** 高尿酸(无-0,轻微-1,严重-2) */
-    @ApiModelProperty("高尿酸(无-0,轻微-1,严重-2)")
-    private Long hyperuricemia;
-
-    /** 高尿酸测量值(单位:μmol/L) */
-    @ApiModelProperty("高尿酸测量值(单位:μmol/L)")
-    private BigDecimal hyperuricemiaValue;
-
-    /** 高体重(正常-0,偏瘦-1,偏重-2) */
-    @ApiModelProperty("高体重(正常-0,偏瘦-1,偏重-2)")
-    private Long bodyWeightStatus;
-
-    /** 其他病史 */
-    @ApiModelProperty("其他病史")
-    private String otherMedicalHistory;
-
-    /** 症状史 */
-    @ApiModelProperty("症状史")
-    private String symptomHistory;
-
-    /** 创建时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @ApiModelProperty("创建时间")
-    private Date createdTime;
-
-    /** 更新时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @ApiModelProperty("更新时间")
-    private Date updatedTime;
-
-
-}

+ 0 - 225
fs-service/src/main/java/com/fs/his/domain/FsUserInfo.java

@@ -1,225 +0,0 @@
-package com.fs.his.domain;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fs.common.core.domain.BaseEntity;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.math.BigDecimal;
-import java.util.Date;
-
-/**
- * 用户信息对象 fs_user_info
- *
- * @author fs
- * @date 2025-08-25
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserInfo extends BaseEntity {
-
-    /**
-     * 用户ID
-     */
-    @ApiModelProperty("用户ID")
-    private Long userId;
-
-    /**
-     * 企业用户ID
-     */
-    @ApiModelProperty("企业用户ID")
-    private Long companyUserId;
-
-    /**
-     * 姓名
-     */
-    @ApiModelProperty("姓名")
-    private String username;
-
-    /**
-     * 头像
-     */
-    @ApiModelProperty("头像")
-    private String avatar;
-
-    /**
-     * 性别(0:男, 1:女, 2:未知)
-     */
-    @ApiModelProperty("性别(0:男, 1:女, 2:未知)")
-    private Integer sex;
-
-    /**
-     * 出生年月
-     */
-    @ApiModelProperty("出生年月")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date birthdate;
-
-    /**
-     * 年龄
-     */
-    @ApiModelProperty("年龄")
-    private Integer age;
-
-    /**
-     * 电话
-     */
-    @ApiModelProperty("电话")
-    private String phone;
-
-    /**
-     * 身份证号
-     */
-    @ApiModelProperty("身份证号")
-    private String idCard;
-
-    /**
-     * 退休前工作单位
-     */
-    @ApiModelProperty("退休前工作单位")
-    private String previousEmployer;
-
-    /**
-     * 可支配收入(元)
-     */
-    @ApiModelProperty("可支配收入(元)")
-    private BigDecimal disposableIncome;
-
-    /**
-     * 实际消费(元)
-     */
-    @ApiModelProperty("实际消费(元)")
-    private BigDecimal actualConsumption;
-
-    /**
-     * 市区
-     */
-    @ApiModelProperty("市区")
-    private String city;
-
-    /**
-     * 详情小区
-     */
-    @ApiModelProperty("详情小区")
-    private String residentialCommunity;
-
-    /**
-     * 门牌号
-     */
-    @ApiModelProperty("门牌号")
-    private String houseNumber;
-
-    /**
-     * 面积(平方米)
-     */
-    @ApiModelProperty("面积(平方米)")
-    private BigDecimal area;
-
-    /**
-     * 楼层
-     */
-    @ApiModelProperty("楼层")
-    private String floor;
-
-    /**
-     * 伴侣姓名
-     */
-    @ApiModelProperty("伴侣姓名")
-    private String partnerName;
-
-    /**
-     * 伴侣年龄
-     */
-    @ApiModelProperty("伴侣年龄")
-    private String partnerAge;
-
-    /**
-     * 伴侣单位
-     */
-    @ApiModelProperty("伴侣单位")
-    private String partnerEmployer;
-
-    /**
-     * 孙辈学校
-     */
-    @ApiModelProperty("孙辈学校")
-    private String grandchildrenSchool;
-
-    /**
-     * 是否会员(0:不是, 1:是)
-     */
-    @ApiModelProperty("是否会员(0:不是, 1:是)")
-    private String isMember;
-
-    /**
-     * 会员分类/等级
-     */
-    @ApiModelProperty("会员分类/等级")
-    private String memberLevel;
-
-    /**
-     * 加入时间
-     */
-    @ApiModelProperty("加入时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date joinTime;
-
-    /**
-     * 到期时间
-     */
-    @ApiModelProperty("到期时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date expiryTime;
-
-    /**
-     * 管理月份(格式如: 2024-01)
-     */
-    @ApiModelProperty("管理月份(格式如: 2024-01)")
-    private String managementMonth;
-
-    /**
-     * 职位
-     */
-    @ApiModelProperty("职位")
-    private String position;
-
-    /**
-     * 癖好/平日喜好
-     */
-    @ApiModelProperty("癖好/平日喜好")
-    private String hobbies;
-
-    /**
-     * 特长
-     */
-    @ApiModelProperty("特长")
-    private String specialties;
-
-    /**
-     * 信仰
-     */
-    @ApiModelProperty("信仰")
-    private String faith;
-
-    /**
-     * 担忧
-     */
-    @ApiModelProperty("担忧")
-    private String concerns;
-
-    /**
-     * 用户想解决的问题
-     */
-    @ApiModelProperty("用户想解决的问题")
-    private String problemsToSolve;
-
-    /**
-     * 健康建议
-     */
-    @ApiModelProperty("健康建议")
-    private String healthSuggestions;
-
-    private Integer isDel;
-
-}

+ 0 - 53
fs-service/src/main/java/com/fs/his/domain/FsUserItinerary.java

@@ -1,53 +0,0 @@
-package com.fs.his.domain;
-
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-import org.springframework.format.annotation.DateTimeFormat;
-
-/**
- * 用户日期行程对象 fs_user_itinerary
- *
- * @author fs
- * @date 2025-09-04
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserItinerary extends BaseEntity{
-
-    /** 自增主键ID */
-    @ApiModelProperty("自增主键ID")
-    private Long id;
-
-    /** 用户ID */
-    @ApiModelProperty("用户ID")
-    private Long userId;
-
-    /** 行程内容 */
-    @ApiModelProperty("行程内容")
-    private String itinerary;
-
-    /** 行程日期 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private Date itineraryDate;
-
-    /** 行程标记 */
-    private String mark;
-
-    /** 行程时间 */
-    @JsonFormat(pattern = "HH:mm")
-    @ApiModelProperty("行程时间")
-    private Date itineraryTime;
-
-    /** 预留字段 */
-    @ApiModelProperty("预留字段")
-    private String reservedField;
-
-
-}

+ 0 - 55
fs-service/src/main/java/com/fs/his/domain/FsUserPayCompetitorsRecord.java

@@ -1,55 +0,0 @@
-package com.fs.his.domain;
-
-import java.math.BigDecimal;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-
-/**
- * 用户购买竞品信息记录对象 fs_user_pay_competitors_record
- *
- * @author fs
- * @date 2025-08-26
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserPayCompetitorsRecord extends BaseEntity{
-
-    /** 自增主键ID */
-    private Long id;
-
-    /** 用户ID */
-    private Long userId;
-
-    /** 竞品公司 */
-    private String competitorCompany;
-
-    /** 产品名称 */
-    private String product;
-
-    /** 价格 */
-    private BigDecimal priceAmount;
-
-    /** 服务内容 */
-    private String serviceInfo;
-
-    /** 免费服务次数 */
-    private Integer freeServiceCount;
-
-    /** 预留字段 */
-    private String reservedField;
-
-    /** 创建时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date createdTime;
-
-    /** 更新时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date updatedTime;
-
-
-}

+ 0 - 62
fs-service/src/main/java/com/fs/his/domain/FsUserPayRecord.java

@@ -1,62 +0,0 @@
-package com.fs.his.domain;
-
-import java.math.BigDecimal;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import lombok.Data;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-
-/**
- * 用户购买服务信息记录对象 fs_user_pay_record
- *
- * @author fs
- * @date 2025-08-26
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class FsUserPayRecord extends BaseEntity{
-
-    /** 自增主键ID */
-    private Long id;
-
-    /** 用户ID */
-    private Long userId;
-
-    /** 商品名称 */
-    private String productName;
-
-    /** 购买数量 */
-    private Integer payNum;
-
-    /** 金额 */
-    private BigDecimal amount;
-
-    /** 预计用完时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date estimatedUseTime;
-
-    /** 购买次数 */
-    private Integer payCount;
-
-    /** 剩余次数 */
-    private Integer remainingCount;
-
-    /** 会员情况 */
-    private String membershipInfo;
-
-    /** 预留字段 */
-    private String reservedField;
-
-    /** 创建时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date createdTime;
-
-    /** 更新时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    private Date updatedTime;
-
-
-}

+ 0 - 55
fs-service/src/main/java/com/fs/his/dto/FsUserHealthInfoDTO.java

@@ -1,55 +0,0 @@
-package com.fs.his.dto;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fs.common.core.domain.BaseEntity;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 用户健康档案对象 FsUserHealthInfoDTO
- *
- * @author fs
- * @date 2025-08-27
- */
-@Data
-public class FsUserHealthInfoDTO extends BaseEntity{
-
-    /** 用户ID(主键) */
-    private Long userId;
-
-    /**
-     * 姓名
-     */
-    private String username;
-
-    /**
-     * 头像
-     */
-    private String avatar;
-
-    /**
-     * 性别(0:男, 1:女, 2:未知)
-     */
-    private Integer sex;
-
-    /**
-     * 年龄
-     */
-    private Integer age;
-    /**
-     * 各数据信息
-     */
-    private Map<String, Object>  dataMap;
-
-    /** 其他病史 */
-    private String otherMedicalHistory;
-
-    /** 症状史 */
-    private String symptomHistory;
-
-}

+ 0 - 36
fs-service/src/main/java/com/fs/his/enums/HealthDataLevelEnum.java

@@ -1,36 +0,0 @@
-package com.fs.his.enums;
-/**
- * @Description: 健康指标等级枚举
- * @Author xgb
- * @Date 2025/8/28 17:22
- */
-
-public enum HealthDataLevelEnum {
-    // 正常-0,轻微-1,严重-2,3-异常数据
-    NONE("正常", 0),
-    LIGHT("轻微", 1),
-    SERIOUS("严重", 2),
-    EXCEPTION("异常数据", 3);
-    private String des;
-    private Integer value;
-    HealthDataLevelEnum(String label, Integer value) {
-        this.des = label;
-        this.value = value;
-    }
-    public String getLabel() {
-        return des;
-    }
-    public int getValue() {
-        return value;
-    }
-    public static HealthDataLevelEnum toType(Integer value) {
-        for (HealthDataLevelEnum type : HealthDataLevelEnum.values()) {
-            if (type.getValue()==value) {
-                return type;
-            }
-        }
-        return null;
-    }
-
-
-}

+ 0 - 45
fs-service/src/main/java/com/fs/his/enums/HealthDataTypeEnum.java

@@ -1,45 +0,0 @@
-package com.fs.his.enums;
-
-import lombok.Getter;
-
-/**
- * @Description: 健康指标类型枚举
- * @Author xgb
- * @Date 2025/8/28 17:22
- */
-
-@Getter
-public enum HealthDataTypeEnum {
-    // 0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI
-    WAIST( 0, "腰围","waist"),
-    HIP( 1, "臀围","hip"),
-    GLUCOSE( 2, "血糖","bloodGlucose"),
-    BLOOD_PRESSURE( 3, "血压","bloodPressure"),
-    URIC_ACID( 4, "尿酸","uricAcid"),
-    BMI( 5, "BMI","bmi");
-
-    private final Integer value;
-
-    private final String dec;
-
-    private final String type;
-
-
-    HealthDataTypeEnum(Integer value, String dec, String type) {
-        this.value = value;
-        this.dec = dec;
-        this.type = type;
-    }
-
-    public static HealthDataTypeEnum getEnumByKey(Integer value) {
-        for (HealthDataTypeEnum item : HealthDataTypeEnum.values()) {
-            if (item.value.equals(value)) {
-                return item;
-            }
-        }
-        return null;
-    }
-
-
-
-}

+ 0 - 69
fs-service/src/main/java/com/fs/his/mapper/FsAttachmentMapper.java

@@ -1,69 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsAttachment;
-import com.fs.his.param.FsAttachmentPageParam;
-import org.apache.ibatis.annotations.Param;
-
-/**
- * 附件管理Mapper接口
- *
- * @author fs
- * @date 2025-08-23
- */
-public interface FsAttachmentMapper extends BaseMapper<FsAttachment>{
-    /**
-     * 查询附件管理
-     *
-     * @param attachmentId 附件管理主键
-     * @return 附件管理
-     */
-    FsAttachment selectFsAttachmentByAttachmentId(Long attachmentId);
-
-    /**
-     * 查询附件管理列表
-     *
-     * @param fsAttachment 附件管理
-     * @return 附件管理集合
-     */
-    List<FsAttachment> selectFsAttachmentList(FsAttachment fsAttachment);
-
-    /**
-     * 新增附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    int insertFsAttachment(FsAttachment fsAttachment);
-
-    /**
-     * 修改附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    int updateFsAttachment(FsAttachment fsAttachment);
-
-    /**
-     * 删除附件管理
-     *
-     * @param attachmentId 附件管理主键
-     * @return 结果
-     */
-    int deleteFsAttachmentByAttachmentId(Long attachmentId);
-
-    /**
-     * 批量删除附件管理
-     *
-     * @param attachmentIds 需要删除的数据主键集合
-     * @return 结果
-     */
-    int deleteFsAttachmentByAttachmentIds(Long[] attachmentIds);
-
-    List<FsAttachment> selectFsAttachmentListPage(FsAttachmentPageParam fsAttachment);
-
-    FsAttachment selectFsAttachmentByFolderName(@Param("folderName") String folderName);
-
-    int deleteFsAttachmentByReportId(@Param("reportId")Long reportId);
-}

+ 0 - 74
fs-service/src/main/java/com/fs/his/mapper/FsUserHealthDataMapper.java

@@ -1,74 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserHealthData;
-
-/**
- * 用户身体检测数据Mapper接口
- * 
- * @author fs
- * @date 2025-08-27
- */
-public interface FsUserHealthDataMapper extends BaseMapper<FsUserHealthData>{
-
-    /**
-     * 查询用户身体检测数据列表
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 用户身体检测数据集合
-     */
-    List<FsUserHealthData> selectFsUserHealthDataList(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 新增用户身体检测数据
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    int insertFsUserHealthData(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 修改用户身体检测数据
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    int updateFsUserHealthData(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 删除用户身体检测数据
-     * 
-     * @param id 用户身体检测数据主键
-     * @return 结果
-     */
-    int deleteFsUserHealthDataById(Long id);
-
-    /**
-     * 批量删除用户身体检测数据
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    int deleteFsUserHealthDataByIds(String[] ids);
-
-    /**
-     * 查询用户身体检测最新数据
-     *
-     * @param fsUserHealthData 用户身体检测数据主键
-     * @return 用户身体检测数据
-     */
-    FsUserHealthData selectFsUserHealthDataByUserId(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 查询用户身体数据详情
-     *
-     * @param id 用户身体检测数据主键
-     * @return 用户身体检测数据
-     */
-    FsUserHealthData selectFsUserHealthDataById(Long id);
-
-    int selectFsUserHealthDataListCount(FsUserHealthData fsUserHealthData);
-
-    List<FsUserHealthData> selectFsUserHealthDataListInfoLatest(FsUserHealthData fsUserHealthData);
-}

+ 0 - 46
fs-service/src/main/java/com/fs/his/mapper/FsUserHealthProfileMapper.java

@@ -1,46 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserHealthProfile;
-
-/**
- * 用户健康档案Mapper接口
- * 
- * @author fs
- * @date 2025-08-27
- */
-public interface FsUserHealthProfileMapper extends BaseMapper<FsUserHealthProfile>{
-    /**
-     * 查询用户健康档案
-     * 
-     * @param userId 用户健康档案主键
-     * @return 用户健康档案
-     */
-    FsUserHealthProfile selectFsUserHealthProfileByUserId(Long userId);
-
-    /**
-     * 新增用户健康档案
-     * 
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    int insertFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile);
-
-    /**
-     * 修改用户健康档案
-     * 
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    int updateFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile);
-
-    /**
-     * 删除用户健康档案
-     * 
-     * @param userId 用户健康档案主键
-     * @return 结果
-     */
-    int deleteFsUserHealthProfileByUserId(Long userId);
-
-}

+ 0 - 54
fs-service/src/main/java/com/fs/his/mapper/FsUserInfoMapper.java

@@ -1,54 +0,0 @@
-package com.fs.his.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserInfo;
-
-import java.util.List;
-
-/**
- * 用户信息Mapper接口
- *
- * @author fs
- * @date 2025-08-25
- */
-public interface FsUserInfoMapper extends BaseMapper<FsUserInfo> {
-    /**
-     * 查询用户信息
-     *
-     * @param userId 用户id
-     * @return 用户信息
-     */
-    FsUserInfo selectFsUserInfoById(Long userId);
-
-    /**
-     * 查询用户信息列表
-     *
-     * @param companyUserId 用户信息
-     * @return 用户信息集合
-     */
-    List<FsUserInfo> selectFsUserInfoList(Long companyUserId);
-
-    /**
-     * 新增用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    int insertFsUserInfo(FsUserInfo fsUserInfo);
-
-    /**
-     * 修改用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    int updateFsUserInfo(FsUserInfo fsUserInfo);
-
-
-    FsUserInfo selectFsUserInfoByPhone(String phone);
-
-    FsUserInfo selectFsUserInfoByIdOnle(Long userId);
-
-
-    int deleteFsUserInfoByUserId(Long userId);
-}

+ 0 - 61
fs-service/src/main/java/com/fs/his/mapper/FsUserItineraryMapper.java

@@ -1,61 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserItinerary;
-
-/**
- * 用户日期行程Mapper接口
- * 
- * @author fs
- * @date 2025-09-04
- */
-public interface FsUserItineraryMapper extends BaseMapper<FsUserItinerary>{
-    /**
-     * 查询用户日期行程
-     * 
-     * @param id 用户日期行程主键
-     * @return 用户日期行程
-     */
-    FsUserItinerary selectFsUserItineraryById(Long id);
-
-    /**
-     * 查询用户日期行程列表
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 用户日期行程集合
-     */
-    List<FsUserItinerary> selectFsUserItineraryList(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 新增用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    int insertFsUserItinerary(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 修改用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    int updateFsUserItinerary(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 删除用户日期行程
-     * 
-     * @param id 用户日期行程主键
-     * @return 结果
-     */
-    int deleteFsUserItineraryById(Long id);
-
-    /**
-     * 批量删除用户日期行程
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    int deleteFsUserItineraryByIds(Long[] ids);
-}

+ 0 - 9
fs-service/src/main/java/com/fs/his/mapper/FsUserMapper.java

@@ -40,15 +40,6 @@ public interface FsUserMapper
      */
     public FsUser selectFsUserByUserId(Long userId);
 
-    @Select("select concat(user_id,'_',nickname) from fs_user where user_id=#{userId} limit 1")
-    public String selectUserNameByUserId(@Param("userId") Long userId);
-
-    @MapKey("userId")
-    public Map<Long,FsUser> selectFsUserByUserIdBatch(List<Long> userIds);
-
-    @Select("select * from fs_user where user_id=#{userId}")
-    public FsUser selectFsUserByUserIdForUpdate(@Param("userId") Long userId);
-
     /**
      * 查询用户列表
      *

+ 0 - 54
fs-service/src/main/java/com/fs/his/mapper/FsUserPayCompetitorsRecordMapper.java

@@ -1,54 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserPayCompetitorsRecord;
-
-/**
- * 用户购买竞品信息记录Mapper接口
- * 
- * @author fs
- * @date 2025-08-26
- */
-public interface FsUserPayCompetitorsRecordMapper extends BaseMapper<FsUserPayCompetitorsRecord>{
-    /**
-     * 查询用户购买竞品信息记录
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 用户购买竞品信息记录
-     */
-    FsUserPayCompetitorsRecord selectFsUserPayCompetitorsRecordById(Long id);
-
-    /**
-     * 查询用户购买竞品信息记录列表
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 用户购买竞品信息记录集合
-     */
-    List<FsUserPayCompetitorsRecord> selectFsUserPayCompetitorsRecordList(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-    /**
-     * 新增用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    int insertFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-    /**
-     * 修改用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    int updateFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-    /**
-     * 删除用户购买竞品信息记录
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 结果
-     */
-    int deleteFsUserPayCompetitorsRecordById(Long id);
-
-}

+ 0 - 54
fs-service/src/main/java/com/fs/his/mapper/FsUserPayRecordMapper.java

@@ -1,54 +0,0 @@
-package com.fs.his.mapper;
-
-import java.util.List;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.fs.his.domain.FsUserPayRecord;
-
-/**
- * 用户购买服务信息记录Mapper接口
- * 
- * @author fs
- * @date 2025-08-26
- */
-public interface FsUserPayRecordMapper extends BaseMapper<FsUserPayRecord>{
-    /**
-     * 查询用户购买服务信息记录
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 用户购买服务信息记录
-     */
-    FsUserPayRecord selectFsUserPayRecordById(Long id);
-
-    /**
-     * 查询用户购买服务信息记录列表
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 用户购买服务信息记录集合
-     */
-    List<FsUserPayRecord> selectFsUserPayRecordList(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 新增用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    int insertFsUserPayRecord(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 修改用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    int updateFsUserPayRecord(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 删除用户购买服务信息记录
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 结果
-     */
-    int deleteFsUserPayRecordById(Long id);
-
-}

+ 0 - 38
fs-service/src/main/java/com/fs/his/param/FsAttachmentPageParam.java

@@ -1,38 +0,0 @@
-package com.fs.his.param;
-
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fs.common.annotation.Excel;
-import com.fs.common.core.domain.BaseEntity;
-import com.fs.common.param.BaseQueryParam;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * 附件管理对象 fs_attachment
- *
- * @author fs
- * @date 2025-08-23
- */
-@Data
-public class FsAttachmentPageParam extends BaseQueryParam {
-    /** 父id */
-    private Long parentId;
-
-    /** 用户id */
-    private Long userId;
-
-    /** 文件类型 0:文件夹 1图片 */
-    @Excel(name = "文件类型 0:文件夹 1图片")
-    private Integer type;
-
-    /** 文件大小(kb) */
-    private Long size;
-
-    /** 文件名 */
-    private String fileName;
-
-    /** oss路径 */
-    private String url;
-
-
-}

+ 0 - 70
fs-service/src/main/java/com/fs/his/service/IFsAttachmentService.java

@@ -1,70 +0,0 @@
-package com.fs.his.service;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.common.core.domain.R;
-import com.fs.his.domain.FsAttachment;
-import com.fs.his.param.FsAttachmentPageParam;
-
-/**
- * 附件管理Service接口
- *
- * @author fs
- * @date 2025-08-23
- */
-public interface IFsAttachmentService extends IService<FsAttachment>{
-    /**
-     * 查询附件管理
-     *
-     * @param attachmentId 附件管理主键
-     * @return 附件管理
-     */
-    FsAttachment selectFsAttachmentByAttachmentId(Long attachmentId);
-
-    /**
-     * 查询附件管理列表
-     *
-     * @param fsAttachment 附件管理
-     * @return 附件管理集合
-     */
-    List<FsAttachment> selectFsAttachmentList(FsAttachment fsAttachment);
-
-
-    List<FsAttachment> selectFsAttachmentList(FsAttachmentPageParam fsAttachment);
-
-    /**
-     * 新增附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    R insertFsAttachment(FsAttachment fsAttachment);
-
-    /**
-     * 修改附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    R updateFsAttachment(FsAttachment fsAttachment);
-
-    /**
-     * 批量删除附件管理
-     *
-     * @param attachmentIds 需要删除的附件管理主键集合
-     * @return 结果
-     */
-    int deleteFsAttachmentByAttachmentIds(Long[] attachmentIds);
-
-    /**
-     * 删除附件管理信息
-     *
-     * @param attachmentId 附件管理主键
-     * @return 结果
-     */
-    int deleteFsAttachmentByAttachmentId(Long attachmentId);
-
-    FsAttachment selectFsAttachmentByFolderName(String folderName);
-
-    int deleteFsAttachmentByReportId(Long reportId);
-}

+ 0 - 104
fs-service/src/main/java/com/fs/his/service/IFsUserHealthDataService.java

@@ -1,104 +0,0 @@
-package com.fs.his.service;
-
-import java.math.BigDecimal;
-import java.util.List;
-import java.util.Map;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.config.HealthIndicatorConfig;
-import com.fs.his.domain.FsUserHealthData;
-import com.fs.his.domain.FsUserHealthProfile;
-
-/**
- * 用户身体检测数据Service接口
- * 
- * @author fs
- * @date 2025-08-27
- */
-public interface IFsUserHealthDataService extends IService<FsUserHealthData>{
-    /**
-     * 查询用户身体检测数据
-     * 
-     * @param id 用户身体检测数据主键
-     * @return 用户身体检测数据
-     */
-//    FsUserHealthData selectFsUserHealthDataById(String id);
-
-    /**
-     * 查询用户身体检测数据列表
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 用户身体检测数据集合
-     */
-    List<FsUserHealthData> selectFsUserHealthDataList(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 新增用户身体检测数据
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    int insertFsUserHealthData(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 修改用户身体检测数据
-     * 
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    int updateFsUserHealthData(FsUserHealthData fsUserHealthData);
-
-    /**
-     * 删除用户身体检测数据信息
-     * 
-     * @param id 用户身体检测数据主键
-     * @return 结果
-     */
-    int deleteFsUserHealthDataById(Long id);
-
-    /**
-     * @Description: 获取健康指标参数配置
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 18:01
-     */
-    HealthIndicatorConfig parseHealthIndicator();
-
-    /**
-     * @Description: 解析获取最新指标值
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 17:57
-     */
-    String getHealthIndicatorValue(HealthIndicatorConfig config, String type, String key, String level);
-
-    /**
-     * @Description: 计算用户健康指标等级
-     * @Param:  [fsUserHealthData]
-     * @Return: java.lang.String
-     * @Author xgb
-     * @Date 2025/8/28 17:13
-     */
-    int getHealthIndicatorLevel(FsUserHealthData fsUserHealthData);
-
-
-    BigDecimal calculateBMI(BigDecimal height, BigDecimal weight);
-
-    void initHealthData(FsUserHealthProfile fsUserHealthProfile);
-
-    void addHealthData(FsUserHealthData fsUserHealthData);
-
-    FsUserHealthData selectFsUserHealthDataByUserId(FsUserHealthData fsUserHealthData);
-
-    FsUserHealthData selectFsUserHealthDataById(Long id);
-
-    void updateFsUserHealthDataAndLevel(FsUserHealthData fsUserHealthData);
-
-    int selectFsUserHealthDataListCount(FsUserHealthData fsUserHealthData);
-
-    Map<String,Object> selectFsUserHealthDataListInfo(FsUserHealthData fsUserHealthData, Integer pageNum, Integer pageSize);
-
-    Map<String, Object> selectFsUserHealthDataListInfoLatest(FsUserHealthData fsUserHealthData, Integer pageNum, Integer pageSize);
-}

+ 0 - 45
fs-service/src/main/java/com/fs/his/service/IFsUserHealthProfileService.java

@@ -1,45 +0,0 @@
-package com.fs.his.service;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.domain.FsUserHealthProfile;
-
-/**
- * 用户健康档案Service接口
- * 
- * @author fs
- * @date 2025-08-27
- */
-public interface IFsUserHealthProfileService extends IService<FsUserHealthProfile>{
-    /**
-     * 查询用户健康档案
-     * 
-     * @param userId 用户健康档案主键
-     * @return 用户健康档案
-     */
-    FsUserHealthProfile selectFsUserHealthProfileByUserId(Long userId);
-
-    /**
-     * 新增用户健康档案
-     * 
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    int insertFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile);
-
-    /**
-     * 修改用户健康档案
-     * 
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    int updateFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile);
-
-    /**
-     * 删除用户健康档案信息
-     * 
-     * @param userId 用户健康档案主键
-     * @return 结果
-     */
-    int deleteFsUserHealthProfileByUserId(Long userId);
-}

+ 0 - 51
fs-service/src/main/java/com/fs/his/service/IFsUserInfoService.java

@@ -1,51 +0,0 @@
-package com.fs.his.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.domain.FsUserInfo;
-
-import java.util.List;
-
-
-/**
- * 用户信息Service接口
- *
- * @author fs
- * @date 2025-08-25
- */
-public interface IFsUserInfoService extends IService<FsUserInfo> {
-    /**
-     * 查询用户信息
-     *
-     * @param userId 用户信息主键
-     * @return 用户信息
-     */
-    FsUserInfo selectFsUserInfoById(Long userId);
-
-    /**
-     * 查询用户信息列表
-     *
-     * @param  companyUserId 用户信息
-     * @return 用户信息集合
-     */
-    List<FsUserInfo> selectFsUserInfoList(Long companyUserId);
-
-    /**
-     * 新增用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    int insertFsUserInfo(FsUserInfo fsUserInfo);
-
-    /**
-     * 修改用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    void updateFsUserInfo(FsUserInfo fsUserInfo);
-
-    void add(FsUserInfo fsUserInfo);
-
-    int deleteFsUserInfoByUserId(Long userId);
-}

+ 0 - 61
fs-service/src/main/java/com/fs/his/service/IFsUserItineraryService.java

@@ -1,61 +0,0 @@
-package com.fs.his.service;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.domain.FsUserItinerary;
-
-/**
- * 用户日期行程Service接口
- * 
- * @author fs
- * @date 2025-09-04
- */
-public interface IFsUserItineraryService extends IService<FsUserItinerary>{
-    /**
-     * 查询用户日期行程
-     * 
-     * @param id 用户日期行程主键
-     * @return 用户日期行程
-     */
-    FsUserItinerary selectFsUserItineraryById(Long id);
-
-    /**
-     * 查询用户日期行程列表
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 用户日期行程集合
-     */
-    List<FsUserItinerary> selectFsUserItineraryList(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 新增用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    int insertFsUserItinerary(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 修改用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    int updateFsUserItinerary(FsUserItinerary fsUserItinerary);
-
-    /**
-     * 批量删除用户日期行程
-     * 
-     * @param ids 需要删除的用户日期行程主键集合
-     * @return 结果
-     */
-    int deleteFsUserItineraryByIds(Long[] ids);
-
-    /**
-     * 删除用户日期行程信息
-     * 
-     * @param id 用户日期行程主键
-     * @return 结果
-     */
-    int deleteFsUserItineraryById(Long id);
-}

+ 0 - 54
fs-service/src/main/java/com/fs/his/service/IFsUserPayCompetitorsRecordService.java

@@ -1,54 +0,0 @@
-package com.fs.his.service;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.domain.FsUserPayCompetitorsRecord;
-
-/**
- * 用户购买竞品信息记录Service接口
- * 
- * @author fs
- * @date 2025-08-26
- */
-public interface IFsUserPayCompetitorsRecordService extends IService<FsUserPayCompetitorsRecord>{
-    /**
-     * 查询用户购买竞品信息记录
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 用户购买竞品信息记录
-     */
-    FsUserPayCompetitorsRecord selectFsUserPayCompetitorsRecordById(Long id);
-
-    /**
-     * 查询用户购买竞品信息记录列表
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 用户购买竞品信息记录集合
-     */
-    List<FsUserPayCompetitorsRecord> selectFsUserPayCompetitorsRecordList(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-    /**
-     * 新增用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    int insertFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-    /**
-     * 修改用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    int updateFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord);
-
-
-    /**
-     * 删除用户购买竞品信息记录信息
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 结果
-     */
-    int deleteFsUserPayCompetitorsRecordById(Long id);
-}

+ 0 - 53
fs-service/src/main/java/com/fs/his/service/IFsUserPayRecordService.java

@@ -1,53 +0,0 @@
-package com.fs.his.service;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.fs.his.domain.FsUserPayRecord;
-
-/**
- * 用户购买服务信息记录Service接口
- * 
- * @author fs
- * @date 2025-08-26
- */
-public interface IFsUserPayRecordService extends IService<FsUserPayRecord>{
-    /**
-     * 查询用户购买服务信息记录
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 用户购买服务信息记录
-     */
-    FsUserPayRecord selectFsUserPayRecordById(Long id);
-
-    /**
-     * 查询用户购买服务信息记录列表
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 用户购买服务信息记录集合
-     */
-    List<FsUserPayRecord> selectFsUserPayRecordList(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 新增用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    int insertFsUserPayRecord(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 修改用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    int updateFsUserPayRecord(FsUserPayRecord fsUserPayRecord);
-
-    /**
-     * 删除用户购买服务信息记录信息
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 结果
-     */
-    int deleteFsUserPayRecordById(Long id);
-}

+ 0 - 2
fs-service/src/main/java/com/fs/his/service/IFsUserService.java

@@ -51,8 +51,6 @@ public interface IFsUserService
      */
     public FsUser selectFsUserByUserId(Long userId);
 
-    public FsUser selectFsUserByUserIdForUpdate(Long userId);
-
     /**
      * 通过参数查找用户
      * @param param 参数

+ 0 - 343
fs-service/src/main/java/com/fs/his/service/impl/FsAttachmentServiceImpl.java

@@ -1,343 +0,0 @@
-package com.fs.his.service.impl;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
-
-import com.fs.common.core.domain.R;
-import com.fs.common.utils.DateUtils;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fs.common.utils.FileNameExtractor;
-import com.fs.common.utils.StringUtils;
-import com.fs.common.utils.file.FileUtils;
-import com.fs.common.utils.file.ImageUtils;
-import com.fs.his.param.FsAttachmentPageParam;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.fs.his.mapper.FsAttachmentMapper;
-import com.fs.his.domain.FsAttachment;
-import com.fs.his.service.IFsAttachmentService;
-import org.springframework.transaction.annotation.Transactional;
-
-/**
- * 附件管理Service业务层处理
- *
- * @author fs
- * @date 2025-08-23
- */
-@Service
-public class FsAttachmentServiceImpl extends ServiceImpl<FsAttachmentMapper, FsAttachment> implements IFsAttachmentService {
-
-    /**
-     * 查询附件管理
-     *
-     * @param attachmentId 附件管理主键
-     * @return 附件管理
-     */
-    @Override
-    public FsAttachment selectFsAttachmentByAttachmentId(Long attachmentId) {
-        return baseMapper.selectFsAttachmentByAttachmentId(attachmentId);
-    }
-
-    /**
-     * 查询附件管理列表
-     *
-     * @param fsAttachment 附件管理
-     * @return 附件管理
-     */
-    @Override
-    public List<FsAttachment> selectFsAttachmentList(FsAttachment fsAttachment) {
-        return baseMapper.selectFsAttachmentList(fsAttachment);
-    }
-
-    @Override
-    public List<FsAttachment> selectFsAttachmentList(FsAttachmentPageParam fsAttachment) {
-        List<FsAttachment> list = baseMapper.selectFsAttachmentListPage(fsAttachment);
-        //查询文件夹大小
-        for (FsAttachment attachment : list) {
-            long size = 0;
-            if (attachment.getType() == 0){
-                FsAttachment queryParam = new FsAttachment();
-                queryParam.setParentId(attachment.getAttachmentId());
-                queryParam.setUserId(attachment.getUserId());
-                List<FsAttachment> list1 = baseMapper.selectFsAttachmentList(queryParam);
-            } else {
-                size = size + attachment.getSize();
-            }
-        }
-        return list;
-    }
-
-    /**
-     * 新增附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public R insertFsAttachment(FsAttachment fsAttachment) {
-        if (fsAttachment.getUserId() == null) {
-            return R.error("未获取到创建人!");
-        }
-        Integer type = fsAttachment.getType();
-        //获取文件名
-        String fileName = fsAttachment.getFileName();
-        //查询文件名是否存在
-        FsAttachment queryParam = new FsAttachment();
-        queryParam.setUserId(fsAttachment.getUserId());
-        queryParam.setParentId(fsAttachment.getParentId());
-        queryParam.setType(fsAttachment.getType());
-        queryParam.setFileName(fsAttachment.getFileName());
-        List<FsAttachment> list = selectFsAttachmentList(queryParam);
-        if (type == null) {
-            return R.error("请选择创建文件还是文件夹!");
-        } else if (type == 1) {
-            //文件
-            if (StringUtils.isBlank(fsAttachment.getUrl())) {
-                return R.error("文件不存在");
-            }
-            //上传类型为文件时可获取为文件名称
-            if (StringUtils.isBlank(fileName)) {
-                fileName = FileNameExtractor.getFileNameFromUrl(fsAttachment.getUrl());
-                list = selectFsAttachmentList(queryParam);
-            }
-            if (list != null && !list.isEmpty()) {
-                if (fileName.contains(".")) {
-                    int index = fileName.lastIndexOf(".");
-                    String name = fileName.substring(0, index);
-                    fileName = name + "(" + (list.size() + 1) + ")" + "." + fileName.substring(index + 1);
-                }
-
-            }
-            long size = Objects.requireNonNull(ImageUtils.getImage(fsAttachment.getUrl())).length / 1024; // 单位为 KB
-            fsAttachment.setSize(size);
-        } else if (type == 0) {
-            //文件夹
-            if (StringUtils.isBlank(fsAttachment.getFileName())) {
-                return R.error("文件夹名称不能为空");
-            }
-            if (list != null && !list.isEmpty()) {
-                fileName = fileName + "(" + (list.size() + 1) + ")";
-
-            }
-        } else if (type == 2) {
-            //体检报告
-            if (StringUtils.isBlank(fsAttachment.getUrl())) {
-                return R.error("体检报告不存在");
-            }
-            if (StringUtils.isBlank(fsAttachment.getFileName())) {
-                return R.error("名称不能为空");
-            }
-            if (list != null && !list.isEmpty()) {
-                fileName = fileName + "(" + (list.size() + 1) + ")";
-
-            }
-        }
-
-
-        fsAttachment.setFileName(fileName);
-        if (fsAttachment.getParentId() == null) {
-            fsAttachment.setParentId(0L);
-        }
-        FsAttachment parentItem = new FsAttachment();
-        if (fsAttachment.getParentId() != 0) {
-            //查询父文件是否是文件夹
-            parentItem = selectFsAttachmentByAttachmentId(fsAttachment.getParentId());
-            if (parentItem == null) {
-                return R.error("上级文件夹不存在");
-            } else {
-                if (parentItem.getType() != 0) {
-                    return R.error("上级文件夹不存在!");
-                }
-            }
-        }
-        fsAttachment.setCreateTime(DateUtils.getNowDate());
-        int i = baseMapper.insertFsAttachment(fsAttachment);
-        //修改文件夹大小
-        if (i>0 && fsAttachment.getType() == 1 && fsAttachment.getParentId() != 0) {
-            Long size = parentItem.getSize();
-            parentItem.setSize(size + fsAttachment.getSize());
-            parentItem.setUpdateTime(fsAttachment.getCreateTime());
-            baseMapper.updateFsAttachment(parentItem);
-        }
-        return i>0 ? R.ok() : R.error();
-    }
-
-    /**
-     * 修改附件管理
-     *
-     * @param fsAttachment 附件管理
-     * @return 结果
-     */
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public R updateFsAttachment(FsAttachment fsAttachment) {
-        if (fsAttachment.getUserId() == null) {
-            return R.error("未获取到修改人!");
-        }
-        FsAttachment oldAttachment = baseMapper.selectFsAttachmentByAttachmentId(fsAttachment.getAttachmentId());
-        if (oldAttachment == null) {
-            return R.error("未查到该文件!");
-        }
-        Integer type = fsAttachment.getType();
-        if (type == null) {
-            type = oldAttachment.getType();
-            fsAttachment.setType(type);
-        }
-        if (!Objects.equals(oldAttachment.getUserId(), fsAttachment.getUserId()) || !Objects.equals(oldAttachment.getType(), type)) {
-            return R.error("非本人修改/不支持修改文件类型");
-        }
-
-        //获取文件名
-        String fileName = fsAttachment.getFileName();
-        //查询文件名是否存在
-        FsAttachment queryParam = new FsAttachment();
-        if (StringUtils.isNotBlank(fileName) && !oldAttachment.getFileName().equals(fileName)) {
-            queryParam.setUserId(fsAttachment.getUserId());
-            queryParam.setParentId(fsAttachment.getParentId());
-            queryParam.setType(fsAttachment.getType());
-            queryParam.setFileName(fsAttachment.getFileName());
-        }
-
-
-        if (type == 1) {
-            //文件
-            if (StringUtils.isBlank(fsAttachment.getUrl()) && StringUtils.isBlank(oldAttachment.getUrl())) {
-                return R.error("文件不存在");
-            }
-            //上传类型为文件时可获取为文件名称
-            if (StringUtils.isBlank(fileName) && StringUtils.isBlank(oldAttachment.getFileName())) {
-                fileName = FileNameExtractor.getFileNameFromUrl(fsAttachment.getUrl());
-                queryParam.setFileName(fsAttachment.getFileName());
-                List<FsAttachment> list = selectFsAttachmentList(queryParam);
-                if (list != null && !list.isEmpty()) {
-                    if (fileName.contains(".")) {
-                        int index = fileName.lastIndexOf(".");
-                        String name = fileName.substring(0, index);
-                        fileName = name + "(" + (list.size() + 1) + ")" + "." + fileName.substring(index + 1);
-                    }
-
-                }
-                long size = Objects.requireNonNull(ImageUtils.getImage(fsAttachment.getUrl())).length / 1024; // 单位为 KB
-                fsAttachment.setSize(size);
-            } else {
-                fsAttachment.setSize(oldAttachment.getSize());
-            }
-
-        } else if (type == 0) {
-            //文件夹
-            if (StringUtils.isBlank(fsAttachment.getFileName()) && StringUtils.isBlank(oldAttachment.getFileName())) {
-                return R.error("文件夹名称不能为空");
-            }
-            queryParam.setFileName(fsAttachment.getFileName());
-            List<FsAttachment> list = selectFsAttachmentList(queryParam);
-            if (list != null && !list.isEmpty()) {
-                fileName = fileName + "(" + (list.size() + 1) + ")";
-
-            }
-        } else if (type == 2) {
-            //体检报告
-            if (StringUtils.isBlank(fsAttachment.getUrl()) && StringUtils.isBlank(oldAttachment.getUrl())) {
-                return R.error("体检报告不存在");
-            }
-            if (StringUtils.isBlank(fsAttachment.getFileName()) && StringUtils.isBlank(oldAttachment.getFileName())) {
-                return R.error("名称不能为空");
-            }
-            List<FsAttachment> list = selectFsAttachmentList(queryParam);
-            if (list != null && !list.isEmpty()) {
-                fileName = fileName + "(" + (list.size() + 1) + ")";
-
-            }
-        }
-
-
-        fsAttachment.setFileName(fileName);
-        if (fsAttachment.getParentId() == null) {
-            fsAttachment.setParentId(oldAttachment.getParentId());
-        }
-        FsAttachment parentItem = selectFsAttachmentByAttachmentId(fsAttachment.getParentId());
-        if (fsAttachment.getParentId() != null && !fsAttachment.getParentId().equals(oldAttachment.getParentId())) {
-            if (fsAttachment.getParentId() != 0) {
-                //查询父文件是否是文件夹
-                if (parentItem == null) {
-                    return R.error("上级文件夹不存在");
-                } else {
-                    if (parentItem.getType() != 0) {
-                        return R.error("上级文件夹不存在!");
-                    }
-                }
-            }
-        }
-
-        fsAttachment.setUpdateTime(DateUtils.getNowDate());
-        int i = baseMapper.updateFsAttachment(fsAttachment);
-        //修改文件夹大小
-        if (i>0 && fsAttachment.getType() == 1 && fsAttachment.getParentId() != 0) {
-            Long size = parentItem.getSize();
-            parentItem.setSize(size - oldAttachment.getSize() + fsAttachment.getSize());
-            parentItem.setUpdateTime(fsAttachment.getUpdateTime());
-            baseMapper.updateFsAttachment(parentItem);
-        }
-        return i > 0 ? R.ok() : R.error();
-    }
-
-    /**
-     * 批量删除附件管理
-     *
-     * @param attachmentIds 需要删除的附件管理主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsAttachmentByAttachmentIds(Long[] attachmentIds) {
-        if(attachmentIds != null && attachmentIds.length > 0) {
-            for (Long attachmentId : attachmentIds) {
-                FsAttachment fsAttachment = baseMapper.selectFsAttachmentByAttachmentId(attachmentId);
-                if (fsAttachment != null && fsAttachment.getType() == 1 && fsAttachment.getParentId() != 0) {
-                    FsAttachment folder = baseMapper.selectFsAttachmentByAttachmentId(fsAttachment.getParentId());
-                    if (folder != null) {
-                        //修改文件夹大小
-                        Long size = folder.getSize();
-                        folder.setSize(size - fsAttachment.getSize());
-                        folder.setUpdateTime(DateUtils.getNowDate());
-                        baseMapper.updateFsAttachment(folder);
-                    }
-                }
-            }
-        }
-
-        return baseMapper.deleteFsAttachmentByAttachmentIds(attachmentIds);
-    }
-
-    /**
-     * 删除附件管理信息
-     *
-     * @param attachmentId 附件管理主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsAttachmentByAttachmentId(Long attachmentId) {
-        FsAttachment fsAttachment = baseMapper.selectFsAttachmentByAttachmentId(attachmentId);
-        if (fsAttachment != null && fsAttachment.getType() == 1) {
-            FsAttachment folder = baseMapper.selectFsAttachmentByAttachmentId(fsAttachment.getParentId());
-            //修改文件夹大小
-            Long size = folder.getSize();
-            folder.setSize(size - fsAttachment.getSize());
-            folder.setUpdateTime(DateUtils.getNowDate());
-            baseMapper.updateFsAttachment(folder);
-        }
-        return baseMapper.deleteFsAttachmentByAttachmentId(attachmentId);
-    }
-
-    @Override
-    public FsAttachment selectFsAttachmentByFolderName(String folderName) {
-        return baseMapper.selectFsAttachmentByFolderName(folderName);
-    }
-
-    @Override
-    public int deleteFsAttachmentByReportId(Long reportId) {
-        return baseMapper.deleteFsAttachmentByReportId(reportId);
-    }
-}

+ 0 - 777
fs-service/src/main/java/com/fs/his/service/impl/FsUserHealthDataServiceImpl.java

@@ -1,777 +0,0 @@
-package com.fs.his.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fs.common.constant.Constants;
-import com.fs.common.core.redis.RedisCache;
-import com.fs.common.exception.ServiceException;
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.StringUtils;
-import com.fs.his.config.HealthIndicatorConfig;
-import com.fs.his.domain.FsUserHealthData;
-import com.fs.his.domain.FsUserHealthProfile;
-import com.fs.his.domain.FsUserInfo;
-import com.fs.his.enums.HealthDataLevelEnum;
-import com.fs.his.enums.HealthDataTypeEnum;
-import com.fs.his.mapper.FsUserHealthDataMapper;
-import com.fs.his.service.IFsUserHealthDataService;
-import com.fs.his.service.IFsUserHealthProfileService;
-import com.fs.his.service.IFsUserInfoService;
-import com.fs.system.domain.SysConfig;
-import com.fs.system.service.ISysConfigService;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 用户身体检测数据Service业务层处理
- *
- * @author fs
- * @date 2025-08-27
- */
-@Service
-public class FsUserHealthDataServiceImpl extends ServiceImpl<FsUserHealthDataMapper, FsUserHealthData> implements IFsUserHealthDataService {
-
-
-    @Autowired
-    private RedisCache redisCache;
-
-    @Autowired
-    private ISysConfigService configService;
-
-    @Autowired
-    private IFsUserInfoService fsUserInfoService;
-    @Autowired
-    private IFsUserHealthProfileService fsUserHealthProfileService;
-
-    private static final String HEALTH_INDICATOR_KEY = "his.healthIndexConfig";
-
-
-    /**
-     * 查询用户身体检测数据列表
-     *
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 用户身体检测数据
-     */
-    @Override
-    public List<FsUserHealthData> selectFsUserHealthDataList(FsUserHealthData fsUserHealthData) {
-        return baseMapper.selectFsUserHealthDataList(fsUserHealthData);
-    }
-
-    /**
-     * @Description: 查询用户身体检测数据列表 获取数量
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 14:58
-     */
-
-    @Override
-    public int selectFsUserHealthDataListCount(FsUserHealthData fsUserHealthData) {
-        return baseMapper.selectFsUserHealthDataListCount(fsUserHealthData);
-    }
-
-    @Override
-    public Map<String, Object> selectFsUserHealthDataListInfo(FsUserHealthData fsUserHealthData, Integer pageNum, Integer pageSize) {
-        // 时间格式字段处理
-        if (StringUtils.isNotEmpty(fsUserHealthData.getTimeSearch())) {
-            Map<String, Object> timeMap = new HashMap<>();
-            // 时间格式处理 2025-01-21 2025-01-01;2025-01-12 2025-01
-            if (fsUserHealthData.getTimeSearch().contains(";")) {
-                String[] timeArr = fsUserHealthData.getTimeSearch().split(";");
-                timeMap.put("beginTime", timeArr[0]);
-                timeMap.put("endTime", timeArr[1]);
-            } else if (fsUserHealthData.getTimeSearch().length() == 10) {
-                fsUserHealthData.setMeasurementDate(DateUtils.parseDate(fsUserHealthData.getTimeSearch()));
-            } else if (fsUserHealthData.getTimeSearch().length() == 7) {
-                // 按月 取当月第一个和最后一天
-                timeMap.put("beginTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.getStartOfMonth(DateUtils.parseDate(fsUserHealthData.getTimeSearch()))));
-                timeMap.put("endTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.getEndOfMonth(DateUtils.parseDate(fsUserHealthData.getTimeSearch()))));
-            }
-            fsUserHealthData.setParams(timeMap);
-        }
-
-
-        PageHelper.startPage(pageNum, pageSize);
-        List<FsUserHealthData> list = selectFsUserHealthDataList(fsUserHealthData);
-
-        Map<String, Object> data = new HashMap<>();
-        data.put("data", new PageInfo<>(list));
-
-
-        // 如果测量等级是空 需要查询各等级(无-0,轻微-1,严重-2) 数量
-        if (fsUserHealthData.getLevel() == null) {
-            Map<String, Object> count = new HashMap<>();
-            for (int i = 0; i < 3; i++) {
-                fsUserHealthData.setLevel(i);
-                int num = selectFsUserHealthDataListCount(fsUserHealthData);
-                count.put("count" + i, num);
-            }
-            data.put("count", count);
-        }
-        return data;
-    }
-
-    /**
-     * @Description: 查询用户身体检测数据列表 获取最新的数据
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/5 16:01
-     */
-    @Override
-    public Map<String, Object> selectFsUserHealthDataListInfoLatest(FsUserHealthData fsUserHealthData, Integer pageNum, Integer pageSize) {
-        if (StringUtils.isEmpty(fsUserHealthData.getTimeSearch())) {
-            throw new ServiceException("查询时间不能为空");
-        }
-
-        List<FsUserHealthData> list = Collections.emptyList();
-        Map<String, Object> timeMap = new HashMap<>();
-
-        // 时间格式处理 2025-01-21 2025-01-01;2025-01-12 2025-01
-
-        if (fsUserHealthData.getTimeSearch().contains(";")) {
-            String[] timeArr = fsUserHealthData.getTimeSearch().split(";");
-            timeMap.put("beginTime", timeArr[0]);
-            timeMap.put("endTime", timeArr[1]);
-            // 获取每天最新的数据
-            fsUserHealthData.setParams(timeMap);
-            list = baseMapper.selectFsUserHealthDataListInfoLatest(fsUserHealthData);
-            list.forEach(item -> {// 设置周
-                item.setWeek(DateUtils.getWeek(item.getMeasurementDate()));
-            });
-        } else if (fsUserHealthData.getTimeSearch().length() == 10) {
-            fsUserHealthData.setMeasurementDate(DateUtils.parseDate(fsUserHealthData.getTimeSearch()));
-            PageHelper.startPage(pageNum, pageSize);
-            list = selectFsUserHealthDataList(fsUserHealthData);
-        } else if (fsUserHealthData.getTimeSearch().length() == 7) {
-            // 按月 取当月第一个和最后一天
-            timeMap.put("beginTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.getStartOfMonth(DateUtils.parseDate(fsUserHealthData.getTimeSearch()))));
-            timeMap.put("endTime", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.getEndOfMonth(DateUtils.parseDate(fsUserHealthData.getTimeSearch()))));
-            fsUserHealthData.setParams(timeMap);
-            list = baseMapper.selectFsUserHealthDataListInfoLatest(fsUserHealthData);
-        }
-
-        Map<String, Object> data = new HashMap<>();
-        data.put("data", new PageInfo<>(list));
-
-
-        // 如果测量等级是空 需要查询各等级(无-0,轻微-1,严重-2) 数量
-        if (fsUserHealthData.getLevel() == null) {
-            Map<String, Object> count = new HashMap<>();
-            for (int i = 0; i < 3; i++) {
-                fsUserHealthData.setLevel(i);
-                int num = selectFsUserHealthDataListCount(fsUserHealthData);
-                count.put("count" + i, num);
-            }
-            data.put("count", count);
-        }
-
-        return data;
-    }
-
-    /**
-     * 新增用户身体检测数据
-     *
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserHealthData(FsUserHealthData fsUserHealthData) {
-        return baseMapper.insertFsUserHealthData(fsUserHealthData);
-    }
-
-    /**
-     * 修改用户身体检测数据
-     *
-     * @param fsUserHealthData 用户身体检测数据
-     * @return 结果
-     */
-    @Override
-    public int updateFsUserHealthData(FsUserHealthData fsUserHealthData) {
-        return baseMapper.updateFsUserHealthData(fsUserHealthData);
-    }
-
-    /**
-     * 删除用户身体检测数据信息
-     *
-     * @param id 用户身体检测数据主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserHealthDataById(Long id) {
-        return baseMapper.deleteFsUserHealthDataById(id);
-    }
-
-
-    /**
-     * @Description: 查询用户身体检测最新数据
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/8/29 17:48
-     */
-    @Override
-    public FsUserHealthData selectFsUserHealthDataByUserId(FsUserHealthData fsUserHealthData) {
-
-        return baseMapper.selectFsUserHealthDataByUserId(fsUserHealthData);
-    }
-
-    /**
-     * @Description: 查询用户身体检测数据详情
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/8/29 17:48
-     */
-    @Override
-    public FsUserHealthData selectFsUserHealthDataById(Long Id) {
-        return baseMapper.selectFsUserHealthDataById(Id);
-    }
-
-    /**
-     * @Description: 更新用户身体检测数据
-     * @Param: fsUserHealthData
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/1 10:50
-     */
-    @Override
-    public void updateFsUserHealthDataAndLevel(FsUserHealthData fsUserHealthData) {
-        // 优化后的代码
-        int type = fsUserHealthData.getMeasurementType();
-        boolean hasValue1 = fsUserHealthData.getValue1() != null;
-        boolean hasValue2 = fsUserHealthData.getValue2() != null;
-
-        switch (type) {
-            case 3: // 血压
-            case 5: // BMI
-                // 参数校验: 血压和BMI的Value1和Value2必须同时有值或同时没值
-                if (hasValue1 != hasValue2) {
-                    throw new ServiceException("血压和BMI必须同时有值或同时没值");
-                }
-
-                if (hasValue1 && hasValue2) {
-                    if (type == 3) { // 血压
-                        // 计算测量值对应等级
-                        int level = getHealthIndicatorLevel(fsUserHealthData);
-                        fsUserHealthData.setLevel(level);
-                    } else { // BMI
-                        // 保存原始value1
-                        BigDecimal originalValue1 = fsUserHealthData.getValue1();
-                        // 计算BMI
-                        BigDecimal bmi = calculateBMI(fsUserHealthData.getValue1(), fsUserHealthData.getValue2());
-                        fsUserHealthData.setValue1(bmi);
-                        // 计算测量值对应等级
-                        int level = getHealthIndicatorLevel(fsUserHealthData);
-                        fsUserHealthData.setLevel(level);
-                        // 恢复原始value1
-                        fsUserHealthData.setValue1(originalValue1);
-                    }
-                }
-                // 更新用户身体检测数据信息
-                if (updateFsUserHealthData(fsUserHealthData) <= 0) {
-                    throw new ServiceException("用户身体检测数据修改失败");
-                }
-                break;
-
-            case 0: // 腰围
-            case 1: // 臀围
-                // 更新用户身体检测数据信息
-                if (updateFsUserHealthData(fsUserHealthData) <= 0) {
-                    throw new ServiceException("用户身体检测数据修改失败");
-                }
-                break;
-
-            case 2: // 血糖
-                // 计算测量值对应等级
-                int level = getHealthIndicatorLevel(fsUserHealthData);
-                fsUserHealthData.setLevel(level);
-                // 更新用户身体检测数据信息
-                if (updateFsUserHealthData(fsUserHealthData) <= 0) {
-                    throw new ServiceException("用户身体检测数据修改失败");
-                }
-                break;
-
-            case 4: // 尿酸
-                // 根据userId查询用户信息
-                FsUserInfo user = fsUserInfoService.selectFsUserInfoById(fsUserHealthData.getUserId());
-                if (user.getSex() == null || "2".equals(String.valueOf(user.getSex()))) {
-                    throw new ServiceException("尿酸判断需要性别信息,请完善用户性别信息");
-                }
-                fsUserHealthData.setSex(user.getSex());
-                // 计算测量值对应等级
-                int uricLevel = getHealthIndicatorLevel(fsUserHealthData);
-                fsUserHealthData.setLevel(uricLevel);
-                // 更新用户身体检测数据信息
-                if (updateFsUserHealthData(fsUserHealthData) <= 0) {
-                    throw new ServiceException("用户身体检测数据修改失败");
-                }
-                break;
-
-            default:
-                throw new ServiceException("不支持的测量类型");
-        }
-
-    }
-
-
-    /**
-     * @Description: 解析健康指标
-     * @Param: []
-     * @Return: java.util.Map<java.lang.String, java.lang.Object>
-     * @Author xgb
-     * @Date 2025/8/28 9:10
-     */
-    public HealthIndicatorConfig parseHealthIndicator() {
-        String configKey = Constants.SYS_CONFIG_KEY + HEALTH_INDICATOR_KEY;
-        String str = redisCache.getCacheObject(Constants.SYS_CONFIG_KEY + HEALTH_INDICATOR_KEY);
-        // str JSON串转 map
-        if (StringUtils.isEmpty(str)) {
-            // 查询sys_config表配置
-            SysConfig config = configService.selectConfigByConfigKey(HEALTH_INDICATOR_KEY);
-            if (config != null && StringUtils.isNotEmpty(config.getConfigValue())) {
-                redisCache.setCacheObject(configKey, config.getConfigValue());
-                return HealthIndicatorConfig.fromJson(config.getConfigValue());
-            } else {
-                throw new ServiceException("健康指标配置不存在,请联系管理人员");
-            }
-        }
-
-        // 解析健康指标JSON 放入HealthIndicatorConfig
-        return HealthIndicatorConfig.fromJson(str);
-    }
-
-    /**
-     * @Description: 解析健康指标配置
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/3 10:55
-     */
-    private String parseHealthIndicatorConfig(Map<String, Object> map, String key, String level) {
-        if (StringUtils.equalsAny(key, "severity", "male", "female")) {
-            // 处理严重程度级别
-            List<Map<String, Object>> severityList = (List<Map<String, Object>>) map.get(key);
-            for (Map<String, Object> severity : severityList) {
-                if (level.equals(severity.get("level"))) {
-                    return (String) severity.get("range");
-                }
-            }
-        } else {
-            // 处理普通键值
-            Map<String, Object> keyMap = (Map<String, Object>) map.get(key);
-            if (keyMap != null) {
-                return (String) keyMap.get(level);
-            }
-        }
-        return null;
-    }
-
-    private String parseHealthIndicatorConfigTwo(Map<String, Object> map, String key, String level, String subType) {
-        if ("severity".equals(key)) {
-            // 处理血压严重程度级别
-            List<Map<String, Object>> severityList = (List<Map<String, Object>>) map.get("severity");
-            for (Map<String, Object> severity : severityList) {
-                // 同时匹配级别和血压类型(收缩压/舒张压)
-                if (level.equals(severity.get("level")) && subType.equals(severity.get("type"))) {
-                    return (String) severity.get("range");
-                }
-            }
-        } else {
-            // 处理保护范围等
-            Map<String, Object> keyMap = (Map<String, Object>) map.get(key);
-            if (keyMap != null) {
-                return (String) keyMap.get(level);
-            }
-        }
-        return null;
-    }
-
-    /**
-     * 获取健康指标值
-     *
-     * @param config  健康指标配置对象
-     * @param type    指标类型 (bloodGlucose 血糖, bloodPressure 血压, uricAcid 尿酸(分男女), bmi 胖瘦)
-     * @param key     指标键值 (bloodGlucose使用(fasting 正常, post1Hour 饭后一小时, post2Hour 饭后两小时 )尿酸(male 男性 female 女性) severity 等)
-     * @param level   指标级别 (normal 正常, mild 轻微, severe 严重 等)
-     * @param subType 子类型 (bloodPressure时使用,systolic 收缩压, diastolic 舒张压)
-     * @return 指标值
-     */
-    public String getHealthIndicatorValue(HealthIndicatorConfig config, String type, String key, String level, String subType) {
-        if (config == null) {
-            throw new ServiceException("健康指标配置不存在,请联系管理人员");
-        }
-
-        try {
-            switch (type) {
-                case "bloodGlucose": // 血糖
-                    return parseHealthIndicatorConfig(config.getBloodGlucose(), key, level);
-                case "bloodPressure": // 血压
-                    return parseHealthIndicatorConfigTwo(config.getBloodPressure(), key, level, subType);
-                case "uricAcid":// 尿酸
-                    return parseHealthIndicatorConfig(config.getUricAcid(), key, level);
-                case "waist":// 腰围
-                    return parseHealthIndicatorConfig(config.getWaist(), key, level);
-                case "hip":// 臀围
-                    return parseHealthIndicatorConfig(config.getHip(), key, level);
-                case "bmi":// BMI
-                    return parseHealthIndicatorConfig(config.getBmi(), key, level);
-                default:
-                    throw new ServiceException("不支持的健康指标类型: " + type);
-            }
-        } catch (Exception e) {
-            throw new ServiceException("获取健康指标值失败: " + e.getMessage());
-        }
-    }
-
-    /**
-     * 获取健康指标值 (重载方法,用于不需要subType的场景)
-     *
-     * @param config 健康指标配置对象
-     * @param type   指标类型
-     * @param key    指标键值
-     * @param level  指标级别
-     * @return 指标值
-     */
-    public String getHealthIndicatorValue(HealthIndicatorConfig config, String type, String key, String level) {
-        return getHealthIndicatorValue(config, type, key, level, null);
-    }
-
-    /**
-     * @Description: 获取健康指标级别 根据测量值判断指标级别
-     * @Param: [fsUserHealthData]
-     * @Return: int 0 表示正常,1 表示轻度,2 表示重度 3  异常数据(不在测量值范围内)
-     * @Author xgb
-     * @Date 2025/8/28 17:19
-     */
-    @Override
-    public int getHealthIndicatorLevel(FsUserHealthData fsUserHealthData) {
-        HealthIndicatorConfig config = parseHealthIndicator();
-
-        HealthDataTypeEnum dataType = HealthDataTypeEnum.getEnumByKey(fsUserHealthData.getMeasurementType());
-        if (dataType == null) {
-            throw new ServiceException("不支持的健康指标类型: " + fsUserHealthData.getMeasurementType());
-        }
-
-        // 定义健康级别的优先级顺序和对应常量
-        String[] levels = {HealthIndicatorConfig.NORMAL, HealthIndicatorConfig.MILD, HealthIndicatorConfig.SEVERE};
-        int[] levelValues = {0, 1, 2};
-
-        BigDecimal userValue = fsUserHealthData.getValue1();
-
-        // 根据不同的测量类型处理
-        switch (dataType) {
-            case GLUCOSE: // 血糖
-            case BMI: // BMI指标(胖瘦)
-                // 遍历各个健康级别,检查用户数据是否符合该级别范围
-                for (int i = 0; i < levels.length; i++) {
-                    String rule = getHealthIndicatorValue(config, dataType.getType(), HealthIndicatorConfig.SEVERITY, levels[i]);
-                    if (isContain(rule, userValue)) {
-                        return levelValues[i];
-                    }
-                }
-                // 如果没有匹配的级别,则返回异常数据
-                return HealthDataLevelEnum.EXCEPTION.getValue();
-            case BLOOD_PRESSURE: // 血压
-                // 血压判断 从严重,轻微,正常顺序判断  只要收缩压和舒张压其中一个符合该级别范围,则返回该级别
-                // 获取血压的子类型
-                String[] subTypes = {HealthIndicatorConfig.SYSTOLIC, HealthIndicatorConfig.DIASTOLIC};
-                // 遍历各个健康级别,检查用户数据是否符合该级别范围
-                for (int i = 2; i >= 0; i--) {
-                    // 判断收缩压
-                    String rule = getHealthIndicatorValue(config, dataType.getType(), HealthIndicatorConfig.SEVERITY, levels[i], subTypes[0]);
-                    if (isContain(rule, userValue)) {
-                        return levelValues[i];
-                    }
-                    // 判断舒张压
-                    BigDecimal userValue2 = fsUserHealthData.getValue2();
-                    rule = getHealthIndicatorValue(config, dataType.getType(), HealthIndicatorConfig.SEVERITY, levels[i], subTypes[1]);
-                    if (isContain(rule, userValue2)) {
-                        return levelValues[i];
-                    }
-                }
-                // 如果没有匹配的级别,则返回异常数据
-                return HealthDataLevelEnum.EXCEPTION.getValue();
-            // 可以继续添加其他类型,如血压、尿酸等
-            case URIC_ACID: // 尿酸
-            case WAIST: // 腰围
-            case HIP: // 臀围
-                // 判断性别 0-男 1-女
-                int sex = fsUserHealthData.getSex();
-                String key;
-
-                if (0 == sex) { // 男
-                    key = HealthIndicatorConfig.MALE;
-                } else if (1 == sex) { // 女
-                    key = HealthIndicatorConfig.FEMALE;
-                } else {
-                    throw new ServiceException("不支持的性别类型: " + sex);
-                }
-                for (int i = 0; i < levels.length; i++) {
-                    String rule = getHealthIndicatorValue(config, dataType.getType(), key, levels[i]);
-                    if (isContain(rule, userValue)) {
-                        return levelValues[i];
-                    }
-
-                }
-                // 如果没有匹配的级别,则返回异常数据
-                return HealthDataLevelEnum.EXCEPTION.getValue();
-            default:
-                throw new ServiceException("未实现的健康指标类型处理: " + dataType.getType());
-        }
-    }
-
-    /**
-     * @Description: 根据身高体重计算BMI
-     * @Param: height 身高cm weight 体重kg
-     * @Return: BMI值
-     * @Author xgb
-     * @Date 2025/8/29 11:00
-     */
-    @Override
-    public BigDecimal calculateBMI(BigDecimal height, BigDecimal weight) {
-        if (height == null || weight == null) {
-            throw new IllegalArgumentException("身高和体重不能为空");
-        }
-
-        if (height.compareTo(BigDecimal.ZERO) <= 0 || weight.compareTo(BigDecimal.ZERO) <= 0) {
-            throw new IllegalArgumentException("身高和体重必须大于0");
-        }
-
-        // 将身高从厘米转换为米 (除以100)
-        BigDecimal heightInMeter = height.divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_UP);
-
-        // 计算BMI: 体重(kg) / 身高²(m²)
-        return weight.divide(heightInMeter.multiply(heightInMeter), 1, RoundingMode.HALF_UP);
-    }
-
-    /**
-     * @Description: 初始化健康档案时登记初始化用户健康数据
-     * @Param: fsUserHealthProfile
-     * @Return:
-     * @Author xgb
-     * @Date 2025/8/29 13:37
-     */
-    @Override
-    public void initHealthData(FsUserHealthProfile fsUserHealthProfile) {
-        // 查询档案信息获取登记时间
-        fsUserHealthProfile = fsUserHealthProfileService.selectFsUserHealthProfileByUserId(fsUserHealthProfile.getUserId());
-        if (fsUserHealthProfile == null) {
-            throw new ServiceException("用户健康档案不存在");
-        }
-        // 第一次登记档案的时候 若存在身高体重 BMI 则进行BMI等级判断
-        FsUserHealthData fsUserHealthData = new FsUserHealthData();
-        fsUserHealthData.setUserId(fsUserHealthProfile.getUserId());
-        fsUserHealthData.setMeasurementDate(fsUserHealthProfile.getCreatedTime());
-        fsUserHealthData.setMeasurementTime(fsUserHealthProfile.getCreatedTime());
-        // 若存在身高体重 则登记BMI测量值
-        if (fsUserHealthProfile.getHeight() != null && fsUserHealthProfile.getWeight() != null) {
-            // 计算BMI值
-            BigDecimal bmi = calculateBMI(fsUserHealthProfile.getHeight(), fsUserHealthProfile.getWeight());
-            // 计算BMI等级
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.BMI.getValue());
-            fsUserHealthData.setValue1(bmi);
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setValue1(fsUserHealthProfile.getHeight());
-            fsUserHealthData.setValue2(fsUserHealthProfile.getWeight());
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("BMI数据登记失败");
-            }
-
-        }
-
-        // 若存在血压
-        if (fsUserHealthProfile.getSystolicPressure() != null && fsUserHealthProfile.getDiastolicPressure() != null) {
-
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.BLOOD_PRESSURE.getValue());
-            fsUserHealthData.setValue1(fsUserHealthProfile.getSystolicPressure());
-            fsUserHealthData.setValue2(fsUserHealthProfile.getDiastolicPressure());
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("血压数据登记失败");
-            }
-        }
-
-        // 若存在血糖
-        if (fsUserHealthProfile.getHyperglycemiaValue() != null) {
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.GLUCOSE.getValue());
-            fsUserHealthData.setValue1(fsUserHealthProfile.getHyperglycemiaValue());
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("血糖数据登记失败");
-            }
-        }
-
-        // 若存在尿酸
-        if (fsUserHealthProfile.getHyperuricemiaValue() != null) {
-            // 查询用户信息获取 性别
-            FsUserInfo fsUserInfo = fsUserInfoService.selectFsUserInfoById(fsUserHealthProfile.getUserId());
-            if (fsUserInfo == null || fsUserInfo.getSex() == null) {
-                throw new ServiceException("用户已注销或基础信息未维护性别不存在");
-            }
-
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.URIC_ACID.getValue());
-            fsUserHealthData.setValue1(fsUserHealthProfile.getHyperuricemiaValue());
-            fsUserHealthData.setSex(fsUserInfo.getSex());
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("尿酸数据登记失败");
-            }
-        }
-
-        // 若存在腰围
-        if (fsUserHealthProfile.getWaistCircumference() != null) {
-            // 查询用户信息获取 性别
-            FsUserInfo fsUserInfo = fsUserInfoService.selectFsUserInfoById(fsUserHealthProfile.getUserId());
-            if (fsUserInfo == null || fsUserInfo.getSex() == null) {
-                throw new ServiceException("用户已注销或性别不存在");
-            }
-
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.WAIST.getValue());
-            fsUserHealthData.setValue1(fsUserHealthProfile.getWaistCircumference());
-            fsUserHealthData.setSex(fsUserInfo.getSex());
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("腰围数据登记失败");
-            }
-        }
-
-        // 若存在臀围
-        if (fsUserHealthProfile.getHipCircumference() != null) {
-            // 查询用户信息获取 性别
-            FsUserInfo fsUserInfo = fsUserInfoService.selectFsUserInfoById(fsUserHealthProfile.getUserId());
-            if (fsUserInfo == null || fsUserInfo.getSex() == null) {
-                throw new ServiceException("用户已注销或性别信息不存在");
-            }
-            /** 测量类型(0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI) */
-            fsUserHealthData.setMeasurementType(HealthDataTypeEnum.HIP.getValue());
-            fsUserHealthData.setValue1(fsUserHealthProfile.getHipCircumference());
-            fsUserHealthData.setSex(fsUserInfo.getSex());
-            int healthIndicatorLevel = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(healthIndicatorLevel);
-            if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-                throw new ServiceException("臀围数据登记失败");
-            }
-        }
-    }
-
-    /**
-     * @Description: 新增健康各类型数据 0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI
-     * @Param: fsUserHealthData
-     * @Return:
-     * @Author xgb
-     * @Date 2025/8/29 16:06
-     */
-
-    @Override
-    public void addHealthData(FsUserHealthData fsUserHealthData) {
-        int type = fsUserHealthData.getMeasurementType();
-        // 0-腰围,1-臀围,2-血糖,3-血压,4-尿酸 5-BMI
-        if (type == 0 || type == 1 || type == 4) { // 尿酸查询等级信息时需要性别信息
-            // 根据userId 查询用户信息
-            FsUserInfo user = fsUserInfoService.selectFsUserInfoById(fsUserHealthData.getUserId());
-            if (user.getSex() == null || "2".equals(String.valueOf(user.getSex()))) {
-                throw new ServiceException("尿酸判断需要性别信息,请完善用户性别信息");
-            }
-            fsUserHealthData.setSex(user.getSex());
-        }
-        // 2-血糖,3-血压,4-尿酸 5-BMI 判断等级
-        if (type == 0 || type == 1 || type == 2 || type == 3 || type == 4) {
-            // 计算测量值对应等级
-            int level = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(level);
-        } else if (type == 5) {// BMI 需要用身高体重先计算出BMI
-            // 计算BMI
-            BigDecimal value1 = fsUserHealthData.getValue1();
-            fsUserHealthData.setValue1(calculateBMI(fsUserHealthData.getValue1(), fsUserHealthData.getValue2()));
-            // 计算测量值对应等级
-            int level = getHealthIndicatorLevel(fsUserHealthData);
-            fsUserHealthData.setLevel(level);
-            fsUserHealthData.setValue1(value1);
-        } else {
-            throw new ServiceException("不支持的测量类型");
-        }
-        // 登记检测数据信息
-        if (insertFsUserHealthData(fsUserHealthData) <= 0) {
-            throw new ServiceException("新增用户身体检测数据失败");
-        }
-    }
-
-
-    /**
-     * 判断value1是否在value规则范围内
-     *
-     * @param value  规则字符串,如 "0~100"、"<100"、"≤100"、">100"、"≥100"
-     * @param value1 实际测量值
-     * @return 是否在范围内
-     */
-    private static Boolean isContain(String value, BigDecimal value1) {
-        if (value == null || value1 == null) {
-            throw new ServiceException("参数不能为空");
-        }
-
-        // 处理范围值 "0~100"
-        if (value.contains("~")) {
-            String[] parts = value.split("~");
-            if (parts.length != 2) {
-                throw new ServiceException("无效的范围值格式: " + value);
-            }
-            BigDecimal lower = new BigDecimal(parts[0]);
-            BigDecimal upper = new BigDecimal(parts[1]);
-            return value1.compareTo(lower) >= 0 && value1.compareTo(upper) <= 0;
-        }
-
-        // 处理小于 "<100"
-        if (value.startsWith("<")) {
-            BigDecimal threshold = new BigDecimal(value.substring(1));
-            return value1.compareTo(threshold) < 0;
-        }
-
-        // 处理小于等于 "≤100"
-        if (value.startsWith("≤")) {
-            BigDecimal threshold = new BigDecimal(value.substring(1));
-            return value1.compareTo(threshold) <= 0;
-        }
-
-        // 处理大于 ">100"
-        if (value.startsWith(">")) {
-            BigDecimal threshold = new BigDecimal(value.substring(1));
-            return value1.compareTo(threshold) > 0;
-        }
-
-        // 处理大于等于 "≥100"
-        if (value.startsWith("≥")) {
-            BigDecimal threshold = new BigDecimal(value.substring(1));
-            return value1.compareTo(threshold) >= 0;
-        }
-
-        // 尝试直接转换为数字进行比较
-        try {
-            BigDecimal threshold = new BigDecimal(value);
-            return value1.compareTo(threshold) == 0;
-        } catch (NumberFormatException e) {
-            throw new ServiceException("不支持的指标值规则: " + value + ";请联系管理员处理");
-        }
-
-    }
-
-}

+ 0 - 62
fs-service/src/main/java/com/fs/his/service/impl/FsUserHealthProfileServiceImpl.java

@@ -1,62 +0,0 @@
-package com.fs.his.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fs.his.domain.FsUserHealthProfile;
-import com.fs.his.mapper.FsUserHealthProfileMapper;
-import com.fs.his.service.IFsUserHealthProfileService;
-import org.springframework.stereotype.Service;
-
-/**
- * 用户健康档案Service业务层处理
- *
- * @author fs
- * @date 2025-08-27
- */
-@Service
-public class FsUserHealthProfileServiceImpl extends ServiceImpl<FsUserHealthProfileMapper, FsUserHealthProfile> implements IFsUserHealthProfileService {
-
-    /**
-     * 查询用户健康档案
-     *
-     * @param userId 用户健康档案主键
-     * @return 用户健康档案
-     */
-    @Override
-    public FsUserHealthProfile selectFsUserHealthProfileByUserId(Long userId) {
-        return baseMapper.selectFsUserHealthProfileByUserId(userId);
-    }
-
-    /**
-     * 新增用户健康档案
-     *
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile) {
-        return baseMapper.insertFsUserHealthProfile(fsUserHealthProfile);
-    }
-
-    /**
-     * 修改用户健康档案
-     *
-     * @param fsUserHealthProfile 用户健康档案
-     * @return 结果
-     */
-    @Override
-    public int updateFsUserHealthProfile(FsUserHealthProfile fsUserHealthProfile) {
-        return baseMapper.updateFsUserHealthProfile(fsUserHealthProfile);
-    }
-
-
-    /**
-     * 删除用户健康档案信息
-     *
-     * @param userId 用户健康档案主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserHealthProfileByUserId(Long userId) {
-        return baseMapper.deleteFsUserHealthProfileByUserId(userId);
-    }
-}

+ 0 - 254
fs-service/src/main/java/com/fs/his/service/impl/FsUserInfoServiceImpl.java

@@ -1,254 +0,0 @@
-package com.fs.his.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fs.common.exception.ServiceException;
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.StringUtils;
-import com.fs.his.domain.FsUser;
-import com.fs.his.domain.FsUserInfo;
-import com.fs.his.mapper.FsUserInfoMapper;
-import com.fs.his.mapper.FsUserMapper;
-import com.fs.his.service.IFsUserInfoService;
-import com.fs.his.service.IFsUserService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.List;
-
-/**
- * 用户信息Service业务层处理
- *
- * @author fs
- * @date 2025-08-25
- */
-@Service
-public class FsUserInfoServiceImpl extends ServiceImpl<FsUserInfoMapper, FsUserInfo> implements IFsUserInfoService {
-
-    @Autowired
-    private IFsUserService fsUserService;
-
-    @Autowired
-    private FsUserMapper fsUserMapper;
-
-    /**
-     * 查询用户信息
-     *
-     * @param userId 用户id
-     * @return 用户信息
-     */
-    @Override
-    public FsUserInfo selectFsUserInfoById(Long userId) {
-        return baseMapper.selectFsUserInfoById(userId);
-    }
-
-    /**
-     * 查询用户信息列表
-     *
-     * @param companyUserId 用户信息
-     * @return 用户信息
-     */
-    @Override
-    public List<FsUserInfo> selectFsUserInfoList(Long companyUserId) {
-        return baseMapper.selectFsUserInfoList(companyUserId);
-    }
-
-    /**
-     * 新增用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserInfo(FsUserInfo fsUserInfo) {
-        fsUserInfo.setCreateTime(DateUtils.getNowDate());
-        return baseMapper.insertFsUserInfo(fsUserInfo);
-    }
-
-    /**
-     * 修改用户信息
-     *
-     * @param fsUserInfo 用户信息
-     * @return 结果
-     */
-    @Override
-    @Transactional
-    public void updateFsUserInfo(FsUserInfo fsUserInfo) {
-        // 微信小程序的用户 没有登录fs_user_info表 更新做插入
-        FsUser userQuery = fsUserService.selectFsUserById(fsUserInfo.getUserId());
-        if (userQuery == null || userQuery.getIsDel() == 1) {
-            throw new ServiceException("用户已注销或不存在");
-        }
-
-        FsUserInfo userInfo = baseMapper.selectFsUserInfoByIdOnle(fsUserInfo.getUserId());
-        if (userInfo == null) {// 没有记录需要登记
-            if (StringUtils.isEmpty(fsUserInfo.getPhone())) {
-                throw new ServiceException("手机号不能为空");
-            }
-
-            // 查询手机号
-            FsUserInfo queryByPhone = baseMapper.selectFsUserInfoByPhone(fsUserInfo.getPhone());
-            if (queryByPhone != null) {
-                throw new ServiceException("该手机号用户已存在");
-            }
-
-            // 需登记FsUserInfo 信息
-            if (baseMapper.insertFsUserInfo(fsUserInfo) <= 0) {
-                throw new ServiceException("用户信息登记失败");
-            }
-        } else {
-            // 若手机号有修改 需校验手机号是否已存在 且不修改fs_user表的手机号
-            if (StringUtils.isNotEmpty(fsUserInfo.getPhone())) {
-                if (!userInfo.getPhone().equals(fsUserInfo.getPhone())) {// 若要修改手机号需要验证新的手机号是否存在
-                    FsUserInfo queryByPhone = baseMapper.selectFsUserInfoByPhone(fsUserInfo.getPhone());
-                    if (queryByPhone != null) {
-                        throw new ServiceException("该手机号用户已存在");
-                    }
-                }
-            }
-            if (userInfo.getIsDel() != 0) {// 用户被伪删除
-                fsUserInfo.setIsDel(0);// 恢复
-            }
-            fsUserInfo.setUpdateTime(DateUtils.getNowDate());
-            if (baseMapper.updateFsUserInfo(fsUserInfo) <= 0) {
-                throw new ServiceException("用户信息修改失败");
-            }
-        }
-
-        // 更新用户信息 不修改手机号
-        if (StringUtils.isNotEmpty(fsUserInfo.getAvatar()) || fsUserInfo.getSex() != null || fsUserInfo.getCompanyUserId() != null) {
-            FsUser user = new FsUser();
-            user.setUserId(fsUserInfo.getUserId());
-            user.setAvatar(fsUserInfo.getAvatar());
-            user.setSex(fsUserInfo.getSex());
-            user.setCompanyUserId(fsUserInfo.getCompanyUserId());
-            user.setUpdateTime(DateUtils.getNowDate());
-            if (fsUserMapper.updateFsUser(user) <= 0) {
-                throw new ServiceException("用户信息修改失败");
-            }
-        }
-    }
-
-
-    private void updateUser(FsUserInfo fsUserInfo, FsUser user) {
-        // 判断头像和姓名 性别是否一致 销售id
-        boolean updateFlag = false;
-        if (StringUtils.isNotEmpty(fsUserInfo.getAvatar())) {
-            if (!fsUserInfo.getAvatar().equals(user.getAvatar())) {
-                updateFlag = true;
-            }
-        }
-        if (fsUserInfo.getSex() != null) {
-            if (!fsUserInfo.getSex().equals(user.getSex())) {
-                updateFlag = true;
-            }
-        }
-        if (fsUserInfo.getCompanyUserId() != null) {
-            if (!fsUserInfo.getCompanyUserId().equals(user.getCompanyUserId())) {
-                updateFlag = true;
-            }
-        }
-
-        if (updateFlag) {
-            // 更新用户信息 不修改手机号
-            user.setAvatar(fsUserInfo.getAvatar());
-            user.setSex(fsUserInfo.getSex());
-            user.setCompanyUserId(fsUserInfo.getCompanyUserId());
-            user.setUpdateTime(DateUtils.getNowDate());
-            if (fsUserMapper.updateFsUser(user) <= 0) {
-                throw new ServiceException("用户信息修改失败");
-            }
-        }
-    }
-
-    /**
-     * @Description: 新增用户
-     * @Param:
-     * @Return:
-     * @Author xgb
-     * @Date 2025/9/3 14:03
-     */
-    @Override
-    @Transactional
-    public void add(FsUserInfo fsUserInfo) {
-
-        // 判断手机号是否已经存在
-        if (StringUtils.isEmpty(fsUserInfo.getPhone())) {
-            throw new ServiceException("手机号不能为空");
-        }
-        // 查询手机号
-        FsUser user;
-        FsUserInfo userInfo = baseMapper.selectFsUserInfoByPhone(fsUserInfo.getPhone());
-        if (userInfo != null) {// 用户存在
-            if (userInfo.getIsDel() == 0) {
-                throw new ServiceException("该手机号用户已存在");
-            }
-            {// 用户被删除重新新增
-                // 查询原用户信息
-                user = fsUserService.selectFsUserById(userInfo.getUserId());
-                if (user == null || user.getIsDel() != 0) {
-                    throw new ServiceException("该用户id不存在或已注销");
-                }
-                // 更新用户信息
-                updateUser(fsUserInfo, user);
-
-                // 更新用户信息
-                fsUserInfo.setUserId(user.getUserId());
-                fsUserInfo.setIsDel(0);
-                if (baseMapper.updateFsUserInfo(fsUserInfo) <= 0) {
-                    throw new ServiceException("用户信息登记失败");
-                }
-            }
-        } else {// 用户不存在
-            // 判断原FsUser是否存在记录
-            if (fsUserInfo.getUserId() != null) { // 客户端根据userId 绑定用户信息
-                user = fsUserService.selectFsUserById(fsUserInfo.getUserId());
-                if (user == null) {
-                    throw new ServiceException("该用户id不存在");
-                }
-            } else { // 根据手机号 绑定用户信息
-                user = fsUserService.selectFsUserByPhone(fsUserInfo.getPhone());
-            }
-            if (user != null) {
-                if (user.getIsDel() != 0) {
-                    throw new ServiceException("该用户已注销");
-                }
-
-                // 更新用户信息
-                updateUser(fsUserInfo, user);
-
-                // 登记同一个userId
-                fsUserInfo.setUserId(user.getUserId());
-                if (insertFsUserInfo(fsUserInfo) <= 0) {
-                    throw new ServiceException("用户信息登记失败");
-                }
-
-            } else {
-                // 新增用户信息
-                FsUser fsUser = new FsUser();
-                fsUser.setCompanyUserId(fsUserInfo.getCompanyUserId());
-                fsUser.setAvatar(fsUserInfo.getAvatar());
-                fsUser.setPhone(fsUserInfo.getPhone());
-                fsUser.setSex(fsUserInfo.getSex());
-                fsUser.setCreateTime(DateUtils.getNowDate());
-                // 登记fsUser表
-                if (fsUserMapper.insertFsUser(fsUser) <= 0) {
-                    throw new ServiceException("用户信息登记失败");
-                }
-                // 登记同一个userId
-                fsUserInfo.setUserId(fsUser.getUserId());
-                // 登记fsUserInfo表
-                if (insertFsUserInfo(fsUserInfo) <= 0) {
-                    throw new ServiceException("用户信息登记失败");
-                }
-
-            }
-        }
-    }
-
-    @Override
-    public int deleteFsUserInfoByUserId(Long userId) {
-        return baseMapper.deleteFsUserInfoByUserId(userId);
-    }
-
-}

+ 0 - 121
fs-service/src/main/java/com/fs/his/service/impl/FsUserItineraryServiceImpl.java

@@ -1,121 +0,0 @@
-package com.fs.his.service.impl;
-
-import java.text.ParseException;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
-import com.fs.common.utils.DateUtils;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.fs.his.mapper.FsUserItineraryMapper;
-import com.fs.his.domain.FsUserItinerary;
-import com.fs.his.service.IFsUserItineraryService;
-
-/**
- * 用户日期行程Service业务层处理
- * 
- * @author fs
- * @date 2025-09-04
- */
-@Service
-public class FsUserItineraryServiceImpl extends ServiceImpl<FsUserItineraryMapper, FsUserItinerary> implements IFsUserItineraryService {
-
-    /**
-     * 查询用户日期行程
-     * 
-     * @param id 用户日期行程主键
-     * @return 用户日期行程
-     */
-    @Override
-    public FsUserItinerary selectFsUserItineraryById(Long id)
-    {
-        return baseMapper.selectFsUserItineraryById(id);
-    }
-
-    /**
-     * 查询用户日期行程列表
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 用户日期行程
-     */
-    @Override
-    public List<FsUserItinerary> selectFsUserItineraryList(FsUserItinerary fsUserItinerary)
-    {
-        List<FsUserItinerary> list =baseMapper.selectFsUserItineraryList(fsUserItinerary);
-        // 状态处理
-        list.forEach(item -> {
-            // 行程标记 今天返回今天(已开始返回) 今天以前返回已结束 明天返回日期
-            if(DateUtils.truncatedCompareTo(item.getItineraryDate(), DateUtils.getNowDate(), Calendar.DATE) < 0){
-                item.setMark("已结束"); // 已结束
-            }else if (DateUtils.truncatedCompareTo(item.getItineraryDate(), DateUtils.getNowDate(), Calendar.DATE) == 0){
-                // 判断时间
-                Date itineraryTime=DateUtils.parseDate(DateUtils.parseDateToStr("yyyy-MM-dd", item.getItineraryDate())+" "+DateUtils.parseDateToStr("HH:mm",item.getItineraryTime()));
-                if(DateUtils.truncatedCompareTo(itineraryTime, DateUtils.getNowDate(), Calendar.SECOND) <= 0){
-                    item.setMark("已开始");
-                }else {
-                    item.setMark("今天");
-                }
-            }else{
-                item.setMark(DateUtils.parseDateToStr("MM-dd", item.getItineraryDate()));
-            }
-        });
-        return list;
-    }
-
-    public static void main(String[] args) {
-
-            System.out.println(DateUtils.parseDate("2025-09-04 09:00"));
-
-    }
-
-    /**
-     * 新增用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserItinerary(FsUserItinerary fsUserItinerary)
-    {
-        fsUserItinerary.setCreateTime(DateUtils.getNowDate());
-        return baseMapper.insertFsUserItinerary(fsUserItinerary);
-    }
-
-    /**
-     * 修改用户日期行程
-     * 
-     * @param fsUserItinerary 用户日期行程
-     * @return 结果
-     */
-    @Override
-    public int updateFsUserItinerary(FsUserItinerary fsUserItinerary)
-    {
-        fsUserItinerary.setUpdateTime(DateUtils.getNowDate());
-        return baseMapper.updateFsUserItinerary(fsUserItinerary);
-    }
-
-    /**
-     * 批量删除用户日期行程
-     * 
-     * @param ids 需要删除的用户日期行程主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserItineraryByIds(Long[] ids)
-    {
-        return baseMapper.deleteFsUserItineraryByIds(ids);
-    }
-
-    /**
-     * 删除用户日期行程信息
-     * 
-     * @param id 用户日期行程主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserItineraryById(Long id)
-    {
-        return baseMapper.deleteFsUserItineraryById(id);
-    }
-}

+ 0 - 80
fs-service/src/main/java/com/fs/his/service/impl/FsUserPayCompetitorsRecordServiceImpl.java

@@ -1,80 +0,0 @@
-package com.fs.his.service.impl;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.fs.his.mapper.FsUserPayCompetitorsRecordMapper;
-import com.fs.his.domain.FsUserPayCompetitorsRecord;
-import com.fs.his.service.IFsUserPayCompetitorsRecordService;
-
-/**
- * 用户购买竞品信息记录Service业务层处理
- * 
- * @author fs
- * @date 2025-08-26
- */
-@Service
-public class FsUserPayCompetitorsRecordServiceImpl extends ServiceImpl<FsUserPayCompetitorsRecordMapper, FsUserPayCompetitorsRecord> implements IFsUserPayCompetitorsRecordService {
-
-    /**
-     * 查询用户购买竞品信息记录
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 用户购买竞品信息记录
-     */
-    @Override
-    public FsUserPayCompetitorsRecord selectFsUserPayCompetitorsRecordById(Long id)
-    {
-        return baseMapper.selectFsUserPayCompetitorsRecordById(id);
-    }
-
-    /**
-     * 查询用户购买竞品信息记录列表
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 用户购买竞品信息记录
-     */
-    @Override
-    public List<FsUserPayCompetitorsRecord> selectFsUserPayCompetitorsRecordList(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord)
-    {
-        return baseMapper.selectFsUserPayCompetitorsRecordList(fsUserPayCompetitorsRecord);
-    }
-
-    /**
-     * 新增用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord)
-    {
-        return baseMapper.insertFsUserPayCompetitorsRecord(fsUserPayCompetitorsRecord);
-    }
-
-    /**
-     * 修改用户购买竞品信息记录
-     * 
-     * @param fsUserPayCompetitorsRecord 用户购买竞品信息记录
-     * @return 结果
-     */
-    @Override
-    public int updateFsUserPayCompetitorsRecord(FsUserPayCompetitorsRecord fsUserPayCompetitorsRecord)
-    {
-        return baseMapper.updateFsUserPayCompetitorsRecord(fsUserPayCompetitorsRecord);
-    }
-
-
-    /**
-     * 删除用户购买竞品信息记录信息
-     * 
-     * @param id 用户购买竞品信息记录主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserPayCompetitorsRecordById(Long id)
-    {
-        return baseMapper.deleteFsUserPayCompetitorsRecordById(id);
-    }
-}

+ 0 - 79
fs-service/src/main/java/com/fs/his/service/impl/FsUserPayRecordServiceImpl.java

@@ -1,79 +0,0 @@
-package com.fs.his.service.impl;
-
-import java.util.List;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.fs.his.mapper.FsUserPayRecordMapper;
-import com.fs.his.domain.FsUserPayRecord;
-import com.fs.his.service.IFsUserPayRecordService;
-
-/**
- * 用户购买服务信息记录Service业务层处理
- * 
- * @author fs
- * @date 2025-08-26
- */
-@Service
-public class FsUserPayRecordServiceImpl extends ServiceImpl<FsUserPayRecordMapper, FsUserPayRecord> implements IFsUserPayRecordService {
-
-    /**
-     * 查询用户购买服务信息记录
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 用户购买服务信息记录
-     */
-    @Override
-    public FsUserPayRecord selectFsUserPayRecordById(Long id)
-    {
-        return baseMapper.selectFsUserPayRecordById(id);
-    }
-
-    /**
-     * 查询用户购买服务信息记录列表
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 用户购买服务信息记录
-     */
-    @Override
-    public List<FsUserPayRecord> selectFsUserPayRecordList(FsUserPayRecord fsUserPayRecord)
-    {
-        return baseMapper.selectFsUserPayRecordList(fsUserPayRecord);
-    }
-
-    /**
-     * 新增用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    @Override
-    public int insertFsUserPayRecord(FsUserPayRecord fsUserPayRecord)
-    {
-        return baseMapper.insertFsUserPayRecord(fsUserPayRecord);
-    }
-
-    /**
-     * 修改用户购买服务信息记录
-     * 
-     * @param fsUserPayRecord 用户购买服务信息记录
-     * @return 结果
-     */
-    @Override
-    public int updateFsUserPayRecord(FsUserPayRecord fsUserPayRecord)
-    {
-        return baseMapper.updateFsUserPayRecord(fsUserPayRecord);
-    }
-
-    /**
-     * 删除用户购买服务信息记录信息
-     * 
-     * @param id 用户购买服务信息记录主键
-     * @return 结果
-     */
-    @Override
-    public int deleteFsUserPayRecordById(Long id)
-    {
-        return baseMapper.deleteFsUserPayRecordById(id);
-    }
-}

+ 0 - 5
fs-service/src/main/java/com/fs/his/service/impl/FsUserServiceImpl.java

@@ -187,11 +187,6 @@ public class FsUserServiceImpl implements IFsUserService
         return fsUserMapper.findUsersByParam(param);
     }
 
-    @Override
-    public FsUser selectFsUserByUserIdForUpdate(Long userId) {
-        return fsUserMapper.selectFsUserByUserIdForUpdate(userId);
-    }
-
     /**
      * 查询用户列表
      *

+ 0 - 4
fs-service/src/main/java/com/fs/his/utils/ConfigUtil.java

@@ -7,12 +7,10 @@ import com.fs.his.config.FsSysConfig;
 import com.fs.hisStore.config.FsErpConfig;
 import com.fs.system.domain.SysConfig;
 import com.fs.system.mapper.SysConfigMapper;
-import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 
-@Slf4j
 @Service
 public class ConfigUtil {
     FsSysConfig fsSysConfig;
@@ -64,8 +62,6 @@ public class ConfigUtil {
     }
 
     public JSONObject generateConfigByKeyIndexed(String key,int index){
-        log.info("开始根据配置键[{}]获取配置信息", key);
-
         SysConfig sysConfig = sysConfigMapper.selectConfigByConfigKey(key);
         String configValue = sysConfig.getConfigValue();
         if(configValue != null && configValue.trim().startsWith("[")){

+ 0 - 12
fs-service/src/main/java/com/fs/hisStore/domain/FsStoreProductAttrValueScrm.java

@@ -29,18 +29,6 @@ public class FsStoreProductAttrValueScrm extends BaseEntity
     @Excel(name = "商品ID")
     private Long productId;
 
-    public Long getStoreId() {
-        return storeId;
-    }
-
-    public void setStoreId(Long storeId) {
-        this.storeId = storeId;
-    }
-
-    /** 门店ID */
-    @Excel(name = "门店ID")
-    private Long storeId;
-
     /** 商品属性索引值 (attr_value|attr_value[|....]) */
     @Excel(name = "商品属性索引值 (attr_value|attr_value[|....])")
     private String sku;

+ 0 - 2
fs-service/src/main/java/com/fs/hisStore/domain/FsStoreProductScrm.java

@@ -24,8 +24,6 @@ public class FsStoreProductScrm extends BaseEntity
     /** 商品id */
     private Long productId;
 
-    private String storeId;
-
     /** 商品图片 */
     @Excel(name = "商品图片")
     private String image;

+ 2 - 9
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductAttrValueScrmMapper.java

@@ -70,15 +70,8 @@ public interface FsStoreProductAttrValueScrmMapper
     public int deleteFsStoreProductAttrValueByIds(Long[] ids);
     @Delete("delete from fs_store_product_attr_value_scrm where product_id=#{productId}")
     int deleteFsStoreProductAttrValueByProductId(Long productId);
-//    @Select("select * from fs_store_product_attr_value_scrm where  product_id=#{productId}")
-//    List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId);
-    @Select({"<script> " +
-            "select * from fs_store_product_attr_value_scrm where  product_id=#{productId} " +
-            "<if test = 'storeId != null and  storeId !=\"\"   '> " +
-            "and find_in_set(#{storeId},store_id) " +
-            "</if>" +
-            "</script>"})
-    List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId( @Param("productId")Long productId, @Param("storeId")String storeId);
+    @Select("select * from fs_store_product_attr_value_scrm where  product_id=#{productId}")
+    List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId);
     @Select("select ifnull(stock,0) from fs_store_product_attr_value_scrm where  id=#{productAttrValueId}")
     int selectFsStoreProductStockById(Long productAttrValueId);
 

+ 1 - 12
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductScrmMapper.java

@@ -159,22 +159,11 @@ public interface FsStoreProductScrmMapper
             "</if>" +
             "</script>"})
     List<FsStoreProductListQueryVO> selectFsStoreProductListQuery(@Param("maps")FsStoreProductQueryParam param);
-//    @Select({"<script> " +
-//            "select p.* from fs_store_product_scrm p  " +
-//            "where is_del=0 and is_show=1 and product_id=#{productId} " +
-//            "<if test = 'storeId != null and storeId !=\"\"'> " +
-//            "and find_in_set(p.store_id,#{storeId} " +
-//            "</if>" +
-//            "</script>"})
-//    FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId);
     @Select({"<script> " +
             "select p.* from fs_store_product_scrm p  " +
             "where is_del=0 and is_show=1 and product_id=#{productId} " +
-            "<if test = 'storeId != null and storeId !=\"\"'> " +
-            "and find_in_set(p.store_id,#{storeId} " +
-            "</if>" +
             "</script>"})
-    FsStoreProductQueryVO selectFsStoreProductByIdQuery(@Param("productId")Long productId,@Param("storeId")String storeId);
+    FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId);
     @Update("update fs_store_product_scrm set stock=stock-#{num}, sales=sales+#{num}" +
             " where product_id=#{productId} and stock >= #{num}")
     int decProductAttrStock(@Param("productId")Long productId, @Param("num")Integer cartNum);

+ 5 - 16
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreScrmMapper.java

@@ -1,7 +1,6 @@
 package com.fs.hisStore.mapper;
 
 import com.fs.hisStore.domain.FsStoreScrm;
-import com.fs.hisStore.vo.FsStoreScrmVO;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.Update;
@@ -27,7 +26,7 @@ public interface FsStoreScrmMapper
     /**
      * 查询店铺管理列表
      *
-     * @param fsStore 店铺管理
+     * @param FsStoreScrm 店铺管理
      * @return 店铺管理集合
      */
     public List<FsStoreScrm> selectFsStoreList(FsStoreScrm FsStoreScrm);
@@ -35,16 +34,18 @@ public interface FsStoreScrmMapper
     /**
      * 新增店铺管理
      *
+     * @param FsStoreScrm 店铺管理
      * @return 结果
      */
-    public int insertFsStore(FsStoreScrm fsStore);
+    public int insertFsStore(FsStoreScrm FsStoreScrm);
 
     /**
      * 修改店铺管理
      *
+     * @param FsStoreScrm 店铺管理
      * @return 结果
      */
-    public int updateFsStore(FsStoreScrm fsStore);
+    public int updateFsStore(FsStoreScrm FsStoreScrm);
 
     /**
      * 删除店铺管理
@@ -69,16 +70,4 @@ public interface FsStoreScrmMapper
 
     @Select("SELECT * from fs_store_scrm WHERE   FIND_IN_SET(store_id, (SELECT store_ids FROM fs_doctor where doctor_id=#{doctorId}))")
     List<FsStoreScrm> selectFsStoreListByDoctorId(Long doctorId);
-
-    @Select("<script>"
-            + "SELECT * FROM fs_store_scrm WHERE store_id IN "
-            + "<foreach collection='storeIds' item='storeId' open='(' separator=',' close=')'>"
-            + "#{storeId}"
-            + "</foreach>"
-            + "</script>")
-    List<FsStoreScrmVO> selectFsStoreListByIds(@Param("storeIds") List<Integer> storeIds);
-
-    @Select("select store_id ,store_name,bus_no,bus_name  from fs_store_scrm ")
-//    @Select("select store_id ,store_name  from fs_store_scrm ")
-    List<FsStoreScrmVO> selectFsAllStoreList();
 }

+ 0 - 11
fs-service/src/main/java/com/fs/hisStore/param/FormatAttrParam.java

@@ -1,11 +0,0 @@
-package com.fs.hisStore.param;
-
-import lombok.Data;
-
-import java.io.Serializable;
-
-@Data
-public class FormatAttrParam implements Serializable {
-    private String attrs;
-    private Long[] stores;
-}

+ 0 - 4
fs-service/src/main/java/com/fs/hisStore/param/FsStoreProductAddEditParam.java

@@ -4,7 +4,6 @@ import com.fs.hisStore.domain.FsStoreProductAttrValueScrm;
 import com.fs.hisStore.dto.ProductArrtDTO;
 import lombok.Data;
 
-import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.List;
@@ -22,9 +21,6 @@ public class FsStoreProductAddEditParam implements Serializable
     /** 商品id */
     private Long productId;
 
-    @NotNull(message = "店铺不能为空")
-    private String storeId;
-
     /** 商品图片 */
     private String image;
 

+ 8 - 8
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductAttrValueScrmService.java

@@ -11,7 +11,7 @@ import com.fs.hisStore.vo.FsStoreTuiProductAttrValueVO;
 
 /**
  * 商品属性值Service接口
- *
+ * 
  * @author fs
  * @date 2022-03-15
  */
@@ -19,7 +19,7 @@ public interface IFsStoreProductAttrValueScrmService
 {
     /**
      * 查询商品属性值
-     *
+     * 
      * @param id 商品属性值ID
      * @return 商品属性值
      */
@@ -27,7 +27,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 查询商品属性值列表
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 商品属性值集合
      */
@@ -35,7 +35,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 新增商品属性值
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -43,7 +43,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 修改商品属性值
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -51,7 +51,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 批量删除商品属性值
-     *
+     * 
      * @param ids 需要删除的商品属性值ID
      * @return 结果
      */
@@ -59,13 +59,13 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 删除商品属性值信息
-     *
+     * 
      * @param id 商品属性值ID
      * @return 结果
      */
     public int deleteFsStoreProductAttrValueById(Long id);
 
-    List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId,String storeId);
+    List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId);
 
     int incProductAttrStock(Long num, Long productId, Long productAttrValueId);
 

+ 2 - 2
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductScrmService.java

@@ -76,7 +76,7 @@ public interface IFsStoreProductScrmService
 
     List<FsStoreProductListVO> selectFsStoreProductBarCodeListVO(FsStoreProductScrm fsStoreProduct);
 
-    Map<String,Object> getFormatAttr(Long productId, String jsonStr,Long[] stores);
+    Map<String,Object> getFormatAttr(Long productId, String jsonStr);
 
 
     R addOrEdit(FsStoreProductAddEditParam fsStoreProduct);
@@ -86,7 +86,7 @@ public interface IFsStoreProductScrmService
 
     List<FsStoreProductListQueryVO> selectFsStoreProductListQuery(FsStoreProductQueryParam param);
 
-    FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId,String storeId);
+    FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId);
 
     void decProductStock(Long productId, Long productAttrValueId, Integer cartNum);
 

+ 0 - 3
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreScrmService.java

@@ -2,7 +2,6 @@ package com.fs.hisStore.service;
 
 import com.fs.his.param.FsStoreAuditParam;
 import com.fs.hisStore.domain.FsStoreScrm;
-import com.fs.hisStore.vo.FsStoreScrmVO;
 
 import java.util.List;
 
@@ -72,8 +71,6 @@ public interface IFsStoreScrmService
 
     List<FsStoreScrm> selectFsStoreListByDoctorId(Long doctorId);
 
-    List<FsStoreScrmVO> selectFsStoreListByIds(List<Integer> storeIds);
     int refreshFsStore(Long storeId);
 
-    List<FsStoreScrmVO> selectAllStore();
 }

+ 10 - 10
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductAttrValueScrmServiceImpl.java

@@ -16,19 +16,19 @@ import com.fs.hisStore.service.IFsStoreProductAttrValueScrmService;
 
 /**
  * 商品属性值Service业务层处理
- *
+ * 
  * @author fs
  * @date 2022-03-15
  */
 @Service
-public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAttrValueScrmService
+public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAttrValueScrmService 
 {
     @Autowired
     private FsStoreProductAttrValueScrmMapper fsStoreProductAttrValueMapper;
 
     /**
      * 查询商品属性值
-     *
+     * 
      * @param id 商品属性值ID
      * @return 商品属性值
      */
@@ -40,7 +40,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 查询商品属性值列表
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 商品属性值
      */
@@ -52,7 +52,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 新增商品属性值
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -64,7 +64,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 修改商品属性值
-     *
+     * 
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -76,7 +76,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 批量删除商品属性值
-     *
+     * 
      * @param ids 需要删除的商品属性值ID
      * @return 结果
      */
@@ -88,7 +88,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 删除商品属性值信息
-     *
+     * 
      * @param id 商品属性值ID
      * @return 结果
      */
@@ -99,8 +99,8 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
     }
 
     @Override
-    public List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId,String storeId) {
-        return fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueByProductId(productId,storeId);
+    public List<FsStoreProductAttrValueScrm> selectFsStoreProductAttrValueByProductId(Long productId) {
+        return fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueByProductId(productId);
     }
 
     @Override

+ 46 - 47
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductScrmServiceImpl.java

@@ -9,7 +9,6 @@ import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.fs.common.BeanCopyUtils;
 import com.fs.common.annotation.Log;
@@ -199,16 +198,17 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
     }
 
     @Override
-    public Map<String, Object> getFormatAttr(Long productId, String jsonStr,Long[] stores) {
-        JSONArray jsonObject = JSON.parseArray(jsonStr);
+    public Map<String, Object> getFormatAttr(Long productId, String jsonStr) {
+        JSONObject jsonObject = JSON.parseObject(jsonStr);
         Map<String, Object> resultMap = new LinkedHashMap<>(3);
-        if (jsonObject == null || jsonObject.isEmpty()) {
+        if (jsonObject == null || jsonObject.get("attrs") == null || jsonObject.getJSONArray("attrs").isEmpty()) {
             resultMap.put("attr", new ArrayList<>());
             resultMap.put("value", new ArrayList<>());
             resultMap.put("header", new ArrayList<>());
             return resultMap;
         }
-        List<ProductArrtDTO> fromatDetailDTOList = JSON.parseArray(jsonStr, ProductArrtDTO.class);
+        List<ProductArrtDTO> fromatDetailDTOList = JSON.parseArray(jsonObject.get("attrs").toString(),
+                ProductArrtDTO.class);
         DetailVO detailDto = this.attrFormat(fromatDetailDTOList);
         List<Map<String, Object>> headerMapList = null;
         List<Map<String, Object>> valueMapList = new ArrayList<>();
@@ -246,51 +246,48 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
                 String key = "value" + (j + 1);
                 valueMap.put(key, detailValues[j]);
             }
+
+            valueMap.put("detail", detail);
+            valueMap.put("sku", "");
+            valueMap.put("image", "");
+            valueMap.put("price", 0);
+            valueMap.put("cost", 0);
+            valueMap.put("otPrice", 0);
+            valueMap.put("stock", 0);
+            valueMap.put("barCode", "");
+            valueMap.put("groupBarCode", "");
+            valueMap.put("agentPrice", 0);
+            valueMap.put("weight", 0);
+            valueMap.put("volume", 0);
+            valueMap.put("brokerage", 0);
+            valueMap.put("brokerageTwo", 0);
+            valueMap.put("brokerageThree", 0);
+            valueMap.put("integral", 0);
             if (productId > 0) {
                 FsStoreProductAttrValueScrm attrValueMap=new FsStoreProductAttrValueScrm();
                 attrValueMap.setProductId(productId);
                 attrValueMap.setSku(sku);
                 List<FsStoreProductAttrValueScrm> values = fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueList(attrValueMap);
-                for (FsStoreProductAttrValueScrm value : values){
-                    valueMap.put("detail", value.getDetail());
-                    valueMap.put("sku", value.getSku());
-                    valueMap.put("image", value.getImage());
-                    valueMap.put("price", value.getPrice());
-                    valueMap.put("cost", value.getCost());
-                    valueMap.put("otPrice", value.getOtPrice());
-                    valueMap.put("stock", value.getStock());
-                    valueMap.put("barCode", value.getBarCode());
-                    valueMap.put("groupBarCode", value.getGroupBarCode());
-                    valueMap.put("agentPrice", value.getAgentPrice());
-                    valueMap.put("weight", value.getWeight());
-                    valueMap.put("volume", value.getVolume());
-                    valueMap.put("brokerage", value.getBrokerage());
-                    valueMap.put("brokerageTwo", value.getBrokerageTwo());
-                    valueMap.put("brokerageThree", value.getBrokerageThree());
-                    valueMap.put("integral", value.getIntegral());
-                    valueMap.put("storeId", value.getStoreId());
-                    valueMapList.add(ObjectUtil.clone(valueMap));
+                if (values != null&&values.size()==1) {
+                    valueMap.put("id",values.get(0).getId());
+                    valueMap.put("sku",values.get(0).getSku());
+                    valueMap.put("image", values.get(0).getImage());
+                    valueMap.put("price", values.get(0).getPrice());
+                    valueMap.put("cost", values.get(0).getCost());
+                    valueMap.put("otPrice", values.get(0).getOtPrice());
+                    valueMap.put("agentPrice", values.get(0).getAgentPrice());
+                    valueMap.put("stock", values.get(0).getStock());
+                    valueMap.put("barCode", values.get(0).getBarCode());
+                    valueMap.put("groupBarCode", values.get(0).getGroupBarCode());
+                    valueMap.put("weight", values.get(0).getWeight());
+                    valueMap.put("volume", values.get(0).getVolume());
+                    valueMap.put("brokerage", values.get(0).getBrokerage());
+                    valueMap.put("brokerageTwo", values.get(0).getBrokerageTwo());
+                    valueMap.put("brokerageThree", values.get(0).getBrokerageThree());
+                    valueMap.put("integral", values.get(0).getIntegral());
                 }
-            } else {
-                valueMap.put("detail", detail);
-                valueMap.put("sku", "");
-                valueMap.put("image", "");
-                valueMap.put("price", 0);
-                valueMap.put("cost", 0);
-                valueMap.put("otPrice", 0);
-                valueMap.put("stock", 0);
-                valueMap.put("barCode", "");
-                valueMap.put("groupBarCode", "");
-                valueMap.put("agentPrice", 0);
-                valueMap.put("weight", 0);
-                valueMap.put("volume", 0);
-                valueMap.put("brokerage", 0);
-                valueMap.put("brokerageTwo", 0);
-                valueMap.put("brokerageThree", 0);
-                valueMap.put("integral", 0);
-                valueMap.put("storeId", "");
-                valueMapList.add(ObjectUtil.clone(valueMap));
             }
+            valueMapList.add(ObjectUtil.clone(valueMap));
         }
         this.addHeaderMap(headerMap, headerMapList, align);
         resultMap.put("attr", fromatDetailDTOList);
@@ -322,7 +319,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
                         .build();
                 List<ProductArrtDTO> items=new ArrayList<>();
                 items.add(fromatDetailDto);
-                param.getValues().forEach(value -> value.setSku("默认"));
+                param.getValues().get(0).setSku("默认");
                 addProductAttr(product.getProductId(),items,param.getValues());
             } else {
                 addProductAttr(product.getProductId(),param.getItems(),param.getValues());
@@ -361,7 +358,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
         fsStoreProductAttrMapper.clear(productId);
         //清空values
         //查出商品属性所有ID;
-        List<FsStoreProductAttrValueScrm> attrValues=fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueByProductId(productId,null);
+        List<FsStoreProductAttrValueScrm> attrValues=fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueByProductId(productId);
         fsStoreProductAttrValueMapper.deleteFsStoreProductAttrValueByProductId(productId);
         //写入attr
         for(ProductArrtDTO vo:items){
@@ -374,6 +371,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
         Map<String,Object> map = new LinkedHashMap<>();
         map.put("attr",items);
         // map.put("value",values);
+
         for(FsStoreProductAttrValueScrm val: values){
             //更新套餐商品属性ID  获取套餐
             Long id=val.getId();
@@ -392,6 +390,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
                     }
                 }
             }
+
         }
     }
 
@@ -629,8 +628,8 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
     }
 
     @Override
-    public FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId,String storeId) {
-        return fsStoreProductMapper.selectFsStoreProductByIdQuery(productId,storeId);
+    public FsStoreProductQueryVO selectFsStoreProductByIdQuery(Long productId) {
+        return fsStoreProductMapper.selectFsStoreProductByIdQuery(productId);
     }
 
     @Override

+ 0 - 9
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreScrmServiceImpl.java

@@ -9,7 +9,6 @@ import com.fs.his.utils.StoreMD5PasswordEncoder;
 import com.fs.hisStore.domain.FsStoreScrm;
 import com.fs.hisStore.mapper.FsStoreScrmMapper;
 import com.fs.hisStore.service.IFsStoreScrmService;
-import com.fs.hisStore.vo.FsStoreScrmVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -145,14 +144,6 @@ public class FsStoreScrmServiceImpl implements IFsStoreScrmService
         fsStoreScrm.setUpdateTime(DateUtils.getNowDate());
         return fsStoreMapper.updateFsStore(fsStoreScrm);
     }
-    public List<FsStoreScrmVO> selectFsStoreListByIds(List<Integer> storeIds) {
-        return fsStoreMapper.selectFsStoreListByIds(storeIds);
-    }
-
-    @Override
-    public List<FsStoreScrmVO> selectAllStore() {
-        return fsStoreMapper.selectFsAllStoreList();
-    }
 
 
 }

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels