xdd 1 mesiac pred
rodič
commit
3f8356e9e2
100 zmenil súbory, kde vykonal 0 pridanie a 10927 odobranie
  1. 0 120
      fs-admin/src/main/java/com/fs/audit/controller/AuditTempController.java
  2. 0 97
      fs-admin/src/main/java/com/fs/delivery/controller/CtArticleController.java
  3. 0 103
      fs-admin/src/main/java/com/fs/delivery/controller/CtCloudClassController.java
  4. 0 103
      fs-admin/src/main/java/com/fs/delivery/controller/CtLongVideoController.java
  5. 0 103
      fs-admin/src/main/java/com/fs/delivery/controller/CtShortVideoController.java
  6. 0 103
      fs-admin/src/main/java/com/fs/delivery/controller/TagController.java
  7. 0 103
      fs-admin/src/main/java/com/fs/delivery/controller/TagGroupController.java
  8. 0 103
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorBalanceLogController.java
  9. 0 142
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorCompanyUserController.java
  10. 0 144
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorController.java
  11. 0 112
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelApplyController.java
  12. 0 97
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelController.java
  13. 0 98
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelDataController.java
  14. 0 97
      fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelMaterialController.java
  15. 0 124
      fs-admin/src/main/java/com/fs/doctor/controller/WithdrawRecordsController.java
  16. 0 97
      fs-admin/src/main/java/com/fs/project/controller/ProjectContractController.java
  17. 0 113
      fs-admin/src/main/java/com/fs/project/controller/ProjectController.java
  18. 0 97
      fs-admin/src/main/java/com/fs/project/controller/ProjectPermissionController.java
  19. 0 143
      fs-admin/src/main/java/com/fs/project/controller/ProjectSettingsController.java
  20. 0 108
      fs-admin/src/main/java/com/fs/project/controller/ProjectStandardController.java
  21. 0 109
      fs-admin/src/main/java/com/fs/project/controller/ProjectTaskTypeController.java
  22. 0 128
      fs-admin/src/main/java/com/fs/provider/controller/ServiceGenConfigController.java
  23. 0 125
      fs-admin/src/main/java/com/fs/provider/controller/ServiceOrderController.java
  24. 0 97
      fs-admin/src/main/java/com/fs/provider/controller/ServiceOrderTaskRelController.java
  25. 0 108
      fs-admin/src/main/java/com/fs/survey/DrugResearchController.java
  26. 0 199
      fs-admin/src/main/java/com/fs/survey/SurveyDataController.java
  27. 0 94
      fs-admin/src/main/java/com/fs/survey/SurveyFieldConfigController.java
  28. 0 127
      fs-admin/src/main/java/com/fs/survey/SurveyQuestionnaireController.java
  29. 0 119
      fs-admin/src/main/java/com/fs/survey/SurveyTaskController.java
  30. 0 103
      fs-admin/src/main/java/com/fs/survey/SurveyTaskPeriodController.java
  31. 0 103
      fs-admin/src/main/java/com/fs/survey/SurveyVersionController.java
  32. 0 102
      fs-admin/src/main/java/com/fs/task/controller/TaskDeliveryInfoController.java
  33. 0 147
      fs-admin/src/main/java/com/fs/task/controller/TaskInfoController.java
  34. 0 103
      fs-admin/src/main/java/com/fs/task/controller/TaskMaterialInfoController.java
  35. 0 46
      fs-admin/src/test/java/AuditTest.java
  36. 0 241
      fs-company-app/src/main/java/com/fs/app/controller/AuditController.java
  37. 0 325
      fs-company-app/src/main/java/com/fs/app/controller/DoctorController.java
  38. 0 99
      fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelApplyController.java
  39. 0 87
      fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelController.java
  40. 0 103
      fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelDataController.java
  41. 0 113
      fs-company-app/src/main/java/com/fs/app/controller/ProjectController.java
  42. 0 96
      fs-company-app/src/main/java/com/fs/app/controller/ProjectSettingsController.java
  43. 0 131
      fs-company-app/src/main/java/com/fs/app/controller/ProjectStandardController.java
  44. 0 108
      fs-company-app/src/main/java/com/fs/app/controller/ProjectTaskTypeController.java
  45. 0 96
      fs-company-app/src/main/java/com/fs/app/controller/ServiceOrderStatisticsController.java
  46. 0 131
      fs-company-app/src/main/java/com/fs/app/controller/SurveyQuestionnaireController.java
  47. 0 283
      fs-company-app/src/main/java/com/fs/app/controller/TaskInfoController.java
  48. 0 6
      fs-company-app/src/main/java/com/fs/app/exception/FSExceptionHandler.java
  49. 0 97
      fs-company/src/main/java/com/fs/audit/controller/AuditTempController.java
  50. 0 125
      fs-company/src/main/java/com/fs/city/controller/FsCityController.java
  51. 0 106
      fs-company/src/main/java/com/fs/delivery/controller/CtArticleController.java
  52. 0 108
      fs-company/src/main/java/com/fs/delivery/controller/CtLongVideoController.java
  53. 0 100
      fs-company/src/main/java/com/fs/delivery/controller/CtShortVideoController.java
  54. 0 106
      fs-company/src/main/java/com/fs/delivery/controller/TagController.java
  55. 0 106
      fs-company/src/main/java/com/fs/delivery/controller/TagGroupController.java
  56. 0 106
      fs-company/src/main/java/com/fs/doctor/controller/DoctorBalanceLogController.java
  57. 0 148
      fs-company/src/main/java/com/fs/doctor/controller/DoctorCompanyUserController.java
  58. 0 158
      fs-company/src/main/java/com/fs/doctor/controller/DoctorController.java
  59. 0 156
      fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelApplyController.java
  60. 0 106
      fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelController.java
  61. 0 113
      fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelDataController.java
  62. 0 106
      fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelMaterialController.java
  63. 0 127
      fs-company/src/main/java/com/fs/doctor/controller/WithdrawRecordsController.java
  64. 0 113
      fs-company/src/main/java/com/fs/live/controller/LiveBroadcastController.java
  65. 0 57
      fs-company/src/main/java/com/fs/live/controller/LiveRemoteController.java
  66. 0 107
      fs-company/src/main/java/com/fs/project/controller/ProjectContractController.java
  67. 0 143
      fs-company/src/main/java/com/fs/project/controller/ProjectController.java
  68. 0 106
      fs-company/src/main/java/com/fs/project/controller/ProjectPermissionController.java
  69. 0 145
      fs-company/src/main/java/com/fs/project/controller/ProjectSettingsController.java
  70. 0 116
      fs-company/src/main/java/com/fs/project/controller/ProjectStandardController.java
  71. 0 118
      fs-company/src/main/java/com/fs/project/controller/ProjectTaskTypeController.java
  72. 0 135
      fs-company/src/main/java/com/fs/provider/controller/ServiceGenConfigController.java
  73. 0 135
      fs-company/src/main/java/com/fs/provider/controller/ServiceOrderController.java
  74. 0 97
      fs-company/src/main/java/com/fs/provider/controller/ServiceOrderTaskRelController.java
  75. 0 122
      fs-company/src/main/java/com/fs/survey/DrugResearchController.java
  76. 0 100
      fs-company/src/main/java/com/fs/survey/SurveyDataController.java
  77. 0 99
      fs-company/src/main/java/com/fs/survey/SurveyFieldConfigController.java
  78. 0 133
      fs-company/src/main/java/com/fs/survey/SurveyQuestionnaireController.java
  79. 0 130
      fs-company/src/main/java/com/fs/survey/SurveyTaskController.java
  80. 0 113
      fs-company/src/main/java/com/fs/survey/SurveyTaskPeriodController.java
  81. 0 103
      fs-company/src/main/java/com/fs/survey/SurveyVersionController.java
  82. 0 105
      fs-company/src/main/java/com/fs/task/controller/TaskDeliveryInfoController.java
  83. 0 156
      fs-company/src/main/java/com/fs/task/controller/TaskInfoController.java
  84. 0 100
      fs-company/src/main/java/com/fs/task/controller/TaskMaterialInfoController.java
  85. 0 44
      fs-service/src/main/java/com/fs/audit/chain/AbstractAuditHandler.java
  86. 0 62
      fs-service/src/main/java/com/fs/audit/chain/AuditChainBuilder.java
  87. 0 85
      fs-service/src/main/java/com/fs/audit/chain/AuditContext.java
  88. 0 31
      fs-service/src/main/java/com/fs/audit/chain/AuditHandler.java
  89. 0 50
      fs-service/src/main/java/com/fs/audit/chain/AuditResult.java
  90. 0 60
      fs-service/src/main/java/com/fs/audit/chain/handler/AuditExecuteHandler.java
  91. 0 110
      fs-service/src/main/java/com/fs/audit/chain/handler/FlowAdvanceHandler.java
  92. 0 47
      fs-service/src/main/java/com/fs/audit/chain/handler/PermissionValidateHandler.java
  93. 0 56
      fs-service/src/main/java/com/fs/audit/chain/handler/StatusValidateHandler.java
  94. 0 41
      fs-service/src/main/java/com/fs/audit/common/Result.java
  95. 0 92
      fs-service/src/main/java/com/fs/audit/domain/Audit.java
  96. 0 79
      fs-service/src/main/java/com/fs/audit/domain/AuditFlow.java
  97. 0 66
      fs-service/src/main/java/com/fs/audit/domain/AuditTemp.java
  98. 0 46
      fs-service/src/main/java/com/fs/audit/dto/AuditRequestDTO.java
  99. 0 44
      fs-service/src/main/java/com/fs/audit/dto/CreateAuditRequestDTO.java
  100. 0 77
      fs-service/src/main/java/com/fs/audit/dto/CustomerServicePendingAuditDTO.java

+ 0 - 120
fs-admin/src/main/java/com/fs/audit/controller/AuditTempController.java

@@ -1,120 +0,0 @@
-package com.fs.audit.controller;
-
-import java.util.List;
-
-import com.fs.audit.domain.AuditTemp;
-import com.fs.audit.service.AuditTempService;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 审核模板Controller
- *
- * @author fs
- * @date 2026-01-06
- */
-@RestController
-@RequestMapping("/audit/temp")
-public class AuditTempController extends BaseController
-{
-    @Autowired
-    private AuditTempService auditTempService;
-
-    /**
-     * 查询审核模板列表
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(AuditTemp auditTemp)
-    {
-        startPage();
-        List<AuditTemp> list = auditTempService.selectAuditTempList(auditTemp);
-        return getDataTable(list);
-    }
-
-
-
-
-
-    /**
-     * 导出审核模板列表
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:export')")
-    @Log(title = "审核模板", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(AuditTemp auditTemp)
-    {
-        List<AuditTemp> list = auditTempService.selectAuditTempList(auditTemp);
-        ExcelUtil<AuditTemp> util = new ExcelUtil<AuditTemp>(AuditTemp.class);
-        return util.exportExcel(list, "审核模板数据");
-    }
-
-    /**
-     * 获取审核模板详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(auditTempService.getTemplate(id));
-    }
-
-    /**
-     * 新增审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:add')")
-    @Log(title = "审核模板", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody AuditTemp auditTemp)
-    {
-        return toAjax(auditTempService.insertAuditTemp(auditTemp));
-    }
-
-    /**
-     * 新增审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:add')")
-    @Log(title = "审核模板", businessType = BusinessType.INSERT)
-    @PostMapping("/initAuditTemp")
-    public AjaxResult initAuditTemp(@RequestBody  Long companyId)
-    {
-        return toAjax(auditTempService.initAuditTemp(companyId));
-    }
-
-
-    /**
-     * 修改审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:edit')")
-    @Log(title = "审核模板", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody AuditTemp auditTemp)
-    {
-        return toAjax(auditTempService.updateAuditTemp(auditTemp));
-    }
-
-    /**
-     * 删除审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:remove')")
-    @Log(title = "审核模板", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(auditTempService.deleteAuditTempByIds(ids));
-    }
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/delivery/controller/CtArticleController.java

@@ -1,97 +0,0 @@
-package com.fs.delivery.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.CtArticle;
-import com.fs.delivery.service.ICtArticleService;
-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 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/article")
-public class CtArticleController extends BaseController
-{
-    @Autowired
-    private ICtArticleService ctArticleService;
-
-    /**
-     * 查询文章列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtArticle ctArticle)
-    {
-        startPage();
-        List<CtArticle> list = ctArticleService.selectCtArticleList(ctArticle);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出文章列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:export')")
-    @Log(title = "文章", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtArticle ctArticle)
-    {
-        List<CtArticle> list = ctArticleService.selectCtArticleList(ctArticle);
-        ExcelUtil<CtArticle> util = new ExcelUtil<CtArticle>(CtArticle.class);
-        return util.exportExcel(list, "文章数据");
-    }
-
-    /**
-     * 获取文章详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(ctArticleService.selectCtArticleById(id));
-    }
-
-    /**
-     * 新增文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:add')")
-    @Log(title = "文章", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtArticle ctArticle)
-    {
-        return toAjax(ctArticleService.insertCtArticle(ctArticle));
-    }
-
-    /**
-     * 修改文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:edit')")
-    @Log(title = "文章", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtArticle ctArticle)
-    {
-        return toAjax(ctArticleService.updateCtArticle(ctArticle));
-    }
-
-    /**
-     * 删除文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:remove')")
-    @Log(title = "文章", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctArticleService.deleteCtArticleByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/delivery/controller/CtCloudClassController.java

@@ -1,103 +0,0 @@
-package com.fs.delivery.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.delivery.domain.CtCloudClass;
-import com.fs.delivery.service.ICtCloudClassService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 空中课堂内容维护Controller
- * 
- * @author fs
- * @date 2026-02-13
- */
-@RestController
-@RequestMapping("/delivery/class")
-public class CtCloudClassController extends BaseController
-{
-    @Autowired
-    private ICtCloudClassService ctCloudClassService;
-
-    /**
-     * 查询空中课堂内容维护列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtCloudClass ctCloudClass)
-    {
-        startPage();
-        List<CtCloudClass> list = ctCloudClassService.selectCtCloudClassList(ctCloudClass);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出空中课堂内容维护列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:export')")
-    @Log(title = "空中课堂内容维护", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtCloudClass ctCloudClass)
-    {
-        List<CtCloudClass> list = ctCloudClassService.selectCtCloudClassList(ctCloudClass);
-        ExcelUtil<CtCloudClass> util = new ExcelUtil<CtCloudClass>(CtCloudClass.class);
-        return util.exportExcel(list, "空中课堂内容维护数据");
-    }
-
-    /**
-     * 获取空中课堂内容维护详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:query')")
-    @GetMapping(value = "/{cloudClassId}")
-    public AjaxResult getInfo(@PathVariable("cloudClassId") Long cloudClassId)
-    {
-        return AjaxResult.success(ctCloudClassService.selectCtCloudClassByCloudClassId(cloudClassId));
-    }
-
-    /**
-     * 新增空中课堂内容维护
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:add')")
-    @Log(title = "空中课堂内容维护", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtCloudClass ctCloudClass)
-    {
-        return toAjax(ctCloudClassService.insertCtCloudClass(ctCloudClass));
-    }
-
-    /**
-     * 修改空中课堂内容维护
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:edit')")
-    @Log(title = "空中课堂内容维护", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtCloudClass ctCloudClass)
-    {
-        return toAjax(ctCloudClassService.updateCtCloudClass(ctCloudClass));
-    }
-
-    /**
-     * 删除空中课堂内容维护
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:class:remove')")
-    @Log(title = "空中课堂内容维护", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{cloudClassIds}")
-    public AjaxResult remove(@PathVariable Long[] cloudClassIds)
-    {
-        return toAjax(ctCloudClassService.deleteCtCloudClassByCloudClassIds(cloudClassIds));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/delivery/controller/CtLongVideoController.java

@@ -1,103 +0,0 @@
-package com.fs.delivery.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.delivery.domain.CtLongVideo;
-import com.fs.delivery.service.ICtLongVideoService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 长视频Controller
- * 
- * @author fs
- * @date 2026-01-22
- */
-@RestController
-@RequestMapping("/delivery/video")
-public class CtLongVideoController extends BaseController
-{
-    @Autowired
-    private ICtLongVideoService ctLongVideoService;
-
-    /**
-     * 查询长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtLongVideo ctLongVideo)
-    {
-        startPage();
-        List<CtLongVideo> list = ctLongVideoService.selectCtLongVideoList(ctLongVideo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:export')")
-    @Log(title = "长视频", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtLongVideo ctLongVideo)
-    {
-        List<CtLongVideo> list = ctLongVideoService.selectCtLongVideoList(ctLongVideo);
-        ExcelUtil<CtLongVideo> util = new ExcelUtil<CtLongVideo>(CtLongVideo.class);
-        return util.exportExcel(list, "长视频数据");
-    }
-
-    /**
-     * 获取长视频详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(ctLongVideoService.selectCtLongVideoById(id));
-    }
-
-    /**
-     * 新增长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:add')")
-    @Log(title = "长视频", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtLongVideo ctLongVideo)
-    {
-        return toAjax(ctLongVideoService.insertCtLongVideo(ctLongVideo));
-    }
-
-    /**
-     * 修改长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:edit')")
-    @Log(title = "长视频", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtLongVideo ctLongVideo)
-    {
-        return toAjax(ctLongVideoService.updateCtLongVideo(ctLongVideo));
-    }
-
-    /**
-     * 删除长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:remove')")
-    @Log(title = "长视频", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctLongVideoService.deleteCtLongVideoByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/delivery/controller/CtShortVideoController.java

@@ -1,103 +0,0 @@
-package com.fs.delivery.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.delivery.domain.CtShortVideo;
-import com.fs.delivery.service.ICtShortVideoService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 长视频Controller
- * 
- * @author fs
- * @date 2026-01-22
- */
-@RestController
-@RequestMapping("/delivery/shortVideo")
-public class CtShortVideoController extends BaseController
-{
-    @Autowired
-    private ICtShortVideoService ctShortVideoService;
-
-    /**
-     * 查询长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtShortVideo ctShortVideo)
-    {
-        startPage();
-        List<CtShortVideo> list = ctShortVideoService.selectCtShortVideoList(ctShortVideo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:export')")
-    @Log(title = "长视频", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtShortVideo ctShortVideo)
-    {
-        List<CtShortVideo> list = ctShortVideoService.selectCtShortVideoList(ctShortVideo);
-        ExcelUtil<CtShortVideo> util = new ExcelUtil<CtShortVideo>(CtShortVideo.class);
-        return util.exportExcel(list, "长视频数据");
-    }
-
-    /**
-     * 获取长视频详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(ctShortVideoService.selectCtShortVideoById(id));
-    }
-
-    /**
-     * 新增长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:add')")
-    @Log(title = "长视频", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtShortVideo ctShortVideo)
-    {
-        return toAjax(ctShortVideoService.insertCtShortVideo(ctShortVideo));
-    }
-
-    /**
-     * 修改长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:edit')")
-    @Log(title = "长视频", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtShortVideo ctShortVideo)
-    {
-        return toAjax(ctShortVideoService.updateCtShortVideo(ctShortVideo));
-    }
-
-    /**
-     * 删除长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:remove')")
-    @Log(title = "长视频", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctShortVideoService.deleteCtShortVideoByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/delivery/controller/TagController.java

@@ -1,103 +0,0 @@
-package com.fs.delivery.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.delivery.domain.Tag;
-import com.fs.delivery.service.ITagService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 标签Controller
- * 
- * @author fs
- * @date 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/tag")
-public class TagController extends BaseController
-{
-    @Autowired
-    private ITagService tagService;
-
-    /**
-     * 查询标签列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Tag tag)
-    {
-        startPage();
-        List<Tag> list = tagService.selectTagList(tag);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出标签列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:export')")
-    @Log(title = "标签", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Tag tag)
-    {
-        List<Tag> list = tagService.selectTagList(tag);
-        ExcelUtil<Tag> util = new ExcelUtil<Tag>(Tag.class);
-        return util.exportExcel(list, "标签数据");
-    }
-
-    /**
-     * 获取标签详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(tagService.selectTagById(id));
-    }
-
-    /**
-     * 新增标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:add')")
-    @Log(title = "标签", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody Tag tag)
-    {
-        return toAjax(tagService.insertTag(tag));
-    }
-
-    /**
-     * 修改标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:edit')")
-    @Log(title = "标签", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Tag tag)
-    {
-        return toAjax(tagService.updateTag(tag));
-    }
-
-    /**
-     * 删除标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:remove')")
-    @Log(title = "标签", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(tagService.deleteTagByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/delivery/controller/TagGroupController.java

@@ -1,103 +0,0 @@
-package com.fs.delivery.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.delivery.domain.TagGroup;
-import com.fs.delivery.service.ITagGroupService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 标签分组Controller
- * 
- * @author fs
- * @date 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/group")
-public class TagGroupController extends BaseController
-{
-    @Autowired
-    private ITagGroupService tagGroupService;
-
-    /**
-     * 查询标签分组列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TagGroup tagGroup)
-    {
-        startPage();
-        List<TagGroup> list = tagGroupService.selectTagGroupList(tagGroup);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出标签分组列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:export')")
-    @Log(title = "标签分组", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TagGroup tagGroup)
-    {
-        List<TagGroup> list = tagGroupService.selectTagGroupList(tagGroup);
-        ExcelUtil<TagGroup> util = new ExcelUtil<TagGroup>(TagGroup.class);
-        return util.exportExcel(list, "标签分组数据");
-    }
-
-    /**
-     * 获取标签分组详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(tagGroupService.selectTagGroupById(id));
-    }
-
-    /**
-     * 新增标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:add')")
-    @Log(title = "标签分组", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TagGroup tagGroup)
-    {
-        return toAjax(tagGroupService.insertTagGroup(tagGroup));
-    }
-
-    /**
-     * 修改标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:edit')")
-    @Log(title = "标签分组", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TagGroup tagGroup)
-    {
-        return toAjax(tagGroupService.updateTagGroup(tagGroup));
-    }
-
-    /**
-     * 删除标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:remove')")
-    @Log(title = "标签分组", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(tagGroupService.deleteTagGroupByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/doctor/controller/DoctorBalanceLogController.java

@@ -1,103 +0,0 @@
-package com.fs.doctor.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.doctor.domain.DoctorBalanceLog;
-import com.fs.doctor.service.IDoctorBalanceLogService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 医生积分变动记录Controller
- * 
- * @author fs
- * @date 2026-01-26
- */
-@RestController
-@RequestMapping("/doctor/log")
-public class DoctorBalanceLogController extends BaseController
-{
-    @Autowired
-    private IDoctorBalanceLogService doctorBalanceLogService;
-
-    /**
-     * 查询医生积分变动记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorBalanceLog doctorBalanceLog)
-    {
-        startPage();
-        List<DoctorBalanceLog> list = doctorBalanceLogService.selectDoctorBalanceLogList(doctorBalanceLog);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生积分变动记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:export')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorBalanceLog doctorBalanceLog)
-    {
-        List<DoctorBalanceLog> list = doctorBalanceLogService.selectDoctorBalanceLogList(doctorBalanceLog);
-        ExcelUtil<DoctorBalanceLog> util = new ExcelUtil<DoctorBalanceLog>(DoctorBalanceLog.class);
-        return util.exportExcel(list, "医生积分变动记录数据");
-    }
-
-    /**
-     * 获取医生积分变动记录详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") String id)
-    {
-        return AjaxResult.success(doctorBalanceLogService.selectDoctorBalanceLogById(id));
-    }
-
-    /**
-     * 新增医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:add')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorBalanceLog doctorBalanceLog)
-    {
-        return toAjax(doctorBalanceLogService.insertDoctorBalanceLog(doctorBalanceLog));
-    }
-
-    /**
-     * 修改医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:edit')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorBalanceLog doctorBalanceLog)
-    {
-        return toAjax(doctorBalanceLogService.updateDoctorBalanceLog(doctorBalanceLog));
-    }
-
-    /**
-     * 删除医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:remove')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable String[] ids)
-    {
-        return toAjax(doctorBalanceLogService.deleteDoctorBalanceLogByIds(ids));
-    }
-}

+ 0 - 142
fs-admin/src/main/java/com/fs/doctor/controller/DoctorCompanyUserController.java

@@ -1,142 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.BeanCopyUtils;
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.company.vo.DoctorCompanyUserVO;
-import com.fs.doctor.domain.DoctorCompanyUser;
-import com.fs.doctor.service.IDoctorCompanyUserService;
-import com.fs.doctor.vo.ProductGroupReqVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/user")
-public class DoctorCompanyUserController extends BaseController
-{
-    @Autowired
-    private IDoctorCompanyUserService doctorCompanyUserService;
-
-    /**
-     * 查询讲者业务员绑定列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorCompanyUser doctorCompanyUser)
-    {
-        startPage();
-        List<DoctorCompanyUserVO> doctorCompanyUserVOS = doctorCompanyUserService.selectDoctorCompanyUserList(doctorCompanyUser);
-        return getDataTable(doctorCompanyUserVOS);
-    }
-
-    /**
-     * 导出讲者业务员绑定列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:export')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorCompanyUser doctorCompanyUser)
-    {
-        List<DoctorCompanyUserVO> doctorCompanyUserVOS = doctorCompanyUserService.selectDoctorCompanyUserList(doctorCompanyUser);
-        ExcelUtil<DoctorCompanyUserVO> util = new ExcelUtil<DoctorCompanyUserVO>(DoctorCompanyUserVO.class);
-        return util.exportExcel(doctorCompanyUserVOS, "讲者业务员绑定数据");
-    }
-
-    /**
-     * 获取讲者业务员绑定详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorCompanyUserService.selectDoctorCompanyUserById(id));
-    }
-
-    /**
-     * 新增讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:add')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorCompanyUser doctorCompanyUser)
-    {
-        return toAjax(doctorCompanyUserService.insertDoctorCompanyUser(doctorCompanyUser));
-    }
-
-    /**
-     * 修改讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:edit')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorCompanyUser doctorCompanyUser)
-    {
-        return toAjax(doctorCompanyUserService.updateDoctorCompanyUser(doctorCompanyUser));
-    }
-
-    /**
-     * 删除讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:remove')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(doctorCompanyUserService.deleteDoctorCompanyUserByIds(ids));
-    }
-
-    @GetMapping("/getProductGroup")
-    @Log(title = "获取产品组")
-    public AjaxResult getProductGroup(ProductGroupReqVO req) {
-
-        String pg = doctorCompanyUserService.queryProductGroup(req.getCompanyId(), req.getDoctorId());
-        return AjaxResult.success(pg);
-    }
-
-
-    /**
-     * 按公司+业务员联想查询讲者(只返回该业务员已绑定的讲者,且讲者审核通过)
-     * 参数:
-     *  companyId(必填)
-     *  companyUserId(必填)
-     *  keyword(可选:讲者姓名/手机号模糊)
-     */
-    @GetMapping("/options/optionsByCompanyUser")
-    public AjaxResult doctorOptionsByCompanyUser(
-            @RequestParam Long companyId,
-            @RequestParam Long companyUserId,
-            @RequestParam(required = false) String productCode,
-            @RequestParam(required = false) String keyword
-    ) {
-        return AjaxResult.success(
-                doctorCompanyUserService.getDoctorOptionsByCompanyUser(companyId, companyUserId,productCode, keyword)
-        );
-    }
-
-
-
-    @GetMapping("/options/productoptionsByCompanyUser")
-    public AjaxResult productOptionsByCompanyUser(
-            @RequestParam Long companyId,
-            @RequestParam Long companyUserId,
-            @RequestParam(required = false) String keyword
-    ) {
-        return AjaxResult.success(
-                doctorCompanyUserService.getProductOptionsByCompanyUser(companyId, companyUserId, keyword)
-        );
-    }
-
-
-}

+ 0 - 144
fs-admin/src/main/java/com/fs/doctor/controller/DoctorController.java

@@ -1,144 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.BeanCopyUtils;
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.Doctor;
-import com.fs.doctor.service.IDoctorService;
-import com.fs.doctor.vo.*;
-import com.fs.task.vo.TaskFinishAuditReqVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/doctor")
-public class DoctorController extends BaseController
-{
-    @Autowired
-    private IDoctorService doctorService;
-
-    /**
-     * 查询讲者列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Doctor doctor)
-    {
-        startPage();
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        List<DoctorVO> doctorVOS = BeanCopyUtils.copyList(list, DoctorVO.class);
-
-        return getDataTable(doctorVOS);
-    }
-
-    /**
-     * 导出讲者列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:export')")
-    @Log(title = "讲者", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Doctor doctor)
-    {
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        ExcelUtil<Doctor> util = new ExcelUtil<Doctor>(Doctor.class);
-        return util.exportExcel(list, "讲者数据");
-    }
-
-    /**
-     * 获取讲者详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorService.selectDoctorById(id));
-    }
-
-    /**
-     * 新增讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:add')")
-    @Log(title = "讲者", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorVO doctorVO)
-    {
-       return toAjax( doctorService.add(doctorVO));
-    }
-
-    /**
-     * 修改讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:edit')")
-    @Log(title = "讲者", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Doctor doctor)
-    {
-        return toAjax(doctorService.updateDoctor(doctor));
-    }
-
-    /**
-     * 删除讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:remove')")
-    @Log(title = "讲者", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorService.deleteDoctorByIds(ids));
-    }
-
-
-        @PreAuthorize("@ss.hasPermi('doctor:doctor:list')")
-        @GetMapping("/getDoctorOptionVOList")
-        public AjaxResult getDoctorOptionVOList(DoctorOptionReqVO doctorOptionReqVO)
-        {
-            List<DoctorOptionRespVO> list = doctorService.getDoctorOptionVOList(doctorOptionReqVO);
-            return AjaxResult.success(list);
-        }
-
-
-    /**
-     * 查询讲者审核页面信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:audit')")
-    @GetMapping("/audit/{id}")
-    public AjaxResult getAuditInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorService.selectDoctorAuditInfo(id));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:audit')")
-    @Log(title = "完成审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("doAudit")
-    public void doAudit(@RequestBody DoctorDoAuditReqVO doctorDoAuditReqVO){
-        doctorService.doAudit(doctorDoAuditReqVO);
-    }
-
-
-
-    /**
-     * 修改讲者密码
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:edit')")
-    @Log(title = "讲者-修改密码", businessType = BusinessType.UPDATE)
-    @PostMapping("/resetPwd")
-    public AjaxResult resetPwd(@RequestBody DoctorResetPwdReqVO req) {
-        return toAjax(doctorService.resetPwd(req));
-    }
-
-
-}

+ 0 - 112
fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelApplyController.java

@@ -1,112 +0,0 @@
-package com.fs.doctor.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelApply;
-import com.fs.doctor.service.IDoctorLevelApplyService;
-import com.fs.doctor.vo.DoctorApplyAuditReqVO;
-import com.fs.doctor.vo.DoctorLevelApplyVO;
-import org.apache.ibatis.annotations.Update;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/apply")
-public class DoctorLevelApplyController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelApplyService doctorLevelApplyService;
-
-    /**
-     * 查询讲者定级申请列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelApply doctorLevelApply)
-    {
-        startPage();
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者定级申请列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:export')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelApply doctorLevelApply)
-    {
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        ExcelUtil<DoctorLevelApply> util = new ExcelUtil<DoctorLevelApply>(DoctorLevelApply.class);
-        return util.exportExcel(list, "讲者定级申请数据");
-    }
-
-    /**
-     * 获取讲者定级申请详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelApplyService.selectDoctorLevelApplyById(id));
-    }
-
-    /**
-     * 新增讲者定级申请
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:add')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        return toAjax(doctorLevelApplyService.insertDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 修改讲者定级申请
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:edit')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        return toAjax(doctorLevelApplyService.updateDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 讲者定级申请
-     */
-    @Log(title = "讲者定级申请", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(doctorLevelApplyService.deleteDoctorLevelApplyByIds(ids));
-    }
-
-
-//    @Log(title = "讲者定级申请审核与查看页面信息")
-    @GetMapping(value = "/getDoctorApplyDetailInfoById")
-    public AjaxResult getDoctorApplyDetailInfoById(@RequestParam("id") Long id){
-
-        return AjaxResult.success(doctorLevelApplyService.getAdminDoctorApplyDetailInfoById(id));
-    }
-
-    @Log(title = "讲者定级申请审核", businessType = BusinessType.UPDATE)
-    @PostMapping(value = "/doAudit")
-    public void doAudit(@RequestBody DoctorApplyAuditReqVO doctorApplyAuditReqVO){
-        doctorLevelApplyService.doAudit(doctorApplyAuditReqVO);
-    }
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelController.java

@@ -1,97 +0,0 @@
-package com.fs.doctor.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevel;
-import com.fs.doctor.service.IDoctorLevelService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/level")
-public class DoctorLevelController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelService doctorLevelService;
-
-    /**
-     * 查询讲者级别信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevel doctorLevel)
-    {
-        startPage();
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者级别信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:export')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevel doctorLevel)
-    {
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        ExcelUtil<DoctorLevel> util = new ExcelUtil<DoctorLevel>(DoctorLevel.class);
-        return util.exportExcel(list, "讲者级别信息数据");
-    }
-
-    /**
-     * 获取讲者级别信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelService.selectDoctorLevelById(id));
-    }
-
-    /**
-     * 新增讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:add')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevel doctorLevel)
-    {
-        return toAjax(doctorLevelService.insertDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 修改讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:edit')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevel doctorLevel)
-    {
-        return toAjax(doctorLevelService.updateDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 删除讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:remove')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelService.deleteDoctorLevelByIds(ids));
-    }
-}

+ 0 - 98
fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelDataController.java

@@ -1,98 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelData;
-import com.fs.doctor.service.IDoctorLevelDataService;
-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 2026-02-12
- */
-@RestController
-@RequestMapping("/doctor/data")
-public class DoctorLevelDataController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelDataService doctorLevelDataService;
-
-    /**
-     * 查询医生级别列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelData doctorLevelData)
-    {
-        startPage();
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生级别列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:export')")
-    @Log(title = "医生级别", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelData doctorLevelData)
-    {
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        ExcelUtil<DoctorLevelData> util = new ExcelUtil<DoctorLevelData>(DoctorLevelData.class);
-        return util.exportExcel(list, "医生级别数据");
-    }
-
-    /**
-     * 获取医生级别详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelDataService.selectDoctorLevelDataById(id));
-    }
-
-    /**
-     * 新增医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:add')")
-    @Log(title = "医生级别", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        return toAjax(doctorLevelDataService.insertDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 修改医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:edit')")
-    @Log(title = "医生级别", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        return toAjax(doctorLevelDataService.updateDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 删除医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:remove')")
-    @Log(title = "医生级别", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelDataService.deleteDoctorLevelDataByIds(ids));
-    }
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/doctor/controller/DoctorLevelMaterialController.java

@@ -1,97 +0,0 @@
-package com.fs.doctor.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelMaterial;
-import com.fs.doctor.service.IDoctorLevelMaterialService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/material")
-public class DoctorLevelMaterialController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelMaterialService doctorLevelMaterialService;
-
-    /**
-     * 查询定级证明材料列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelMaterial doctorLevelMaterial)
-    {
-        startPage();
-        List<DoctorLevelMaterial> list = doctorLevelMaterialService.selectDoctorLevelMaterialList(doctorLevelMaterial);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出定级证明材料列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:export')")
-    @Log(title = "定级证明材料", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelMaterial doctorLevelMaterial)
-    {
-        List<DoctorLevelMaterial> list = doctorLevelMaterialService.selectDoctorLevelMaterialList(doctorLevelMaterial);
-        ExcelUtil<DoctorLevelMaterial> util = new ExcelUtil<DoctorLevelMaterial>(DoctorLevelMaterial.class);
-        return util.exportExcel(list, "定级证明材料数据");
-    }
-
-    /**
-     * 获取定级证明材料详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelMaterialService.selectDoctorLevelMaterialById(id));
-    }
-
-    /**
-     * 新增定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:add')")
-    @Log(title = "定级证明材料", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelMaterial doctorLevelMaterial)
-    {
-        return toAjax(doctorLevelMaterialService.insertDoctorLevelMaterial(doctorLevelMaterial));
-    }
-
-    /**
-     * 修改定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:edit')")
-    @Log(title = "定级证明材料", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelMaterial doctorLevelMaterial)
-    {
-        return toAjax(doctorLevelMaterialService.updateDoctorLevelMaterial(doctorLevelMaterial));
-    }
-
-    /**
-     * 删除定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:remove')")
-    @Log(title = "定级证明材料", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelMaterialService.deleteDoctorLevelMaterialByIds(ids));
-    }
-}

+ 0 - 124
fs-admin/src/main/java/com/fs/doctor/controller/WithdrawRecordsController.java

@@ -1,124 +0,0 @@
-package com.fs.doctor.controller;
-
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.doctor.domain.WithdrawRecords;
-import com.fs.doctor.service.IWithdrawRecordsService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 医生提现记录Controller
- *
- * @author fs
- * @date 2026-01-27
- */
-@RestController
-@RequestMapping("/doctor/records")
-public class WithdrawRecordsController extends BaseController
-{
-    @Autowired
-    private IWithdrawRecordsService withdrawRecordsService;
-
-    /**
-     * 查询医生提现记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(WithdrawRecords withdrawRecords)
-    {
-        startPage();
-        List<WithdrawRecords> list = withdrawRecordsService.selectWithdrawRecordsList(withdrawRecords);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生提现记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:export')")
-    @Log(title = "医生提现记录", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(WithdrawRecords withdrawRecords)
-    {
-        List<WithdrawRecords> list = withdrawRecordsService.selectWithdrawRecordsList(withdrawRecords);
-        ExcelUtil<WithdrawRecords> util = new ExcelUtil<WithdrawRecords>(WithdrawRecords.class);
-        return util.exportExcel(list, "医生提现记录数据");
-    }
-
-    /**
-     * 获取医生提现记录详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:query')")
-    @GetMapping(value = "/{withdrawId}")
-    public AjaxResult getInfo(@PathVariable("withdrawId") Long withdrawId)
-    {
-        return AjaxResult.success(withdrawRecordsService.selectWithdrawRecordsByWithdrawId(withdrawId));
-    }
-
-    /**
-     * 新增医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:add')")
-    @Log(title = "医生提现记录", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        return toAjax(withdrawRecordsService.insertWithdrawRecords(withdrawRecords));
-    }
-
-    /**
-     * 修改医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:edit')")
-    @Log(title = "医生提现记录", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        return toAjax(withdrawRecordsService.updateWithdrawRecords(withdrawRecords));
-    }
-
-    /**
-     * 删除医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:remove')")
-    @Log(title = "医生提现记录", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{withdrawIds}")
-    public AjaxResult remove(@PathVariable String[] withdrawIds)
-    {
-        return toAjax(withdrawRecordsService.deleteWithdrawRecordsByWithdrawIds(withdrawIds));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('doctor:records:audit')")
-    @Log(title = "医生提现记录", businessType = BusinessType.UPDATE)
-    @PostMapping("/audit")
-    public AjaxResult audit(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        return toAjax(withdrawRecordsService.auditWithdraw(withdrawRecords));
-    }
-
-    @PreAuthorize("@ss.hasPermi('doctor:records:query')")
-    @Log(title = "提现审核详情", businessType = BusinessType.OTHER)
-    @GetMapping("/auditInfo/{withdrawId}")
-    public AjaxResult auditInfo(@PathVariable Long withdrawId) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-
-        return AjaxResult.success(withdrawRecordsService.getRecordAuditInfo(withdrawId));
-    }
-
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/project/controller/ProjectContractController.java

@@ -1,97 +0,0 @@
-package com.fs.project.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectContract;
-import com.fs.project.service.IProjectContractService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/contract")
-public class ProjectContractController extends BaseController
-{
-    @Autowired
-    private IProjectContractService projectContractService;
-
-    /**
-     * 查询项目合同信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectContract projectContract)
-    {
-        startPage();
-        List<ProjectContract> list = projectContractService.selectProjectContractList(projectContract);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目合同信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:export')")
-    @Log(title = "项目合同信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectContract projectContract)
-    {
-        List<ProjectContract> list = projectContractService.selectProjectContractList(projectContract);
-        ExcelUtil<ProjectContract> util = new ExcelUtil<ProjectContract>(ProjectContract.class);
-        return util.exportExcel(list, "项目合同信息数据");
-    }
-
-    /**
-     * 获取项目合同信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectContractService.selectProjectContractById(id));
-    }
-
-    /**
-     * 新增项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:add')")
-    @Log(title = "项目合同信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectContract projectContract)
-    {
-        return toAjax(projectContractService.insertProjectContract(projectContract));
-    }
-
-    /**
-     * 修改项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:edit')")
-    @Log(title = "项目合同信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectContract projectContract)
-    {
-        return toAjax(projectContractService.updateProjectContract(projectContract));
-    }
-
-    /**
-     * 删除项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:remove')")
-    @Log(title = "项目合同信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectContractService.deleteProjectContractByIds(ids));
-    }
-}

+ 0 - 113
fs-admin/src/main/java/com/fs/project/controller/ProjectController.java

@@ -1,113 +0,0 @@
-package com.fs.project.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.Project;
-import com.fs.project.service.IProjectService;
-import com.fs.project.vo.AddProjectReqVO;
-import com.fs.project.vo.ProjectOptionVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/project")
-public class ProjectController extends BaseController {
-    @Autowired
-    private IProjectService projectService;
-
-    /**
-     * 查询项目列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Project project) {
-        startPage();
-        List<Project> list = projectService.selectProjectList(project);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:export')")
-    @Log(title = "项目", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Project project) {
-        List<Project> list = projectService.selectProjectList(project);
-        ExcelUtil<Project> util = new ExcelUtil<Project>(Project.class);
-        return util.exportExcel(list, "项目数据");
-    }
-
-    /**
-     * 获取项目详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:query')")
-    @GetMapping("/{id:\\d+}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(projectService.selectProjectDetailById(id));
-    }
-
-    /**
-     * 新增项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:add')")
-    @Log(title = "项目", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody AddProjectReqVO addProjectReqVO) {
-        return toAjax(projectService.add(addProjectReqVO));
-    }
-
-    /**
-     * 修改项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:edit')")
-    @Log(title = "项目", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody AddProjectReqVO addProjectReqVO) {
-        return toAjax(projectService.edit(addProjectReqVO));
-    }
-
-    /**
-     * 删除项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:remove')")
-    @Log(title = "项目", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectService.deleteProjectByIds(ids));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('project:project:list')")
-    @GetMapping("/options")
-    public AjaxResult options(@RequestParam(required = false) String projectName) {
-        List<ProjectOptionVO> list = projectService.selectProjectOptions(projectName);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 修改项目启用状态
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:edit')")
-    @Log(title = "项目", businessType = BusinessType.UPDATE)
-    @PutMapping("/changeStatus")
-    public AjaxResult changeStatus(@RequestBody Project project) {
-        // 只需要 id 和 status
-        return toAjax(projectService.changeStatus(project.getId(), project.getStatus()));
-    }
-
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/project/controller/ProjectPermissionController.java

@@ -1,97 +0,0 @@
-package com.fs.project.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectPermission;
-import com.fs.project.service.IProjectPermissionService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/permission")
-public class ProjectPermissionController extends BaseController
-{
-    @Autowired
-    private IProjectPermissionService projectPermissionService;
-
-    /**
-     * 查询项目权限列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectPermission projectPermission)
-    {
-        startPage();
-         List<ProjectPermission> list = projectPermissionService.selectProjectPermissionList(projectPermission);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目权限列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:export')")
-    @Log(title = "项目权限", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectPermission projectPermission)
-    {
-        List<ProjectPermission> list = projectPermissionService.selectProjectPermissionList(projectPermission);
-        ExcelUtil<ProjectPermission> util = new ExcelUtil<ProjectPermission>(ProjectPermission.class);
-        return util.exportExcel(list, "项目权限数据");
-    }
-
-    /**
-     * 获取项目权限详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectPermissionService.selectProjectPermissionById(id));
-    }
-
-    /**
-     * 新增项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:add')")
-    @Log(title = "项目权限", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectPermission projectPermission)
-    {
-        return toAjax(projectPermissionService.insertProjectPermission(projectPermission));
-    }
-
-    /**
-     * 修改项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:edit')")
-    @Log(title = "项目权限", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectPermission projectPermission)
-    {
-        return toAjax(projectPermissionService.updateProjectPermission(projectPermission));
-    }
-
-    /**
-     * 删除项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:remove')")
-    @Log(title = "项目权限", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectPermissionService.deleteProjectPermissionByIds(ids));
-    }
-}

+ 0 - 143
fs-admin/src/main/java/com/fs/project/controller/ProjectSettingsController.java

@@ -1,143 +0,0 @@
-package com.fs.project.controller;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-import com.fs.common.config.LoginContextManager;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.project.domain.ProjectSettings;
-import com.fs.project.service.IProjectSettingsService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 项目设置Controller
- *
- * @author fs
- * @date 2026-01-12
- */
-@RestController
-@RequestMapping("/project/settings")
-public class ProjectSettingsController extends BaseController
-{
-    @Autowired
-    private IProjectSettingsService projectSettingsService;
-
-    /**
-     * 查询项目设置列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectSettings projectSettings)
-    {
-        startPage();
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目设置列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:export')")
-    @Log(title = "项目设置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectSettings projectSettings)
-    {
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        ExcelUtil<ProjectSettings> util = new ExcelUtil<ProjectSettings>(ProjectSettings.class);
-        return util.exportExcel(list, "项目设置数据");
-    }
-
-    /**
-     * 获取项目设置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsById(id));
-    }
-
-    /**
-     * 新增项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:add')")
-    @Log(title = "项目设置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectSettings projectSettings)
-    {
-        return toAjax(projectSettingsService.insertProjectSettings(projectSettings));
-    }
-
-    /**
-     * 修改项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:edit')")
-    @Log(title = "项目设置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectSettings projectSettings)
-    {
-        return toAjax(projectSettingsService.updateProjectSettings(projectSettings));
-    }
-
-    /**
-     * 删除项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:remove')")
-    @Log(title = "项目设置", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectSettingsService.deleteProjectSettingsByIds(ids));
-    }
-
-    /**
-     * 查询指定公司下的项目设置列表
-     */
-    @GetMapping("/company/{companyId}")
-    public AjaxResult listByCompanyId(@PathVariable String companyId)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsByCompanyId(companyId));
-    }
-
-
-
-    /**
-     * 查询项目设置具体配置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:list')")
-    @GetMapping("/getSettingTaskTypeList")
-    public AjaxResult getprojectSetting(ProjectSettings projectSettings) throws Exception {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectSettings.setCompanyId(currentCompanyId);
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        ProjectSettings projectSettings1 = list.get(0);
-        if(Objects.isNull(projectSettings1)){
-            throw new Exception("当前部门下未配置项目设置,请先配置");
-        }
-        //逗号分割的任务类型
-        String inHisTaskTypes = projectSettings1.getInHisTaskTypes();
-        List<Integer> taskTypeIdList = Arrays.stream(inHisTaskTypes.split(","))
-                .map(String::trim)
-                .filter(s -> !s.isEmpty())
-                .map(Integer::parseInt)
-                .collect(Collectors.toList());
-        return AjaxResult.success(taskTypeIdList);
-    }
-}

+ 0 - 108
fs-admin/src/main/java/com/fs/project/controller/ProjectStandardController.java

@@ -1,108 +0,0 @@
-package com.fs.project.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectStandard;
-import com.fs.project.service.IProjectStandardService;
-import com.fs.project.vo.ProjectStandardDTO;
-import com.fs.project.vo.ProjectStandardVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-import java.util.Set;
-
-@RestController
-@RequestMapping("/project/standard")
-public class ProjectStandardController extends BaseController {
-
-    @Autowired
-    private IProjectStandardService projectStandardService;
-
-    /**
-     * 查询列表 - 返回 VO(自动转换 levelConfigList)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectStandard projectStandard) {
-        startPage();
-        List<ProjectStandardVO> voList = projectStandardService.listVo(projectStandard);
-        return getDataTable(voList);
-    }
-
-    /**
-     * 导出(暂保持原逻辑,导出字符串 JSON)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:export')")
-    @Log(title = "项目标准配置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectStandard projectStandard) {
-        List<ProjectStandard> list = projectStandardService.selectProjectStandardList(projectStandard);
-        ExcelUtil<ProjectStandard> util = new ExcelUtil<>(ProjectStandard.class);
-        return util.exportExcel(list, "项目标准配置数据");
-    }
-
-    /**
-     * 获取详情 - 返回 VO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        ProjectStandardVO vo = projectStandardService.getDetailVo(id);
-        return AjaxResult.success(vo);
-    }
-
-    /**
-     * 新增 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:add')")
-    @Log(title = "项目标准配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectStandardDTO dto) {
-        // 校验唯一性
-        projectStandardService.checkParseTaskTypes(dto);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 修改 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:edit')")
-    @Log(title = "项目标准配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectStandardDTO dto) {
-        projectStandardService.checkEditParseTaskTypes(dto);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 删除(逻辑删除)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:remove')")
-    @Log(title = "项目标准配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectStandardService.deleteProjectStandardByIds(ids));
-    }
-
-
-    /**
-     * 获取项目允许的最大积分额度
-     *
-     * @param projectId 项目ID(必填)
-     * @return { "maxIntegral": 500.00 },若未配置则返回 null
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/checkIntegralLimit")
-    public AjaxResult checkIntegralLimit(@RequestParam Long projectId, @RequestParam Long doctorId, @RequestParam Integer pointNum,Long taskType) {
-        return AjaxResult.success(projectStandardService.getCompanyIntegralLimit(projectId, doctorId, pointNum,taskType));
-
-    }
-}

+ 0 - 109
fs-admin/src/main/java/com/fs/project/controller/ProjectTaskTypeController.java

@@ -1,109 +0,0 @@
-package com.fs.project.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectTaskType;
-import com.fs.project.service.IProjectTaskTypeService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/type")
-public class ProjectTaskTypeController extends BaseController
-{
-    @Autowired
-    private IProjectTaskTypeService projectTaskTypeService;
-
-    /**
-     * 查询项目任务类型列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectTaskType projectTaskType)
-    {
-        startPage();
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目任务类型列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:export')")
-    @Log(title = "项目任务类型", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectTaskType projectTaskType)
-    {
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        ExcelUtil<ProjectTaskType> util = new ExcelUtil<ProjectTaskType>(ProjectTaskType.class);
-        return util.exportExcel(list, "项目任务类型数据");
-    }
-
-    /**
-     * 获取项目任务类型详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectTaskTypeService.selectProjectTaskTypeById(id));
-    }
-
-    /**
-     * 新增项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:add')")
-    @Log(title = "项目任务类型", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectTaskType projectTaskType)
-    {
-        return toAjax(projectTaskTypeService.insertProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 修改项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:edit')")
-    @Log(title = "项目任务类型", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectTaskType projectTaskType)
-    {
-        return toAjax(projectTaskTypeService.updateProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 删除项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:remove')")
-    @Log(title = "项目任务类型", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectTaskTypeService.deleteProjectTaskTypeByIds(ids));
-    }
-
-
-
-
-    @GetMapping("/selectProjectOptionsByDept")
-    public AjaxResult optionsByDept(@RequestParam Long deptId,
-                                    @RequestParam(required = false) String projectName) {
-        return AjaxResult.success(projectTaskTypeService.selectProjectOptionsByDept(deptId, projectName));
-    }
-
-
-
-}

+ 0 - 128
fs-admin/src/main/java/com/fs/provider/controller/ServiceGenConfigController.java

@@ -1,128 +0,0 @@
-package com.fs.provider.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceGenConfig;
-import com.fs.provider.service.IServiceGenConfigService;
-import com.fs.provider.vo.ServiceGenConfigAuditReqVO;
-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 2026-01-27
- */
-@RestController
-@RequestMapping("/service/config")
-public class ServiceGenConfigController extends BaseController {
-    @Autowired
-    private IServiceGenConfigService serviceGenConfigService;
-
-    /**
-     * 查询任务生成配置列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceGenConfig serviceGenConfig) {
-        startPage();
-
-        List<ServiceGenConfig> list = serviceGenConfigService.selectServiceGenConfigList(serviceGenConfig);
-        return getDataTable(list);
-    }
-
-
-    /**
-     * 导出任务生成配置列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:export')")
-    @Log(title = "任务生成配置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceGenConfig serviceGenConfig) {
-        List<ServiceGenConfig> list = serviceGenConfigService.selectServiceGenConfigList(serviceGenConfig);
-        ExcelUtil<ServiceGenConfig> util = new ExcelUtil<ServiceGenConfig>(ServiceGenConfig.class);
-        return util.exportExcel(list, "任务生成配置数据");
-    }
-
-    /**
-     * 获取任务生成配置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(serviceGenConfigService.selectServiceGenConfigById(id));
-    }
-
-
-    /**
-     * 获取任务生成配置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:query')")
-    @GetMapping("/audit/{id}")
-    public AjaxResult getAuditInfoById(@PathVariable Long id) {
-        return AjaxResult.success(serviceGenConfigService.getAuditInfoById(id));
-    }
-
-    /**
-     * 新增任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:add')")
-    @Log(title = "任务生成配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceGenConfig serviceGenConfig) {
-        return toAjax(serviceGenConfigService.insertServiceGenConfig(serviceGenConfig));
-    }
-
-    /**
-     * 修改任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:edit')")
-    @Log(title = "任务生成配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceGenConfig serviceGenConfig) {
-        return toAjax(serviceGenConfigService.updateServiceGenConfig(serviceGenConfig));
-    }
-
-    /**
-     * 删除任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:remove')")
-    @Log(title = "任务生成配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(serviceGenConfigService.deleteServiceGenConfigByIds(ids));
-    }
-
-
-    /**
-     * 审核任务生成配置
-     * <p>
-     * 前端请求示例:
-     * POST /service/config/audit
-     * {
-     * "id": 1,
-     * "auditStatus": 1,        // 1-通过,2-不通过
-     * "auditRemark": "xxx",    // 审核描述
-     * "auditInstanceId": 123   // 可选
-     * }
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:edit')")
-    @Log(title = "任务生成配置审核", businessType = BusinessType.UPDATE)
-    @PostMapping("/audit")
-    public AjaxResult audit(@RequestBody ServiceGenConfigAuditReqVO serviceGenConfigAuditReqVO) {
-        // 这里只做壳子:保证能进来即可
-        // 你可以在 Service 里校验 needAudit / auditStatus 状态机 / 幂等 等逻辑
-        return toAjax(serviceGenConfigService.audit(serviceGenConfigAuditReqVO));
-    }
-
-
-}

+ 0 - 125
fs-admin/src/main/java/com/fs/provider/controller/ServiceOrderController.java

@@ -1,125 +0,0 @@
-package com.fs.provider.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceOrder;
-import com.fs.provider.service.IServiceOrderService;
-import com.fs.provider.vo.GenerateServiceOrderReqVO;
-import com.fs.provider.vo.ServiceOrderAuditReqVO;
-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 2026-01-26
- */
-@RestController
-@RequestMapping("/service/order")
-public class ServiceOrderController extends BaseController
-{
-    @Autowired
-    private IServiceOrderService serviceOrderService;
-
-    /**
-     * 查询服务单信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceOrder serviceOrder)
-    {
-        startPage();
-        List<ServiceOrder> list = serviceOrderService.selectServiceOrderList(serviceOrder);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出服务单信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:export')")
-    @Log(title = "服务单信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceOrder serviceOrder)
-    {
-        List<ServiceOrder> list = serviceOrderService.selectServiceOrderList(serviceOrder);
-        ExcelUtil<ServiceOrder> util = new ExcelUtil<ServiceOrder>(ServiceOrder.class);
-        return util.exportExcel(list, "服务单信息数据");
-    }
-
-    /**
-     * 获取服务单信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(serviceOrderService.selectServiceOrderById(id));
-    }
-
-    /**
-     * 新增服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:add')")
-    @Log(title = "服务单信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceOrder serviceOrder)
-    {
-        return toAjax(serviceOrderService.insertServiceOrder(serviceOrder));
-    }
-
-    /**
-     * 修改服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:edit')")
-    @Log(title = "服务单信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceOrder serviceOrder)
-    {
-        return toAjax(serviceOrderService.updateServiceOrder(serviceOrder));
-    }
-
-    /**
-     * 删除服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:remove')")
-    @Log(title = "服务单信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(serviceOrderService.deleteServiceOrderByIds(ids));
-    }
-
-
-    /**
-     * 根据任务ID生成服务单
-     */
-    @PostMapping("/generateByTask")
-    @PreAuthorize("@ss.hasPermi('service:order:add')")
-    public AjaxResult generateServiceOrderByTask(@RequestBody GenerateServiceOrderReqVO reqVO) {
-        if (reqVO == null || reqVO.getTaskId() == null) {
-            return AjaxResult.error("任务ID不能为空");
-        }
-        return AjaxResult.success(serviceOrderService.generateByTaskId(reqVO.getTaskId()));
-    }
-
-
-
-    /**
-     * 获取服务单信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:query')")
-    @GetMapping(value = "getAuditInfo")
-    public AjaxResult getAuditInfo(ServiceOrderAuditReqVO serviceOrderAuditReqVO){
-        return AjaxResult.success(serviceOrderService.getAuditInfo(serviceOrderAuditReqVO));
-    }
-
-
-}

+ 0 - 97
fs-admin/src/main/java/com/fs/provider/controller/ServiceOrderTaskRelController.java

@@ -1,97 +0,0 @@
-package com.fs.provider.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceOrderTaskRel;
-import com.fs.provider.service.IServiceOrderTaskRelService;
-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 2026-01-26
- */
-@RestController
-@RequestMapping("/service/rel")
-public class ServiceOrderTaskRelController extends BaseController
-{
-    @Autowired
-    private IServiceOrderTaskRelService serviceOrderTaskRelService;
-
-    /**
-     * 查询服务单-任务关联列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        startPage();
-        List<ServiceOrderTaskRel> list = serviceOrderTaskRelService.selectServiceOrderTaskRelList(serviceOrderTaskRel);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出服务单-任务关联列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:export')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        List<ServiceOrderTaskRel> list = serviceOrderTaskRelService.selectServiceOrderTaskRelList(serviceOrderTaskRel);
-        ExcelUtil<ServiceOrderTaskRel> util = new ExcelUtil<ServiceOrderTaskRel>(ServiceOrderTaskRel.class);
-        return util.exportExcel(list, "服务单-任务关联数据");
-    }
-
-    /**
-     * 获取服务单-任务关联详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(serviceOrderTaskRelService.selectServiceOrderTaskRelById(id));
-    }
-
-    /**
-     * 新增服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:add')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        return toAjax(serviceOrderTaskRelService.insertServiceOrderTaskRel(serviceOrderTaskRel));
-    }
-
-    /**
-     * 修改服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:edit')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        return toAjax(serviceOrderTaskRelService.updateServiceOrderTaskRel(serviceOrderTaskRel));
-    }
-
-    /**
-     * 删除服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:remove')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(serviceOrderTaskRelService.deleteServiceOrderTaskRelByIds(ids));
-    }
-}

+ 0 - 108
fs-admin/src/main/java/com/fs/survey/DrugResearchController.java

@@ -1,108 +0,0 @@
-package com.fs.survey;
-
-import java.util.Date;
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.utils.SecurityUtils;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.DrugResearch;
-import com.fs.survey.service.IDrugResearchService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 用药调研Controller
- * 
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/drugResearch")
-public class DrugResearchController extends BaseController
-{
-    @Autowired
-    private IDrugResearchService drugResearchService;
-
-    /**
-     * 查询用药调研列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DrugResearch drugResearch)
-    {
-        startPage();
-        List<DrugResearch> list = drugResearchService.selectDrugResearchList(drugResearch);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出用药调研列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:export')")
-    @Log(title = "用药调研", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DrugResearch drugResearch)
-    {
-        List<DrugResearch> list = drugResearchService.selectDrugResearchList(drugResearch);
-        ExcelUtil<DrugResearch> util = new ExcelUtil<DrugResearch>(DrugResearch.class);
-        return util.exportExcel(list, "用药调研数据");
-    }
-
-    /**
-     * 获取用药调研详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(drugResearchService.selectDrugResearchById(id));
-    }
-
-    /**
-     * 新增用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:add')")
-    @Log(title = "用药调研", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DrugResearch drugResearch)
-    {
-
-        return toAjax(drugResearchService.insertDrugResearch(drugResearch));
-    }
-
-    /**
-     * 修改用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:edit')")
-    @Log(title = "用药调研", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DrugResearch drugResearch)
-    {
-        return toAjax(drugResearchService.updateDrugResearch(drugResearch));
-    }
-
-    /**
-     * 删除用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:remove')")
-    @Log(title = "用药调研", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(drugResearchService.deleteDrugResearchByIds(ids));
-    }
-}

+ 0 - 199
fs-admin/src/main/java/com/fs/survey/SurveyDataController.java

@@ -1,199 +0,0 @@
-package com.fs.survey;
-
-import com.alibaba.fastjson2.JSONArray;
-import com.alibaba.fastjson2.JSONObject;
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyFieldConfig;
-import com.fs.survey.mapper.SurveyFieldConfigMapper;
-import com.fs.survey.service.ISurveyDataService;
-import org.apache.poi.ss.usermodel.*;
-import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.net.URLEncoder;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 问卷数据Controller
- *
- */
-@RestController
-@RequestMapping("/survey/data")
-public class SurveyDataController extends BaseController {
-
-    @Autowired
-    private ISurveyDataService surveyDataService;
-
-    @Autowired
-    private SurveyFieldConfigMapper fieldConfigMapper;
-
-    /**
-     * 查询问卷数据列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(@RequestParam Map<String, Object> params) {
-        startPage();
-        List<Map<String, Object>> list = surveyDataService.selectSurveyDataList(params);
-        return getDataTable(list);
-    }
-
-    /**
-     * 获取问卷数据详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:query')")
-    @GetMapping(value = "/{versionId}/{id}")
-    public AjaxResult getInfo(@PathVariable("versionId") Long versionId, @PathVariable("id") Long id) {
-        return AjaxResult.success(surveyDataService.selectSurveyDataById(versionId, id));
-    }
-
-    /**
-     * 提交问卷数据
-     */
-    @Log(title = "提交问卷", businessType = BusinessType.INSERT)
-    @PostMapping("/submit")
-    public AjaxResult submit(@RequestBody Map<String, Object> data) {
-        return toAjax(surveyDataService.submitSurveyData(data));
-    }
-
-    /**
-     * 修改问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:edit')")
-    @Log(title = "问卷数据", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Map<String, Object> data) {
-        return toAjax(surveyDataService.updateSurveyData(data));
-    }
-
-    /**
-     * 删除问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:remove')")
-    @Log(title = "问卷数据", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{versionId}/{ids}")
-    public AjaxResult remove(@PathVariable Long versionId, @PathVariable Long[] ids) {
-        return toAjax(surveyDataService.deleteSurveyDataByIds(versionId, ids));
-    }
-
-    /**
-     * 导出问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:export')")
-    @Log(title = "问卷数据", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, @RequestParam Map<String, Object> params) throws IOException {
-        Long versionId = Long.parseLong(params.get("versionId").toString());
-
-        // 获取字段配置(isExport=1 的列)
-        List<SurveyFieldConfig> fieldConfigs = fieldConfigMapper.selectFieldConfigByVersionId(versionId);
-        fieldConfigs.removeIf(f -> f.getIsExport() == null || f.getIsExport() != 1);
-
-        // 查询全量数据(不分页)
-        List<Map<String, Object>> dataList = surveyDataService.selectSurveyDataList(params);
-
-        // 构建 Excel
-        SXSSFWorkbook wb = new SXSSFWorkbook(500);
-        Sheet sheet = wb.createSheet("问卷数据");
-
-        // 表头样式
-        CellStyle headerStyle = wb.createCellStyle();
-        Font headerFont = wb.createFont();
-        headerFont.setBold(true);
-        headerStyle.setFont(headerFont);
-        headerStyle.setAlignment(HorizontalAlignment.CENTER);
-        headerStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
-        headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
-
-        // 写表头
-        Row headerRow = sheet.createRow(0);
-        int colIdx = 0;
-        for (SurveyFieldConfig fc : fieldConfigs) {
-            Cell cell = headerRow.createCell(colIdx++);
-            cell.setCellValue(fc.getFieldLabel());
-            cell.setCellStyle(headerStyle);
-        }
-        headerRow.createCell(colIdx++).setCellValue("提交时间");
-        headerRow.createCell(colIdx).setCellValue("提交人");
-
-        // 写数据行
-        for (int i = 0; i < dataList.size(); i++) {
-            Map<String, Object> row = dataList.get(i);
-            Row dataRow = sheet.createRow(i + 1);
-            int ci = 0;
-            for (SurveyFieldConfig fc : fieldConfigs) {
-                Object val = row.get(fc.getFieldKey());
-                String displayVal = formatExportValue(val, fc);
-                dataRow.createCell(ci++).setCellValue(displayVal);
-            }
-            Object submitTime = row.get("submit_time");
-            dataRow.createCell(ci++).setCellValue(submitTime == null ? "" : submitTime.toString());
-            Object userName = row.get("user_name");
-            dataRow.createCell(ci).setCellValue(userName == null ? "" : userName.toString());
-        }
-
-        // 输出
-        String fileName = URLEncoder.encode("问卷数据", "UTF-8");
-        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
-        response.setCharacterEncoding("utf-8");
-        response.setHeader("Content-Disposition", "attachment; filename*=utf-8''" + fileName + ".xlsx");
-        wb.write(response.getOutputStream());
-        wb.dispose();
-    }
-
-    /** 导出时将字段值转换为可读文本 */
-    private String formatExportValue(Object val, SurveyFieldConfig fc) {
-        if (val == null) return "";
-        String strVal = val.toString();
-        if (strVal.isEmpty()) return "";
-
-        // 有选项配置的字段,转换 value -> label
-        if (fc.getOptionsJson() != null && !fc.getOptionsJson().isEmpty()) {
-            try {
-                JSONArray options = JSONArray.parseArray(fc.getOptionsJson());
-                // 尝试多选(JSON数组)
-                if (strVal.startsWith("[")) {
-                    JSONArray selected = JSONArray.parseArray(strVal);
-                    StringBuilder sb = new StringBuilder();
-                    for (int i = 0; i < selected.size(); i++) {
-                        String sv = selected.get(i).toString();
-                        String label = findLabel(options, sv);
-                        if (i > 0) sb.append(", ");
-                        sb.append(label);
-                    }
-                    return sb.toString();
-                }
-                return findLabel(options, strVal);
-            } catch (Exception ignored) {}
-        }
-        return strVal;
-    }
-
-    private String findLabel(JSONArray options, String value) {
-        for (int i = 0; i < options.size(); i++) {
-            JSONObject opt = options.getJSONObject(i);
-            if (value.equals(opt.getString("value"))) {
-                return opt.getString("label");
-            }
-        }
-        return value;
-    }
-
-    /**
-     * 数据统计
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:statistics')")
-    @GetMapping("/statistics/{versionId}")
-    public AjaxResult statistics(@PathVariable Long versionId) {
-        return AjaxResult.success(surveyDataService.getStatistics(versionId));
-    }
-}

+ 0 - 94
fs-admin/src/main/java/com/fs/survey/SurveyFieldConfigController.java

@@ -1,94 +0,0 @@
-package com.fs.survey;
-
-import java.util.List;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyFieldConfig;
-import com.fs.survey.service.ISurveyFieldConfigService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-/**
- * 字段配置Controller
- *
- * 管理问卷字段的增删改查操作
- *
- */
-@RestController
-@RequestMapping("/survey/fieldConfig")
-public class SurveyFieldConfigController extends BaseController {
-
-    @Autowired
-    private ISurveyFieldConfigService fieldConfigService;
-
-    /**
-     * 查询字段配置列表
-     */
-    @GetMapping("/list")
-    public AjaxResult list(SurveyFieldConfig fieldConfig) {
-        List<SurveyFieldConfig> list = fieldConfigService.selectSurveyFieldConfigList(fieldConfig);
-        return AjaxResult.success(list);
-    }
-
-    /**
-     * 根据ID获取字段配置详细信息
-     */
-    @GetMapping("/{id}")
-    public AjaxResult getInfo(@PathVariable Long id) {
-        return AjaxResult.success(fieldConfigService.selectSurveyFieldConfigById(id));
-    }
-
-    /**
-     * 根据问卷版本ID查询字段配置信息列表
-     */
-    @GetMapping("/byVersion/{versionId}")
-    public AjaxResult getByVersionId(@PathVariable Long versionId) {
-        List<SurveyFieldConfig> list = fieldConfigService.selectFieldConfigByVersionId(versionId);
-        return AjaxResult.success(list);
-    }
-
-    /**
-     * 新增字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyFieldConfig fieldConfig) {
-        int row = fieldConfigService.insertSurveyFieldConfig(fieldConfig);
-        return toAjax(row);
-    }
-
-    /**
-     * 修改字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyFieldConfig fieldConfig) {
-        int row = fieldConfigService.updateSurveyFieldConfig(fieldConfig);
-        return toAjax(row);
-    }
-
-    /**
-     * 删除字段配置,支持批量ID
-     */
-    @Log(title = "字段配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        int row = fieldConfigService.deleteSurveyFieldConfigByIds(ids);
-        return toAjax(row);
-    }
-
-    /**
-     * 根据版本ID批量删除字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/byVersion/{versionId}")
-    public AjaxResult removeByVersionId(@PathVariable Long versionId) {
-        int row = fieldConfigService.deleteSurveyFieldConfigByVersionId(versionId);
-        return toAjax(row);
-    }
-}

+ 0 - 127
fs-admin/src/main/java/com/fs/survey/SurveyQuestionnaireController.java

@@ -1,127 +0,0 @@
-package com.fs.survey;
-
-import java.io.IOException;
-import java.util.List;
-import javax.servlet.http.HttpServletResponse;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.survey.domain.SurveyQuestionnaire;
-import com.fs.survey.service.ISurveyQuestionnaireService;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * 问卷Controller
- *
- */
-@RestController
-@RequestMapping("/survey/questionnaire")
-public class SurveyQuestionnaireController extends BaseController {
-    @Autowired
-    private ISurveyQuestionnaireService surveyQuestionnaireService;
-
-    /**
-     * 查询问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyQuestionnaire surveyQuestionnaire) {
-        startPage();
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:export')")
-    @Log(title = "问卷", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, SurveyQuestionnaire surveyQuestionnaire) throws IOException {
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        ExcelUtil<SurveyQuestionnaire> util = new ExcelUtil<SurveyQuestionnaire>(SurveyQuestionnaire.class);
-        util.exportExcel(response, list, "问卷数据");
-    }
-
-    /**
-     * 获取问卷详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(surveyQuestionnaireService.selectSurveyQuestionnaireById(id));
-    }
-
-    /**
-     * 新增问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:add')")
-    @Log(title = "问卷", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        return toAjax(surveyQuestionnaireService.insertSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 修改问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:edit')")
-    @Log(title = "问卷", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        return toAjax(surveyQuestionnaireService.updateSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 删除问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:remove')")
-    @Log(title = "问卷", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(surveyQuestionnaireService.deleteSurveyQuestionnaireByIds(ids));
-    }
-
-    /**
-     * 发布问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:publish')")
-    @Log(title = "发布问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/publish/{id}/{versionId}")
-    public AjaxResult publish(@PathVariable Long id, @PathVariable Long versionId) {
-        return toAjax(surveyQuestionnaireService.publishQuestionnaire(id, versionId));
-    }
-
-    /**
-     * 停用问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:disable')")
-    @Log(title = "停用问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/disable/{id}")
-    public AjaxResult disable(@PathVariable Long id) {
-        return toAjax(surveyQuestionnaireService.disableQuestionnaire(id));
-    }
-
-
-    /**
-     * 获取公司定级申请问卷(不需要参数)
-     */
-    @GetMapping("/getCompanyDoctorLevelApplyQuestionnaire")
-    public AjaxResult getCompanyDoctorLevelApplyQuestionnaire(Long companyId) {
-        return AjaxResult.success(surveyQuestionnaireService.getAdminDoctorLevelApplyQuestionnaire(companyId));
-
-    }
-}

+ 0 - 119
fs-admin/src/main/java/com/fs/survey/SurveyTaskController.java

@@ -1,119 +0,0 @@
-package com.fs.survey;
-
-import java.util.Date;
-import java.util.List;
-
-import com.fs.common.core.domain.model.LoginUser;
-import com.fs.common.utils.SecurityUtils;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyTask;
-import com.fs.survey.service.ISurveyTaskService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 问卷任务Controller
- *
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/task")
-public class SurveyTaskController extends BaseController
-{
-    @Autowired
-    private ISurveyTaskService surveyTaskService;
-
-    /**
-     * 查询问卷任务列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyTask surveyTask)
-    {
-        startPage();
-        List<SurveyTask> list = surveyTaskService.selectSurveyTaskList(surveyTask);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷任务列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:export')")
-    @Log(title = "问卷任务", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(SurveyTask surveyTask)
-    {
-        List<SurveyTask> list = surveyTaskService.selectSurveyTaskList(surveyTask);
-        ExcelUtil<SurveyTask> util = new ExcelUtil<SurveyTask>(SurveyTask.class);
-        return util.exportExcel(list, "问卷任务数据");
-    }
-
-    /**
-     * 获取问卷任务详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(surveyTaskService.selectSurveyTaskById(id));
-    }
-
-    /**
-     * 新增问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:add')")
-    @Log(title = "问卷任务", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyTask surveyTask)
-    {
-        //删除标记
-        surveyTask.setDeleted(0l);
-        //时间标记
-        surveyTask.setCreateTime(new Date());
-        surveyTask.setUpdateTime(new Date());
-        LoginUser loginUser = SecurityUtils.getLoginUser();
-
-        surveyTask.setCreateBy(loginUser.getUserId()+"");
-        surveyTask.setUpdateBy(loginUser.getUserId()+"");
-        return toAjax(surveyTaskService.insertSurveyTask(surveyTask));
-    }
-
-    /**
-     * 修改问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:edit')")
-    @Log(title = "问卷任务", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyTask surveyTask)
-    {
-        surveyTask.setUpdateTime(new Date());
-        LoginUser loginUser = SecurityUtils.getLoginUser();
-        surveyTask.setUpdateBy(loginUser.getUserId()+"");
-        return toAjax(surveyTaskService.updateSurveyTaskBaseInfo(surveyTask));
-    }
-
-    /**
-     * 删除问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:remove')")
-    @Log(title = "问卷任务", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(surveyTaskService.deleteSurveyTaskByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/survey/SurveyTaskPeriodController.java

@@ -1,103 +0,0 @@
-package com.fs.survey;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyTaskPeriod;
-import com.fs.survey.service.ISurveyTaskPeriodService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 问卷任务期次Controller
- * 
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/period")
-public class SurveyTaskPeriodController extends BaseController
-{
-    @Autowired
-    private ISurveyTaskPeriodService surveyTaskPeriodService;
-
-    /**
-     * 查询问卷任务期次列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyTaskPeriod surveyTaskPeriod)
-    {
-        startPage();
-        List<SurveyTaskPeriod> list = surveyTaskPeriodService.selectSurveyTaskPeriodList(surveyTaskPeriod);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷任务期次列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:export')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(SurveyTaskPeriod surveyTaskPeriod)
-    {
-        List<SurveyTaskPeriod> list = surveyTaskPeriodService.selectSurveyTaskPeriodList(surveyTaskPeriod);
-        ExcelUtil<SurveyTaskPeriod> util = new ExcelUtil<SurveyTaskPeriod>(SurveyTaskPeriod.class);
-        return util.exportExcel(list, "问卷任务期次数据");
-    }
-
-    /**
-     * 获取问卷任务期次详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(surveyTaskPeriodService.selectSurveyTaskPeriodById(id));
-    }
-
-    /**
-     * 新增问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:add')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyTaskPeriod surveyTaskPeriod)
-    {
-        return toAjax(surveyTaskPeriodService.insertSurveyTaskPeriod(surveyTaskPeriod));
-    }
-
-    /**
-     * 修改问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:edit')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyTaskPeriod surveyTaskPeriod)
-    {
-        return toAjax(surveyTaskPeriodService.updateSurveyTaskPeriod(surveyTaskPeriod));
-    }
-
-    /**
-     * 删除问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:remove')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(surveyTaskPeriodService.deleteSurveyTaskPeriodByIds(ids));
-    }
-}

+ 0 - 103
fs-admin/src/main/java/com/fs/survey/SurveyVersionController.java

@@ -1,103 +0,0 @@
-package com.fs.survey;
-
-import java.util.List;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyQuestionnaireVersion;
-import com.fs.survey.service.ISurveyQuestionnaireVersionService;
-import org.apache.ibatis.annotations.Param;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * 问卷版本Controller
- *
- */
-@RestController
-@RequestMapping("/survey/version")
-public class SurveyVersionController extends BaseController {
-    @Autowired
-    private ISurveyQuestionnaireVersionService versionService;
-
-    /**
-     * 查询问卷版本列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyQuestionnaireVersion version) {
-        startPage();
-        List<SurveyQuestionnaireVersion> list = versionService.selectSurveyQuestionnaireVersionList(version);
-        return getDataTable(list);
-    }
-
-    /**
-     * 获取问卷版本详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(versionService.selectSurveyQuestionnaireVersionById(id));
-    }
-
-    /**
-     * 获取当前最新问卷版本
-     * @param id 问卷ID
-     * @return 最新问卷版本
-     */
-    @GetMapping(value = "/getLatestInfo")
-    public AjaxResult getLatestInfo(@Param("id") Long id) {
-        return AjaxResult.success(versionService.getLatestInfo(id));
-    }
-
-    /**
-     * 新增/保存问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:add')")
-    @Log(title = "问卷版本", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyQuestionnaireVersion version) {
-        return AjaxResult.success(versionService.saveVersion(version));
-    }
-
-    /**
-     * 修改问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:edit')")
-    @Log(title = "问卷版本", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyQuestionnaireVersion version) {
-        return toAjax(versionService.updateSurveyQuestionnaireVersion(version));
-    }
-
-    /**
-     * 发布版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:publish')")
-    @Log(title = "发布版本", businessType = BusinessType.UPDATE)
-    @PutMapping("/publish/{id}")
-    public AjaxResult publish(@PathVariable Long id) {
-        return toAjax(versionService.publishVersion(id));
-    }
-
-    /**
-     * 删除问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:remove')")
-    @Log(title = "问卷版本", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(versionService.deleteSurveyQuestionnaireVersionByIds(ids));
-    }
-}

+ 0 - 102
fs-admin/src/main/java/com/fs/task/controller/TaskDeliveryInfoController.java

@@ -1,102 +0,0 @@
-package com.fs.task.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.task.domain.TaskDeliveryInfo;
-import com.fs.task.service.ITaskDeliveryInfoService;
-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 2026-01-04
- */
-@RestController
-@RequestMapping("/task/delivery")
-public class TaskDeliveryInfoController extends BaseController {
-    @Autowired
-    private ITaskDeliveryInfoService taskDeliveryInfoService;
-
-    /**
-     * 查询交付物信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskDeliveryInfo taskDeliveryInfo) {
-        startPage();
-        List<TaskDeliveryInfo> list = taskDeliveryInfoService.selectTaskDeliveryInfoList(taskDeliveryInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出交付物信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:export')")
-    @Log(title = "交付物信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskDeliveryInfo taskDeliveryInfo) {
-        List<TaskDeliveryInfo> list = taskDeliveryInfoService.selectTaskDeliveryInfoList(taskDeliveryInfo);
-        ExcelUtil<TaskDeliveryInfo> util = new ExcelUtil<TaskDeliveryInfo>(TaskDeliveryInfo.class);
-        return util.exportExcel(list, "交付物信息数据");
-    }
-
-    /**
-     * 获取交付物信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(taskDeliveryInfoService.selectTaskDeliveryInfoById(id));
-    }
-
-    /**
-     * 新增交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:add')")
-    @Log(title = "交付物信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskDeliveryInfo taskDeliveryInfo) {
-        return toAjax(taskDeliveryInfoService.insertTaskDeliveryInfo(taskDeliveryInfo));
-    }
-
-    /**
-     * 修改交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:edit')")
-    @Log(title = "交付物信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskDeliveryInfo taskDeliveryInfo) {
-        return toAjax(taskDeliveryInfoService.updateTaskDeliveryInfo(taskDeliveryInfo));
-    }
-
-    /**
-     * 删除交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:remove')")
-    @Log(title = "交付物信息", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(taskDeliveryInfoService.deleteTaskDeliveryInfoByIds(ids));
-    }
-
-
-
-    /**
-     * 通过任务类别与交付物编号查询出交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:query')")
-    @GetMapping("/getDeliveryInfoByTaskTypeAndDeliveryNo")
-    public AjaxResult getDeliveryInfoByTaskTypeAndDeliveryNo(TaskDeliveryInfo taskDeliveryInfo) {
-        return AjaxResult.success(taskDeliveryInfoService.getDeliveryInfoByTaskTypeAndDeliveryNo(taskDeliveryInfo)
-        );
-    }
-}

+ 0 - 147
fs-admin/src/main/java/com/fs/task/controller/TaskInfoController.java

@@ -1,147 +0,0 @@
-package com.fs.task.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.task.domain.TaskInfo;
-import com.fs.task.service.ITaskInfoService;
-import com.fs.task.vo.TaskCreateAuditReqVO;
-import com.fs.task.vo.TaskFinishAuditReqVO;
-import com.fs.task.vo.TaskInfoCreateVO;
-import com.fs.task.vo.TaskSpotCheckUpdateReqVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.validation.Valid;
-import java.util.List;
-
-/**
- * 任务信息Controller
- *
- * @author fs
- * @date 2026-01-04
- */
-@RestController
-@RequestMapping("/task/info")
-public class TaskInfoController extends BaseController
-{
-    @Autowired
-    private ITaskInfoService taskInfoService;
-
-
-
-    /**
-     * 查询任务信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskInfo taskInfo)
-    {
-        startPage();
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出任务信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:export')")
-    @Log(title = "任务信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskInfo taskInfo)
-    {
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        ExcelUtil<TaskInfo> util = new ExcelUtil<TaskInfo>(TaskInfo.class);
-        return util.exportExcel(list, "任务信息数据");
-    }
-
-    /**
-     * 获取任务信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(taskInfoService.selectTaskInfoById(id));
-    }
-
-    /**
-     * 新增任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:add')")
-    @Log(title = "任务信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskInfoCreateVO vo)
-    {
-        return toAjax(taskInfoService.insertTaskInfo(vo));
-    }
-
-    /**
-     * 修改任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:edit')")
-    @Log(title = "任务信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskInfo taskInfo)
-    {
-        return toAjax(taskInfoService.updateTaskInfo(taskInfo));
-    }
-
-    /**
-     * 删除任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:remove')")
-    @Log(title = "任务信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(taskInfoService.deleteTaskInfoByIds(ids));
-    }
-
-
-    @Log(title = "创建审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("doCreateAudit")
-    @PreAuthorize("@ss.hasPermi('task:info:edit')")
-    public void doCreateAudit(@RequestBody TaskCreateAuditReqVO taskCreateAuditReqVO){
-        taskInfoService.doCreateAudit(taskCreateAuditReqVO);
-    }
-
-
-    @Log(title = "完成审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("dofinishAudit")
-    public void dofinishAudit(@RequestBody TaskFinishAuditReqVO taskFinishAuditReqVO){
-        taskInfoService.dofinishAudit(taskFinishAuditReqVO);
-    }
-
-    @Log(title = "获取创建审核任务信息", businessType = BusinessType.UPDATE)
-    @GetMapping("getTaskCreateAuditInfo")
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    public AjaxResult getTaskCreateAuditInfo(@RequestParam Long taskId){
-       return AjaxResult.success( taskInfoService.getTaskCreateAuditInfo(taskId));
-    }
-
-
-    @Log(title = "获取完成审核任务信息", businessType = BusinessType.UPDATE)
-    @GetMapping("getTaskFinishAuditInfo")
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    public AjaxResult getTaskFinishAuditInfo(@RequestParam Long taskId){
-        return AjaxResult.success( taskInfoService.getTaskFinishAuditInfo(taskId));
-    }
-
-
-
-    @PutMapping("/spotCheck")
-    public AjaxResult updateSpotCheck(@Valid @RequestBody TaskSpotCheckUpdateReqVO req) {
-
-        int rows = taskInfoService.updateSpotCheck(req);
-        return rows > 0 ? AjaxResult.success() : AjaxResult.error("更新失败");
-    }
-
-
-
-
-    }

+ 0 - 103
fs-admin/src/main/java/com/fs/task/controller/TaskMaterialInfoController.java

@@ -1,103 +0,0 @@
-package com.fs.task.controller;
-
-import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.task.domain.TaskMaterialInfo;
-import com.fs.task.service.ITaskMaterialInfoService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 材料信息Controller
- * 
- * @author fs
- * @date 2026-01-04
- */
-@RestController
-@RequestMapping("/task/material")
-public class TaskMaterialInfoController extends BaseController
-{
-    @Autowired
-    private ITaskMaterialInfoService taskMaterialInfoService;
-
-    /**
-     * 查询材料信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskMaterialInfo taskMaterialInfo)
-    {
-        startPage();
-        List<TaskMaterialInfo> list = taskMaterialInfoService.selectTaskMaterialInfoList(taskMaterialInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出材料信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:export')")
-    @Log(title = "材料信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskMaterialInfo taskMaterialInfo)
-    {
-        List<TaskMaterialInfo> list = taskMaterialInfoService.selectTaskMaterialInfoList(taskMaterialInfo);
-        ExcelUtil<TaskMaterialInfo> util = new ExcelUtil<TaskMaterialInfo>(TaskMaterialInfo.class);
-        return util.exportExcel(list, "材料信息数据");
-    }
-
-    /**
-     * 获取材料信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(taskMaterialInfoService.selectTaskMaterialInfoById(id));
-    }
-
-    /**
-     * 新增材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:add')")
-    @Log(title = "材料信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskMaterialInfo taskMaterialInfo)
-    {
-        return toAjax(taskMaterialInfoService.insertTaskMaterialInfo(taskMaterialInfo));
-    }
-
-    /**
-     * 修改材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:edit')")
-    @Log(title = "材料信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskMaterialInfo taskMaterialInfo)
-    {
-        return toAjax(taskMaterialInfoService.updateTaskMaterialInfo(taskMaterialInfo));
-    }
-
-    /**
-     * 删除材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:remove')")
-    @Log(title = "材料信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(taskMaterialInfoService.deleteTaskMaterialInfoByIds(ids));
-    }
-}

+ 0 - 46
fs-admin/src/test/java/AuditTest.java

@@ -1,46 +0,0 @@
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.domain.AuditFlow;
-import com.fs.audit.dto.AuditRequestDTO;
-import com.fs.audit.dto.CreateAuditRequestDTO;
-import com.fs.audit.enums.AuditTypeEnum;
-import com.fs.audit.service.AuditService;
-import org.junit.jupiter.api.Test;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.util.List;
-
-public class AuditTest extends BaseSpringBootTest{
-
-
-    @Autowired
-    private AuditService auditService;
-
-    @Test
-    void createAudit(){
-        CreateAuditRequestDTO requestDTO = new CreateAuditRequestDTO();
-        requestDTO.setBusinessId(1L);
-        requestDTO.setBusinessType(AuditTypeEnum.GRADE_AUDIT.getCode());
-        requestDTO.setTempCode(AuditTypeEnum.GRADE_AUDIT.getCode());
-        requestDTO.setInitiatorId(0L);
-        requestDTO.setCompanyId(1L);
-        Long audit = auditService.createAudit(requestDTO);
-    }
-
-    @Test
-    void doAudit(){
-        AuditRequestDTO requestDTO = new AuditRequestDTO();
-        requestDTO.setAuditId(139L);
-        requestDTO.setUserId(1001L);
-        requestDTO.setUserType(1);
-        requestDTO.setAction(2);
-        AuditResult auditResult = auditService.doAudit(requestDTO);
-        System.out.println(auditResult);
-    }
-
-    @Test
-    void getAuditFlows(){
-        List<AuditFlow> auditFlows = auditService.getAuditFlows(139L);
-        logger.info(": {}",auditFlows);
-    }
-
-}

+ 0 - 241
fs-company-app/src/main/java/com/fs/app/controller/AuditController.java

@@ -1,241 +0,0 @@
-package com.fs.app.controller;
-
-import com.alibaba.fastjson.JSONObject;
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.common.Result;
-import com.fs.audit.domain.AuditFlow;
-import com.fs.audit.dto.AuditRequestDTO;
-import com.fs.audit.dto.CustomerServicePendingAuditDTO;
-import com.fs.audit.service.AuditService;
-import com.fs.audit.service.IAuditDetailService;
-import com.fs.audit.vo.AuditDetailVO;
-import com.fs.audit.vo.QueryPendingAuditVO;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.doctor.service.IDoctorLevelApplyService;
-import com.fs.doctor.service.IDoctorService;
-import com.fs.doctor.vo.DoctorApplyAuditReqVO;
-import com.fs.doctor.vo.DoctorDoAuditReqVO;
-import com.fs.task.domain.TaskDeliveryInfo;
-import com.fs.task.service.ITaskDeliveryInfoService;
-import com.fs.task.service.ITaskInfoService;
-import com.fs.task.vo.TaskCreateAuditReqVO;
-import com.fs.task.vo.TaskFinishAuditReqVO;
-import com.fs.task.vo.audit_Info.TaskAuditInfoVO;
-import com.github.pagehelper.PageHelper;
-import lombok.RequiredArgsConstructor;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Objects;
-
-/**
- * 审核控制器
- */
-@RestController
-@RequestMapping("/company/audit")
-@RequiredArgsConstructor
-public class AuditController extends BaseController {
-    @Lazy
-    @Resource
-    private AuditService auditService;
-    @Lazy
-    @Resource
-    private ITaskInfoService taskInfoService;
-    @Lazy
-    @Resource
-    private IAuditDetailService auditDetailService;
-    @Lazy
-    @Resource
-    private IDoctorService doctorService;
-    @Lazy
-    @Resource
-    private IDoctorLevelApplyService doctorLevelApplyService;
-    @Lazy
-    @Resource
-    private ITaskDeliveryInfoService taskDeliveryInfoService;
-
-    /**
-     * 查询指定客服的待办审核列表
-     *
-     * @param param 请求参数
-     * @return 待办审核列表
-     */
-    @PostMapping("/cus/pending")
-    public TableDataInfo getCustomerServicePendingAudits(@RequestBody QueryPendingAuditVO param) {
-        // 使用PageHelper进行分页
-        if (param.getPageNum() != null && param.getPageSize() != null) {
-            PageHelper.startPage(param.getPageNum().intValue(), param.getPageSize().intValue());
-        }
-        List<CustomerServicePendingAuditDTO> data = auditService.getPendingAuditsByCustomerServiceId(param);
-        return getDataTable(data);
-    }
-
-    /**
-     * 查询指定客服的各个类型审核总数
-     *
-     * @param param
-     */
-    @PostMapping("/cus/pendingCount")
-    public JSONObject getCustomerServicePendingAuditsCount(@RequestBody QueryPendingAuditVO param) {
-        param.setStatus(0);
-        Long pendingCount = auditService.getPendingAuditsCount(param);
-        param.setStatus(1);
-        Long approvedCount = auditService.getPendingAuditsCount(param);
-        param.setStatus(2);
-        Long initiatedCount = auditService.getPendingAuditsCount(param);
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("pendingCount", pendingCount);
-        jsonObject.put("approvedCount", approvedCount);
-        jsonObject.put("initiatedCount", initiatedCount);
-        return jsonObject;
-    }
-
-
-    /**
-     * 查询指定客服的待办任务审核列表
-     *
-     * @param param 请求参数
-     * @return 待办审核列表
-     */
-    @PostMapping("/cus/pendingtaskAudtList")
-    public Result<List<CustomerServicePendingAuditDTO>> getCustomerServicePendingTaskAudits(@RequestBody QueryPendingAuditVO param) {
-        HashMap<String, List<CustomerServicePendingAuditDTO>> map = new HashMap<>();
-        // 使用PageHelper进行分页
-        if (param.getPageNum() != null && param.getPageSize() != null) {
-            PageHelper.startPage(param.getPageNum().intValue(), param.getPageSize().intValue());
-        }
-
-        List<CustomerServicePendingAuditDTO> pendingData = auditService.getPendingTaskAuditsByCustomerServiceId(param);
-
-        return Result.success(pendingData);
-    }
-
-
-    /**
-     * 执行审核
-     *
-     * @param param 审核参数
-     * @return Result
-     */
-    @Transactional
-    @PostMapping("/cus/doAudit")
-    public Result<AuditResult> doAudit(@RequestBody AuditRequestDTO param) throws Exception {
-
-        String businessType = param.getBusinessType();
-//        //创建任务审核
-        if ("ADUIT_CJRW".equals(businessType)) {
-            TaskCreateAuditReqVO taskCreateAuditReqVO = new TaskCreateAuditReqVO();
-            taskCreateAuditReqVO.setTaskId(param.getBusinessId());
-            taskCreateAuditReqVO.setCreateAuditOpinion(param.getComment());
-            taskCreateAuditReqVO.setCreateAuditStatus(param.getAction());
-            taskCreateAuditReqVO.setCompanyId(param.getCompanyId());
-            taskCreateAuditReqVO.setCreateAuditUserId(param.getUserId());
-
-
-            taskInfoService.appDoCreateAudit(taskCreateAuditReqVO);
-            //完成任务
-        } else if ("ADUIT_WCRWSH".equals(businessType)) {
-            TaskFinishAuditReqVO taskFinishAuditReqVO = new TaskFinishAuditReqVO();
-            taskFinishAuditReqVO.setTaskId(param.getBusinessId());
-            taskFinishAuditReqVO.setFinishAuditOpinion(param.getComment());
-            taskFinishAuditReqVO.setFinishAuditStatus(param.getAction());
-            taskFinishAuditReqVO.setCompanyId(param.getCompanyId());
-            taskFinishAuditReqVO.setFinishAuditUserId(param.getUserId());
-            TaskDeliveryInfo taskDeliveryInfo = new TaskDeliveryInfo();
-            taskDeliveryInfo.setTaskId(taskDeliveryInfo.getTaskId());
-            List<TaskDeliveryInfo> taskDeliveryInfos = taskDeliveryInfoService.selectTaskDeliveryInfoList(taskDeliveryInfo);
-            if (Objects.isNull(taskDeliveryInfos) || taskDeliveryInfos.isEmpty()) {
-                throw new Exception("医生交付物未提交,不能审核完成任务。");
-
-            }
-            taskInfoService.appDofinishAudit(taskFinishAuditReqVO);
-            //讲者审核
-        } else if ("ADUIT_JZSH".equals(businessType)) {
-            DoctorDoAuditReqVO doctorDoAuditReqVO = new DoctorDoAuditReqVO();
-            doctorDoAuditReqVO.setAuditStatus(param.getAction());
-            doctorDoAuditReqVO.setCompanyId(param.getCompanyId());
-            doctorDoAuditReqVO.setAuditOpinion(param.getComment());
-            doctorDoAuditReqVO.setAuditUserId(param.getUserId());
-            doctorDoAuditReqVO.setId(param.getUserId());
-            doctorDoAuditReqVO.setId(param.getBusinessId());
-            doctorService.appDoAudit(doctorDoAuditReqVO);
-            //定级审核
-        } else if ("ADUIT_DJSH".equals(businessType)) {
-            DoctorApplyAuditReqVO doctorApplyAuditReqVO = new DoctorApplyAuditReqVO();
-            doctorApplyAuditReqVO.setId(param.getBusinessId());
-            doctorApplyAuditReqVO.setStatus(param.getAction());
-            doctorApplyAuditReqVO.setRemark(param.getComment());
-            doctorApplyAuditReqVO.setAuditUserId(param.getUserId());
-            doctorApplyAuditReqVO.setCompanyId(param.getCompanyId());
-            doctorLevelApplyService.appDoAudit(doctorApplyAuditReqVO);
-        } else if ("ADUIT_TXSH".equals(businessType)) {
-
-        }
-
-//        AuditResult auditResult = auditService.doAudit(param);
-        return Result.success(null);
-    }
-
-    /**
-     * 获取审核流程记录
-     *
-     * @param auditId 审核实例ID
-     * @return Result
-     */
-    @GetMapping("/cus/getAuditFlows")
-    public Result<List<AuditFlow>> getAuditFlows(@RequestParam("auditId") Long auditId) {
-        List<AuditFlow> auditFlows = auditService.getAuditFlows(auditId);
-        return Result.success(auditFlows);
-    }
-
-    /**
-     * 根据任务ID获取任务创建审核详细信息
-     *
-     * @param taskId 任务ID
-     * @return 任务审核详细信息,包括任务信息、医生信息、项目信息、业务人员信息和审核流程
-     */
-    @GetMapping("/task/createAuditInfo")
-    public Result<TaskAuditInfoVO> getTaskCreateAuditInfo(@RequestParam("taskId") Long taskId) {
-        TaskAuditInfoVO auditInfo = taskInfoService.getTaskCreateAuditInfo(taskId);
-        return Result.success(auditInfo);
-    }
-
-    /**
-     * 根据任务ID获取任务完成审核详细信息
-     *
-     * @param taskId 任务ID
-     * @return 任务审核详细信息,包括任务信息、医生信息、项目信息、业务人员信息和审核流程
-     */
-    @GetMapping("/task/finishAuditInfo")
-    public Result<TaskAuditInfoVO> getTaskFinishAuditInfo(@RequestParam("taskId") Long taskId) {
-        TaskAuditInfoVO auditInfo = taskInfoService.getTaskFinishAuditInfo(taskId);
-        return Result.success(auditInfo);
-    }
-
-    /**
-     * 获取审核详情(通用接口)
-     * 根据审核实例ID动态返回不同业务类型的完整数据
-     * 适用于待办中心的待办详情页面
-     *
-     * @param auditId 审核实例ID
-     * @return 审核详情,包含审核信息、审核流程和对应的业务数据
-     * 业务数据根据审核类型动态变化:
-     * - 讲者审核:Doctor 信息
-     * - 提现审核:WithdrawRecords 信息
-     * - 定级审核:DoctorLevelApply 信息
-     * - 创建任务审核:TaskAuditInfoVO(包含任务、医生、项目、业务员信息)
-     * - 完成任务审核:TaskAuditInfoVO(包含任务、医生、项目、业务员、交付物信息)
-     */
-    @GetMapping("/detail")
-    public Result<AuditDetailVO<?>> getAuditDetail(@RequestParam("auditId") Long auditId) {
-        AuditDetailVO<?> auditDetail = auditDetailService.getAuditDetail(auditId);
-        return Result.success(auditDetail);
-    }
-
-}

+ 0 - 325
fs-company-app/src/main/java/com/fs/app/controller/DoctorController.java

@@ -1,325 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.BeanCopyUtils;
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.StringUtils;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.Doctor;
-import com.fs.doctor.domain.DoctorCompanyUser;
-import com.fs.doctor.domain.DoctorLevel;
-import com.fs.doctor.domain.DoctorLevelApply;
-import com.fs.doctor.mapper.DoctorCompanyUserMapper;
-import com.fs.doctor.mapper.DoctorLevelApplyMapper;
-import com.fs.doctor.service.IDoctorLevelApplyService;
-import com.fs.doctor.service.IDoctorLevelService;
-import com.fs.doctor.service.IDoctorService;
-import com.fs.doctor.vo.*;
-import com.fs.wx.ma.service.WxMaQrcodeServiceImpl;
-import me.chanjar.weixin.common.error.WxErrorException;
-import org.apache.commons.lang3.ObjectUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.nio.charset.StandardCharsets;
-import java.util.*;
-
-/**
- * 讲者Controller
- *
- * @author fs
- * @date 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/doctor")
-public class DoctorController extends BaseController
-{
-    @Autowired
-    private IDoctorService doctorService;
-
-    @Autowired
-    private DoctorCompanyUserMapper doctorCompanyUserMapper;
-
-    @Autowired
-    private WxMaQrcodeServiceImpl wxMaQrcodeService;
-
-    @Value("${fs.miniapp.page:pages/auth/login}")
-    private String miniappPage;
-
-    @Value("${wx.miniapp.configs[0].appid:}")
-    private String miniappAppid;
-
-    @Autowired
-    private IDoctorLevelService doctorLevelService;
-
-    @Autowired
-    private DoctorLevelApplyMapper doctorLevelApplyMapper;
-
-    /**
-     * 查询讲者列表
-     */
-    @Login
-    @GetMapping("/list")
-    public TableDataInfo list(Doctor doctor)
-    {
-        logger.info("查询讲者列表 参数列表: {}",doctor);
-        // 获取当前登录的业务员ID
-        Long currentCompanyUserId = LoginContextManager.getCurrentCompanyUserId();
-
-        logger.info("获取当前登录的业务员ID: {}",currentCompanyUserId);
-        // 设置业务员ID,用于过滤只显示与该业务员关联的医生
-        doctor.setCompanyUserId(currentCompanyUserId);
-
-        startPage();
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-
-        List<DoctorVO> doctorVOS = BeanCopyUtils.copyList(list, DoctorVO.class);
-        for (DoctorVO doctorVO : doctorVOS) {
-            List<DoctorCompanyUser> doctorCompanyUsers = doctorCompanyUserMapper.queryProductGroup(doctorVO.getCompanyId(), doctorVO.getDoctorId());
-            Map<String,DoctorProductVO> doctorProductMap = new HashMap<>();
-
-            for (DoctorCompanyUser dc : doctorCompanyUsers) {
-                String companyUserName = String.format("%s_%s", dc.getCompanyUserId(), dc.getCompanyUserName());
-                DoctorProductVO doctorProductVO = doctorProductMap.get(companyUserName);
-                if(doctorProductVO == null) {
-                    doctorProductVO = new DoctorProductVO();
-                    doctorProductVO.setCompanyUserName(companyUserName);
-                    doctorProductMap.put(companyUserName, doctorProductVO);
-                }
-//                if(StringUtils.isEmpty(doctorProductVO.getProductCode())){
-//                    doctorProductVO.setProductCode(String.join("、",dc.getProduct().split(",")));
-//                } else {
-//                    doctorProductVO.setProductCode(doctorProductVO.getProductCode()+"、"+dc.getProduct());
-//                }
-            }
-
-//            doctorVO.setDoctorProducts(new ArrayList<>(doctorProductMap.values()));
-
-            // 医生级别
-            DoctorLevel doctorLevel = doctorLevelService.selectDoctorLevelByDoctorId(doctorVO.getDoctorId());
-            if(doctorLevel != null) {
-                doctorVO.setDoctorLevel(doctorLevel.getLevel());
-            }
-
-            List<DoctorLevelApply> doctorLevelApply = doctorLevelApplyMapper.selectByDoctorId(doctorVO.getDoctorId());
-            if (doctorLevelApply == null || doctorLevelApply.isEmpty()
-                    || doctorLevelApply.stream().allMatch(apply -> ObjectUtils.equals(apply.getStatus(), 2L))) {
-                doctorVO.setIsApply(0);
-            } else {
-                doctorVO.setIsApply(1);
-            }
-
-        }
-
-        return getDataTable(doctorVOS);
-    }
-
-
-
-
-
-
-    /**
-     * 查询已经定级申请的讲者列表
-     */
-    @Login
-    @GetMapping("/appliedList")
-    public TableDataInfo appliedList(Doctor doctor)
-    {
-        // 获取当前登录的业务员ID
-        Long currentCompanyUserId = LoginContextManager.getCurrentCompanyUserId();
-
-        // 设置业务员ID,用于过滤只显示与该业务员关联的医生
-        doctor.setCompanyUserId(currentCompanyUserId);
-
-        startPage();
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        List<DoctorVO> doctorVOS = BeanCopyUtils.copyList(list, DoctorVO.class);
-        List<DoctorVO> filteredList = new ArrayList<>();
-
-        for (DoctorVO doctorVO : doctorVOS) {
-            // 处理产品组信息
-            List<DoctorCompanyUser> doctorCompanyUsers = doctorCompanyUserMapper.queryProductGroup(doctorVO.getCompanyId(), doctorVO.getDoctorId());
-            Map<String, DoctorProductVO> doctorProductMap = new HashMap<>();
-
-            for (DoctorCompanyUser dc : doctorCompanyUsers) {
-                String companyUserName = String.format("%s_%s", dc.getCompanyUserId(), dc.getCompanyUserName());
-                DoctorProductVO doctorProductVO = doctorProductMap.get(companyUserName);
-                if (doctorProductVO == null) {
-                    doctorProductVO = new DoctorProductVO();
-                    doctorProductVO.setCompanyUserName(companyUserName);
-                    doctorProductMap.put(companyUserName, doctorProductVO);
-                }
-//                if (StringUtils.isEmpty(doctorProductVO.getProductCode())) {
-//                        doctorProductVO.setProductCode(String.join("、", dc.getProduct().split(",")));
-//                } else {
-//                    doctorProductVO.setProductCode(doctorProductVO.getProductCode() + "、" + dc.getProduct());
-//                }
-            }
-            doctorVO.setDoctorProducts(new ArrayList<>(doctorProductMap.values()));
-
-            // 医生级别
-            DoctorLevel doctorLevel = doctorLevelService.selectDoctorLevelByDoctorId(doctorVO.getDoctorId());
-            if (doctorLevel != null) {
-                doctorVO.setDoctorLevel(doctorLevel.getLevel());
-                filteredList.add(doctorVO);
-            }
-
-
-        }
-
-        return getDataTable(filteredList);
-    }
-
-
-    /**
-     * 导出讲者列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(Doctor doctor)
-    {
-        doctor.setCompanyId(LoginContextManager.getCurrentCompanyUserId());
-
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        ExcelUtil<Doctor> util = new ExcelUtil<Doctor>(Doctor.class);
-        return util.exportExcel(list, "讲者数据");
-    }
-
-    /**
-     * 获取讲者详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        Doctor doctor = doctorService.selectDoctorById(id);
-        List<DoctorLevelApply> doctorLevelApply = doctorLevelApplyMapper.selectByDoctorId(doctor.getDoctorId());
-        if (doctorLevelApply == null || doctorLevelApply.isEmpty()
-                || doctorLevelApply.stream().allMatch(apply -> ObjectUtils.equals(apply.getStatus(), 2L))) {
-            doctor.setIsApply(0);
-        } else {
-            doctor.setIsApply(1);
-        }
-
-        return AjaxResult.success(doctor);
-    }
-
-    /**
-     * 新增讲者
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorVO doctorVO)
-    {
-       return toAjax( doctorService.add(doctorVO));
-    }
-
-    /**
-     * 修改讲者
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody Doctor doctor)
-    {
-        return toAjax(doctorService.updateDoctor(doctor));
-    }
-
-    /**
-     * 删除讲者
-     */
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorService.deleteDoctorByIds(ids));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:list')")
-    @GetMapping("/getDoctorOptionVOList")
-    public AjaxResult getDoctorOptionVOList(DoctorOptionReqVO doctorOptionReqVO)
-    {
-        List<DoctorOptionRespVO> list = doctorService.getDoctorOptionVOList(doctorOptionReqVO);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 查询讲者审核页面信息
-     */
-    @GetMapping("/audit/{id}")
-    public AjaxResult getAuditInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorService.selectDoctorAuditInfo(id));
-    }
-
-
-    @PostMapping("doAudit")
-    public void doAudit(@RequestBody DoctorDoAuditReqVO doctorDoAuditReqVO){
-        doctorService.doAudit(doctorDoAuditReqVO);
-    }
-
-
-
-    /**
-     * 修改讲者密码
-     */
-    @PostMapping("/resetPwd")
-    public AjaxResult resetPwd(@RequestBody DoctorResetPwdReqVO req) {
-        return toAjax(doctorService.resetPwd(req));
-    }
-
-    /**
-     * 邀请讲者 - 生成小程序二维码
-     *
-     * @param companyUserId 销售ID
-     * @param companyId 公司ID
-     * @return 小程序码图片
-     */
-    /**
-     * 邀请讲者 - 生成小程序二维码(返回Base64图片数据,前端直接用于img.src)
-     */
-    @GetMapping("/invite_doctor")
-    public ResponseEntity<String> inviteDoctor(
-            @RequestParam("companyUserId") Long companyUserId,
-            @RequestParam(value = "companyId", required = false) Long companyId) {
-        try {
-            // 构建 scene 参数(注意长度不超过32字符)
-            String scene = "cuid=" + companyUserId;
-            if (companyId != null) {
-                scene += ",cid=" + companyId;
-            }
-
-            // 调用微信API生成小程序码(无限制)
-            byte[] qrcodeImage = wxMaQrcodeService.createWxaCodeUnlimit(scene, miniappPage, 430, miniappAppid);
-
-            // 转换为 Base64 并构建 data URL
-            String base64 = Base64.getEncoder().encodeToString(qrcodeImage);
-            String dataUrl = "data:image/png;base64," + base64;
-
-            // 设置响应头(纯文本)
-            HttpHeaders headers = new HttpHeaders();
-            headers.setContentType(MediaType.TEXT_PLAIN);
-            headers.setContentLength(dataUrl.getBytes(StandardCharsets.UTF_8).length);
-            headers.set("Content-Disposition", "inline; filename=invite_miniapp_qrcode.txt");
-            headers.setCacheControl("no-cache");
-
-            return new ResponseEntity<>(dataUrl, headers, HttpStatus.OK);
-        } catch (WxErrorException e) {
-            logger.error("生成小程序码失败: errCode={}, errMsg={}", e.getError().getErrorCode(), e.getError().getErrorMsg(), e);
-            return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
-        } catch (Exception e) {
-            logger.error("生成小程序码失败", e);
-            return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
-        }
-    }
-
-
-}

+ 0 - 99
fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelApplyController.java

@@ -1,99 +0,0 @@
-package com.fs.app.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelApply;
-import com.fs.doctor.service.IDoctorLevelApplyService;
-import com.fs.doctor.vo.DoctorApplyAuditReqVO;
-import com.fs.doctor.vo.DoctorLevelApplyVO;
-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
- */
-@RestController
-@RequestMapping("/doctor/apply")
-public class DoctorLevelApplyController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelApplyService doctorLevelApplyService;
-
-    /**
-     * 查询讲者定级申请列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelApply doctorLevelApply)
-    {
-        startPage();
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者定级申请列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelApply doctorLevelApply)
-    {
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        ExcelUtil<DoctorLevelApply> util = new ExcelUtil<DoctorLevelApply>(DoctorLevelApply.class);
-        return util.exportExcel(list, "讲者定级申请数据");
-    }
-
-    /**
-     * 获取讲者定级申请详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelApplyService.selectDoctorLevelApplyById(id));
-    }
-
-    /**
-     * 新增讲者定级申请
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        return toAjax(doctorLevelApplyService.insertDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 修改讲者定级申请
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        return toAjax(doctorLevelApplyService.updateDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 讲者定级申请详情
-     */
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelApplyService.deleteDoctorLevelApplyByIds(ids));
-    }
-    @GetMapping(value = "/getDoctorApplyDetailInfoById")
-    public AjaxResult getDoctorApplyDetailInfoById(@RequestParam("id") Long id){
-
-        return AjaxResult.success(doctorLevelApplyService.getDoctorApplyDetailInfoById(id));
-    }
-
-
-    @PostMapping(value = "/doAudit")
-    public void doAudit(@RequestBody DoctorApplyAuditReqVO doctorApplyAuditReqVO){
-        doctorLevelApplyService.doAudit(doctorApplyAuditReqVO);
-    }
-}

+ 0 - 87
fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelController.java

@@ -1,87 +0,0 @@
-package com.fs.app.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevel;
-import com.fs.doctor.service.IDoctorLevelService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/level")
-public class DoctorLevelController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelService doctorLevelService;
-
-    /**
-     * 查询讲者级别信息列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevel doctorLevel)
-    {
-        startPage();
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者级别信息列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevel doctorLevel)
-    {
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        ExcelUtil<DoctorLevel> util = new ExcelUtil<DoctorLevel>(DoctorLevel.class);
-        return util.exportExcel(list, "讲者级别信息数据");
-    }
-
-    /**
-     * 获取讲者级别信息详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelService.selectDoctorLevelById(id));
-    }
-
-    /**
-     * 新增讲者级别信息
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevel doctorLevel)
-    {
-        return toAjax(doctorLevelService.insertDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 修改讲者级别信息
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevel doctorLevel)
-    {
-        return toAjax(doctorLevelService.updateDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 删除讲者级别信息
-     */
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelService.deleteDoctorLevelByIds(ids));
-    }
-}

+ 0 - 103
fs-company-app/src/main/java/com/fs/app/controller/DoctorLevelDataController.java

@@ -1,103 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelData;
-import com.fs.doctor.service.IDoctorLevelDataService;
-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 2026-02-12
- */
-@RestController
-@RequestMapping("/doctor/data")
-public class DoctorLevelDataController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelDataService doctorLevelDataService;
-
-    /**
-     * 查询医生级别列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelData doctorLevelData)
-    {
-        startPage();
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生级别列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:export')")
-    @Log(title = "医生级别", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        ExcelUtil<DoctorLevelData> util = new ExcelUtil<DoctorLevelData>(DoctorLevelData.class);
-        return util.exportExcel(list, "医生级别数据");
-    }
-
-    /**
-     * 获取医生级别详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelDataService.selectDoctorLevelDataById(id));
-    }
-
-    /**
-     * 新增医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:add')")
-    @Log(title = "医生级别", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelDataService.insertDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 修改医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:edit')")
-    @Log(title = "医生级别", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelDataService.updateDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 删除医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:remove')")
-    @Log(title = "医生级别", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelDataService.deleteDoctorLevelDataByIds(ids));
-    }
-}

+ 0 - 113
fs-company-app/src/main/java/com/fs/app/controller/ProjectController.java

@@ -1,113 +0,0 @@
-package com.fs.app.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.Project;
-import com.fs.project.service.IProjectService;
-import com.fs.project.vo.AddProjectReqVO;
-import com.fs.project.vo.GetAllDataVO;
-import com.fs.project.vo.ProjectOptionVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/project")
-public class ProjectController extends BaseController {
-    @Autowired
-    private IProjectService projectService;
-
-    /**
-     * 查询项目列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(Project project) {
-        startPage();
-        List<Project> list = projectService.selectProjectList(project);
-        return getDataTable(list);
-    }
-
-
-    /**
-     * 获取所有数据
-     * @return
-     */
-    @GetMapping("/getAllData")
-    public AjaxResult getAllData(GetAllDataVO dataVO){
-        List<Project> list = projectService.getAllData(dataVO);
-
-        return AjaxResult.success(list);
-    }
-
-    /**
-     * 导出项目列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(Project project) {
-        List<Project> list = projectService.selectProjectList(project);
-        ExcelUtil<Project> util = new ExcelUtil<Project>(Project.class);
-        return util.exportExcel(list, "项目数据");
-    }
-
-    /**
-     * 获取项目详细信息
-     */
-    @GetMapping("/{id:\\d+}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(projectService.selectProjectDetailById(id));
-    }
-
-    /**
-     * 新增项目
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody AddProjectReqVO addProjectReqVO) {
-        return toAjax(projectService.add(addProjectReqVO));
-    }
-
-    /**
-     * 修改项目
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody AddProjectReqVO addProjectReqVO) {
-        return toAjax(projectService.edit(addProjectReqVO));
-    }
-
-    /**
-     * 删除项目
-     */
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectService.deleteProjectByIds(ids));
-    }
-
-
-    @GetMapping("/options")
-    public AjaxResult options(@RequestParam(required = false) String projectName) {
-        List<ProjectOptionVO> list = projectService.selectProjectOptions(projectName);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 修改项目启用状态
-     */
-    @PutMapping("/changeStatus")
-    public AjaxResult changeStatus(@RequestBody Project project) {
-        // 只需要 id 和 status
-        return toAjax(projectService.changeStatus(project.getId(), project.getStatus()));
-    }
-
-}

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

@@ -1,96 +0,0 @@
-package com.fs.app.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectSettings;
-import com.fs.project.service.IProjectSettingsService;
-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 2026-01-12
- */
-@RestController
-@RequestMapping("/project/settings")
-public class ProjectSettingsController extends BaseController
-{
-    @Autowired
-    private IProjectSettingsService projectSettingsService;
-
-    /**
-     * 查询项目设置列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectSettings projectSettings)
-    {
-        startPage();
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目设置列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(ProjectSettings projectSettings)
-    {
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        ExcelUtil<ProjectSettings> util = new ExcelUtil<ProjectSettings>(ProjectSettings.class);
-        return util.exportExcel(list, "项目设置数据");
-    }
-
-    /**
-     * 获取项目设置详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsById(id));
-    }
-
-    /**
-     * 新增项目设置
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectSettings projectSettings)
-    {
-        return toAjax(projectSettingsService.insertProjectSettings(projectSettings));
-    }
-
-    /**
-     * 修改项目设置
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectSettings projectSettings)
-    {
-        return toAjax(projectSettingsService.updateProjectSettings(projectSettings));
-    }
-
-    /**
-     * 删除项目设置
-     */
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectSettingsService.deleteProjectSettingsByIds(ids));
-    }
-
-    /**
-     * 查询指定公司下的项目设置列表
-     */
-    @GetMapping("/company/{companyId}")
-    public AjaxResult listByCompanyId(@PathVariable String companyId)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsByCompanyId(companyId));
-    }
-}

+ 0 - 131
fs-company-app/src/main/java/com/fs/app/controller/ProjectStandardController.java

@@ -1,131 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.exception.ServiceException;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectStandard;
-import com.fs.project.service.IProjectStandardService;
-import com.fs.project.vo.CompanyIntegralRangesReqParams;
-import com.fs.project.vo.ProjectStandardDTO;
-import com.fs.project.vo.ProjectStandardVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-@RestController
-@RequestMapping("/project/standard")
-public class ProjectStandardController extends BaseController {
-
-    @Autowired
-    private IProjectStandardService projectStandardService;
-
-    /**
-     * 查询列表 - 返回 VO(自动转换 levelConfigList)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectStandard projectStandard) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectStandard.setCompanyId(currentCompanyId);
-        List<ProjectStandardVO> voList = projectStandardService.listVo(projectStandard);
-        return getDataTable(voList);
-    }
-
-    /**
-     * 导出(暂保持原逻辑,导出字符串 JSON)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:export')")
-    @Log(title = "项目标准配置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectStandard projectStandard) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectStandard.setCompanyId(currentCompanyId);
-        List<ProjectStandard> list = projectStandardService.selectProjectStandardList(projectStandard);
-        ExcelUtil<ProjectStandard> util = new ExcelUtil<>(ProjectStandard.class);
-        return util.exportExcel(list, "项目标准配置数据");
-    }
-
-    /**
-     * 获取详情 - 返回 VO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        ProjectStandardVO vo = projectStandardService.getDetailVo(id);
-        return AjaxResult.success(vo);
-    }
-
-    /**
-     * 新增 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:add')")
-    @Log(title = "项目标准配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectStandardDTO dto) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        dto.setCompanyId(currentCompanyId);
-        // 校验唯一性
-        String projectType = dto.getProjectType();
-        ProjectStandard exist = projectStandardService.selectProjectStandardByCompanyIdAndProjectType(currentCompanyId,projectType);
-        if (exist != null) {
-            throw new ServiceException("该企业已存在项目标准规则,请编辑已有规则");
-        }
-        dto.setDelFlag(0);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 修改 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:edit')")
-    @Log(title = "项目标准配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectStandardDTO dto) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        dto.setCompanyId(currentCompanyId);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 删除(逻辑删除)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:remove')")
-    @Log(title = "项目标准配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectStandardService.deleteProjectStandardByIds(ids));
-    }
-
-
-    /**
-     * 获取项目允许的最大积分额度
-     * @param projectId 项目ID(必填)
-     * @return { "maxIntegral": 500.00 },若未配置则返回 null
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/checkIntegralLimit")
-    public AjaxResult checkIntegralLimit(@RequestParam Long projectId,@RequestParam Long doctorId,@RequestParam Integer pointNum,@RequestParam Long companyId) {
-        return AjaxResult.success(projectStandardService.getCompanyIntegralLimit(projectId,doctorId,pointNum,companyId));
-    }
-
-
-
-    /**
-     * 批量获取指定项目下多个医生的可积分范围
-     */
-    @PostMapping("/getCompanyIntegralRanges")
-    public AjaxResult getCompanyIntegralRanges(@RequestBody CompanyIntegralRangesReqParams companyIntegralRangesReqParams) {
-        return AjaxResult.success(projectStandardService.getCompanyIntegralRanges(companyIntegralRangesReqParams));
-    }
-
-}

+ 0 - 108
fs-company-app/src/main/java/com/fs/app/controller/ProjectTaskTypeController.java

@@ -1,108 +0,0 @@
-package com.fs.app.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectTaskType;
-import com.fs.project.service.IProjectTaskTypeService;
-import com.fs.project.vo.QueryAllDataVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/type")
-public class ProjectTaskTypeController extends BaseController
-{
-    @Autowired
-    private IProjectTaskTypeService projectTaskTypeService;
-
-    /**
-     * 查询项目任务类型列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectTaskType projectTaskType)
-    {
-        startPage();
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        return getDataTable(list);
-    }
-
-    @GetMapping("/queryAllData")
-    public AjaxResult queryAllData(QueryAllDataVO queryAllDataVO)
-    {
-        List<ProjectTaskType> list = projectTaskTypeService.queryAllData(queryAllDataVO);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 导出项目任务类型列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(ProjectTaskType projectTaskType)
-    {
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        ExcelUtil<ProjectTaskType> util = new ExcelUtil<ProjectTaskType>(ProjectTaskType.class);
-        return util.exportExcel(list, "项目任务类型数据");
-    }
-
-    /**
-     * 获取项目任务类型详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectTaskTypeService.selectProjectTaskTypeById(id));
-    }
-
-    /**
-     * 新增项目任务类型
-     */
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectTaskType projectTaskType)
-    {
-        return toAjax(projectTaskTypeService.insertProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 修改项目任务类型
-     */
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectTaskType projectTaskType)
-    {
-        return toAjax(projectTaskTypeService.updateProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 删除项目任务类型
-     */
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectTaskTypeService.deleteProjectTaskTypeByIds(ids));
-    }
-
-
-
-
-    @GetMapping("/selectProjectOptionsByDept")
-    public AjaxResult optionsByDept(@RequestParam Long deptId,
-                                    @RequestParam(required = false) String projectName) {
-        return AjaxResult.success(projectTaskTypeService.selectProjectOptionsByDept(deptId, projectName));
-    }
-
-
-
-}

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

@@ -1,96 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.provider.service.IServiceOrderService;
-import com.fs.provider.vo.ServiceOrderStatisticsReqVO;
-import com.fs.provider.vo.ServiceOrderStatisticsVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 服务单统计 Controller
- *
- * @author fs
- */
-@Slf4j
-@Api(tags = "服务单统计")
-@RestController
-@RequestMapping("/app/statistics/serviceOrder")
-@RequiredArgsConstructor
-public class ServiceOrderStatisticsController extends BaseController {
-
-    private final IServiceOrderService serviceOrderService;
-
-    /**
-     * 服务单统计汇总(按部门分组)
-     *
-     * 统计字段:
-     * - 归属部门
-     * - 服务单数
-     * - 任务数
-     * - 客服数
-     * - 医生数
-     * - 总金额
-     */
-    @Login
-    @ApiOperation("服务单统计汇总")
-    @GetMapping("/summary")
-    public AjaxResult getStatisticsSummary(ServiceOrderStatisticsReqVO reqVO) {
-        // 获取当前登录用户的公司ID
-        Long companyId = LoginContextManager.getCurrentCompanyId();
-        reqVO.setCompanyId(companyId);
-
-        log.info("服务单统计汇总查询, companyId={}, reqVO={}", companyId, reqVO);
-
-        List<ServiceOrderStatisticsVO> statistics = serviceOrderService.getServiceOrderStatistics(reqVO);
-
-        return AjaxResult.success(statistics);
-    }
-
-    @Login
-    @ApiOperation("服务单统计汇总-服务单数量")
-    @GetMapping("/summaryTotal")
-    public AjaxResult getStatisticsSummaryTotal(ServiceOrderStatisticsReqVO reqVO) {
-        // 获取当前登录用户的公司ID
-        Long companyId = LoginContextManager.getCurrentCompanyId();
-        reqVO.setCompanyId(companyId);
-
-        log.info("服务单统计汇总-服务单数量, companyId={}, reqVO={}", companyId, reqVO);
-
-        Long serviceOrderStatCount = serviceOrderService.selectServiceOrderStatCount(reqVO);
-
-        return AjaxResult.success(serviceOrderStatCount);
-    }
-
-    /**
-     * 服务单统计汇总(指定部门)
-     */
-    @Login
-    @ApiOperation("指定部门统计")
-    @GetMapping("/summary/{deptId}")
-    public AjaxResult getStatisticsByDept(@PathVariable Long deptId, ServiceOrderStatisticsReqVO reqVO) {
-        // 获取当前登录用户的公司ID
-        Long companyId = LoginContextManager.getCurrentCompanyId();
-        reqVO.setCompanyId(companyId);
-        reqVO.setDeptId(deptId);
-
-        log.info("指定部门统计查询, companyId={}, deptId={}, reqVO={}", companyId, deptId, reqVO);
-
-        List<ServiceOrderStatisticsVO> statistics = serviceOrderService.getServiceOrderStatistics(reqVO);
-
-        // 返回单个结果或空
-        if (statistics != null && !statistics.isEmpty()) {
-            return AjaxResult.success(statistics.get(0));
-        }
-
-        return AjaxResult.success(null);
-    }
-}

+ 0 - 131
fs-company-app/src/main/java/com/fs/app/controller/SurveyQuestionnaireController.java

@@ -1,131 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.survey.domain.SurveyQuestionnaire;
-import com.fs.survey.service.ISurveyQuestionnaireService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.List;
-
-/**
- * 问卷Controller
- *
- */
-@RestController
-@RequestMapping("/survey/questionnaire")
-public class SurveyQuestionnaireController extends BaseController {
-    @Autowired
-    private ISurveyQuestionnaireService surveyQuestionnaireService;
-
-    /**
-     * 查询问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyQuestionnaire surveyQuestionnaire) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:export')")
-    @Log(title = "问卷", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, SurveyQuestionnaire surveyQuestionnaire) throws IOException {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        ExcelUtil<SurveyQuestionnaire> util = new ExcelUtil<SurveyQuestionnaire>(SurveyQuestionnaire.class);
-        util.exportExcel(response, list, "问卷数据");
-    }
-
-    /**
-     * 获取问卷详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(surveyQuestionnaireService.selectSurveyQuestionnaireById(id));
-    }
-
-    /**
-     * 新增问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:add')")
-    @Log(title = "问卷", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        return toAjax(surveyQuestionnaireService.insertSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 修改问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:edit')")
-    @Log(title = "问卷", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        return toAjax(surveyQuestionnaireService.updateSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 删除问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:remove')")
-    @Log(title = "问卷", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(surveyQuestionnaireService.deleteSurveyQuestionnaireByIds(ids));
-    }
-
-    /**
-     * 发布问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:publish')")
-    @Log(title = "发布问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/publish/{id}/{versionId}")
-    public AjaxResult publish(@PathVariable Long id, @PathVariable Long versionId) {
-        return toAjax(surveyQuestionnaireService.publishQuestionnaire(id, versionId));
-    }
-
-    /**
-     * 停用问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:disable')")
-    @Log(title = "停用问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/disable/{id}")
-    public AjaxResult disable(@PathVariable Long id) {
-        return toAjax(surveyQuestionnaireService.disableQuestionnaire(id));
-    }
-
-    /**
-     * 获取公司定级申请问卷(不需要参数)
-     */
-    @GetMapping("/getCompanyDoctorLevelApplyQuestionnaire")
-    public AjaxResult getCompanyDoctorLevelApplyQuestionnaire(Long companyId ) {
-        return AjaxResult.success(surveyQuestionnaireService.getCompanyDoctorLevelApplyQuestionnaire(companyId));
-
-    }
-
-
-
-}

+ 0 - 283
fs-company-app/src/main/java/com/fs/app/controller/TaskInfoController.java

@@ -1,283 +0,0 @@
-package com.fs.app.controller;
-
-import com.fs.app.annotation.Login;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.TaskLabelEnum;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.live.domain.LiveBroadcast;
-import com.fs.live.service.ILiveBroadcastService;
-import com.fs.survey.domain.DrugResearch;
-import com.fs.survey.domain.SurveyTask;
-import com.fs.survey.dto.PeriodDataDto;
-import com.fs.survey.service.IDrugResearchService;
-import com.fs.survey.service.ISurveyTaskPeriodService;
-import com.fs.survey.service.ISurveyTaskService;
-import com.fs.task.domain.TaskInfo;
-import com.fs.task.dto.TaskStatsDTO;
-import com.fs.task.enums.TaskTypeEnum;
-import com.fs.task.service.ITaskInfoService;
-import com.fs.task.vo.*;
-import com.github.pagehelper.PageHelper;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.validation.Valid;
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 任务信息Controller
- *
- * @author fs
- * @date 2026-01-04
- */
-@RestController
-@RequestMapping("/task/info")
-public class TaskInfoController extends BaseController {
-    @Autowired
-    private ITaskInfoService taskInfoService;
-    @Autowired
-    private ISurveyTaskService iSurveyTaskService;
-    @Autowired
-    private ISurveyTaskPeriodService surveyTaskPeriodService;
-    @Autowired
-    private ILiveBroadcastService liveBroadcastService;
-    @Autowired
-    private IDrugResearchService iDrugResearchService;
-    /**
-     * 查询任务信息列表
-     */
-    @GetMapping("/list")
-    public TableDataInfo list(TaskInfo taskInfo) {
-        startPage();
-        taskInfo.setCompanyId(taskInfo.getCompanyId());
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        return getDataTable(list);
-    }
-
-
-    /**
-     * 任务完成统计
-     *
-     * @return AjaxResult
-     */
-    @PostMapping("/getTaskCompleteStats")
-    public AjaxResult getTaskCompleteStats(@RequestBody GetTaskCompleteStatsVO param) {
-        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-
-        List<TaskStatsDTO> list = taskInfoService.getTaskCompleteStats(param);
-        // 计算当前页的总积分和总数量
-        BigDecimal totalPoints = BigDecimal.ZERO;
-        Long totalCount = 0L;
-        for (TaskStatsDTO dto : list) {
-            if (dto.getTotalPoints() != null) {
-                totalPoints = totalPoints.add(dto.getTotalPoints());
-            }
-            if (dto.getCount() != null) {
-                totalCount += dto.getCount();
-            }
-        }
-        // 构建返回数据
-        Map<String, Object> result = new HashMap<>();
-        //数据
-        result.put("rows", list);
-        //总积分
-        result.put("totalPoints", totalPoints);
-        //总条数
-        result.put("totalCount", totalCount);
-
-        return AjaxResult.success(result);
-    }
-
-    /**
-     * 任务完成统计-总积分
-     *
-     * @return AjaxResult
-     */
-    @PostMapping("/getTaskCompleteTotal")
-    public AjaxResult getTaskCompleteTotal(@RequestBody GetTaskCompleteStatsVO param) {
-
-        BigDecimal taskCompleteStatsCount = taskInfoService.getTaskCompleteStatsCount(param);
-        return AjaxResult.success(taskCompleteStatsCount);
-    }
-
-    /**
-     * 任务完成统计
-     *
-     * @return AjaxResult
-     */
-    @PostMapping("/getTaskCreateStats")
-    public AjaxResult getTaskCreateStats(@RequestBody GetTaskCompleteStatsVO param) {
-        // 1. 分页查询
-        startPage(); // 假设这是项目中的分页启动方法
-        List<TaskStatsDTO> list = taskInfoService.getTaskCreateStats(param);
-
-        // 2. 遍历当前页数据,累加总积分和总数量
-        BigDecimal totalPoints = BigDecimal.ZERO;
-        Long totalCount = 0L;
-        for (TaskStatsDTO dto : list) {
-            if (dto.getTotalPoints() != null) {
-                totalPoints = totalPoints.add(dto.getTotalPoints());
-            }
-            if (dto.getCount() != null) {
-                totalCount += dto.getCount();
-            }
-        }
-
-        // 3. 构建返回数据(与上一个接口结构一致)
-        Map<String, Object> result = new HashMap<>();
-        result.put("rows", list);           // 当前页数据列表
-        result.put("totalPoints", totalPoints); // 当前页总积分
-        result.put("totalCount", totalCount);   // 当前页总数量
-        return AjaxResult.success(result);
-    }
-
-    /**
-     * 任务完成统计-总积分
-     *
-     * @return AjaxResult
-     */
-    @PostMapping("/getTaskCreateTotal")
-    public AjaxResult getTaskCreateTotal(@RequestBody GetTaskCompleteStatsVO param) {
-        BigDecimal taskCreateStatsCount = taskInfoService.getTaskCreateStatsCount(param);
-        return AjaxResult.success(taskCreateStatsCount);
-    }
-
-
-    /**
-     * 导出任务信息列表
-     */
-    @GetMapping("/export")
-    public AjaxResult export(TaskInfo taskInfo) {
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        ExcelUtil<TaskInfo> util = new ExcelUtil<TaskInfo>(TaskInfo.class);
-        return util.exportExcel(list, "任务信息主数据");
-    }
-
-    /**
-     * 获取任务信息详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(taskInfoService.selectTaskInfoById(id));
-    }
-
-    /**
-     * 新增任务信息
-     */
-    @PostMapping
-    @Login
-    public AjaxResult add(@RequestBody TaskInfoCreateVO taskInfo) {
-        int taskType = taskInfo.getTaskType().intValue();
-        //文件调研
-        if (taskType == TaskTypeEnum.SURVEY.getCode()) {
-            taskInfo.setTargetId(TaskLabelEnum.survey + "-" + taskInfo.getTargetId());
-        } else if (taskType == TaskTypeEnum.DRUG.getCode()) {
-            taskInfo.setTargetId(TaskLabelEnum.drug + "-" + taskInfo.getTargetId());
-        } else if (taskType == TaskTypeEnum.LIVE_LECTURE.getCode()) {
-            taskInfo.setTargetId(TaskLabelEnum.live + "-" + taskInfo.getTargetId());
-        }
-
-        taskInfo.setApplyTime(new Date());
-        return toAjax(taskInfoService.insertTaskInfo(taskInfo));
-    }
-
-    /**
-     * 修改任务信息
-     */
-    @PostMapping("/edit")
-    public AjaxResult edit(@RequestBody TaskInfo taskInfo) {
-        if (taskInfo.getId() == null) {
-            throw new IllegalArgumentException("任务ID不存在!");
-        }
-        return toAjax(taskInfoService.updateTaskInfo(taskInfo));
-    }
-
-    /**
-     * 删除任务信息
-     */
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(taskInfoService.deleteTaskInfoByIds(ids));
-    }
-
-
-    @PostMapping("doCreateAudit")
-    public void doCreateAudit(@RequestBody TaskCreateAuditReqVO taskCreateAuditReqVO) {
-        taskInfoService.doCreateAudit(taskCreateAuditReqVO);
-    }
-
-
-    @PostMapping("dofinishAudit")
-    public void dofinishAudit(@RequestBody TaskFinishAuditReqVO taskFinishAuditReqVO) {
-        taskInfoService.dofinishAudit(taskFinishAuditReqVO);
-    }
-
-    @GetMapping("getTaskCreateAuditInfo")
-    public AjaxResult getTaskCreateAuditInfo(@RequestParam Long taskId) {
-        return AjaxResult.success(taskInfoService.getTaskCreateAuditInfo(taskId));
-    }
-
-
-    @GetMapping("getTaskFinishAuditInfo")
-    public AjaxResult getTaskFinishAuditInfo(@RequestParam Long taskId) {
-        return AjaxResult.success(taskInfoService.getTaskFinishAuditInfo(taskId));
-    }
-
-
-    @PutMapping("/spotCheck")
-    public AjaxResult updateSpotCheck(@Valid @RequestBody TaskSpotCheckUpdateReqVO req) {
-
-        int rows = taskInfoService.updateSpotCheck(req);
-        return rows > 0 ? AjaxResult.success() : AjaxResult.error("更新失败");
-    }
-
-    /**
-     * 复制创建任务
-     */
-    @Login
-    @PostMapping("/copy/{taskId}")
-    public AjaxResult copyTask(@PathVariable Long taskId) {
-        Long newTaskId = taskInfoService.copyCreateTask(taskId);
-        return AjaxResult.success("复制成功", newTaskId);
-    }
-
-
-    @ApiOperation("获取问卷调查主列表")
-    @GetMapping("/getSurveyTaskList")
-    public AjaxResult getSurveyTaskList( SurveyTask surveyTask) {
-        startPage();
-        surveyTask.setDoctorId(Long.valueOf(surveyTask.getUserId()));
-        List<SurveyTask> surveyTaskList = iSurveyTaskService.selectSurveyTaskList(surveyTask);
-
-        return AjaxResult.success(getDataTable(surveyTaskList));
-    }
-
-
-
-    @ApiOperation("获取用药调研主列表")
-    @GetMapping("/getDrugResearchList")
-    public AjaxResult getDrugResearchList(DrugResearch drugResearch) {
-        startPage();
-        drugResearch.setStatus(1l);
-        List<DrugResearch> drugResearches = iDrugResearchService.selectDrugResearchList(drugResearch);
-        return AjaxResult.success(getDataTable(drugResearches));
-    }
-
-
-    @ApiOperation("查询直播列表列表")
-    @GetMapping("/liveList")
-    public TableDataInfo liveList(LiveBroadcast liveBroadcast) {
-        startPage();
-        liveBroadcast.setStatus(0l);
-        List<LiveBroadcast> list = liveBroadcastService.selectliveList(liveBroadcast);
-        return getDataTable(list);
-    }
-
-}

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

@@ -3,7 +3,6 @@ package com.fs.app.exception;
 
 
 
-import com.fs.audit.exception.BusinessException;
 import com.fs.common.core.domain.R;
 import com.fs.common.exception.CustomException;
 import org.slf4j.Logger;
@@ -80,9 +79,4 @@ public class FSExceptionHandler {
 		return R.error(e.getMessage());
 	}
 
-	@ExceptionHandler(BusinessException.class)
-	public R handleBusinessException(BusinessException e){
-		logger.warn(e.getMessage(), e);
-		return R.error(e.getCode(), e.getMessage());
-	}
 }

+ 0 - 97
fs-company/src/main/java/com/fs/audit/controller/AuditTempController.java

@@ -1,97 +0,0 @@
-package com.fs.audit.controller;
-
-import com.fs.audit.domain.AuditTemp;
-import com.fs.audit.service.AuditTempService;
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-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 2026-01-06
- */
-@RestController
-@RequestMapping("/audit/temp")
-public class AuditTempController extends BaseController
-{
-    @Autowired
-    private AuditTempService auditTempService;
-
-    /**
-     * 查询审核模板列表
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(AuditTemp auditTemp)
-    {
-        startPage();
-        List<AuditTemp> list = auditTempService.selectAuditTempList(auditTemp);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出审核模板列表
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:export')")
-    @Log(title = "审核模板", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(AuditTemp auditTemp)
-    {
-        List<AuditTemp> list = auditTempService.selectAuditTempList(auditTemp);
-        ExcelUtil<AuditTemp> util = new ExcelUtil<AuditTemp>(AuditTemp.class);
-        return util.exportExcel(list, "审核模板数据");
-    }
-
-    /**
-     * 获取审核模板详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(auditTempService.getTemplate(id));
-    }
-
-    /**
-     * 新增审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:add')")
-    @Log(title = "审核模板", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody AuditTemp auditTemp)
-    {
-        return toAjax(auditTempService.insertAuditTemp(auditTemp));
-    }
-
-    /**
-     * 修改审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:edit')")
-    @Log(title = "审核模板", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody AuditTemp auditTemp)
-    {
-        return toAjax(auditTempService.updateAuditTemp(auditTemp));
-    }
-
-    /**
-     * 删除审核模板
-     */
-    @PreAuthorize("@ss.hasPermi('shop:temp:remove')")
-    @Log(title = "审核模板", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(auditTempService.deleteAuditTempByIds(ids));
-    }
-}

+ 0 - 125
fs-company/src/main/java/com/fs/city/controller/FsCityController.java

@@ -1,125 +0,0 @@
-package com.fs.city.controller;
-
-import com.fs.city.domain.FsCity;
-import com.fs.city.service.IFsCityService;
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-/**
- * 城市Controller
- * 
- * @author fs
- * @date 2026-01-14
- */
-@RestController
-@RequestMapping("/city/city")
-public class FsCityController extends BaseController
-{
-    @Autowired
-    private IFsCityService fsCityService;
-
-    /**
-     * 查询城市列表
-     */
-    @PreAuthorize("@ss.hasPermi('city:city:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(FsCity fsCity)
-    {
-        startPage();
-        List<FsCity> list = fsCityService.selectFsCityList(fsCity);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出城市列表
-     */
-    @Log(title = "城市", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(FsCity fsCity)
-    {
-        List<FsCity> list = fsCityService.selectFsCityList(fsCity);
-        ExcelUtil<FsCity> util = new ExcelUtil<FsCity>(FsCity.class);
-        return util.exportExcel(list, "城市数据");
-    }
-
-    /**
-     * 获取城市详细信息
-     */
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(fsCityService.selectFsCityById(id));
-    }
-
-    /**
-     * 新增城市
-     */
-    @PreAuthorize("@ss.hasPermi('city:city:add')")
-    @Log(title = "城市", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody FsCity fsCity)
-    {
-        return toAjax(fsCityService.insertFsCity(fsCity));
-    }
-
-    /**
-     * 修改城市
-     */
-    @Log(title = "城市", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody FsCity fsCity)
-    {
-        return toAjax(fsCityService.updateFsCity(fsCity));
-    }
-
-    /**
-     * 删除城市
-     */
-    @Log(title = "城市", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(fsCityService.deleteFsCityByIds(ids));
-    }
-
-
-    /**
-     * 级联:按父级编码查询下一级
-     * parentId 为空 -> 默认取全国下的省(parent_id = "0" 或 level=1,按你数据定)
-     */
-    @GetMapping("/cascaderChildren")
-    public AjaxResult cascaderChildren(@RequestParam(required = false) String parentId) {
-        List<FsCity> list = fsCityService.selectChildren(parentId);
-        // 组装成 el-cascader 需要的结构:value/label/leaf
-        List<Map<String, Object>> result = list.stream().map(c -> {
-            Map<String, Object> m = new HashMap<>();
-            m.put("value", c.getCityId());     // 用 city_id 作为value(强烈推荐)
-            m.put("label", c.getCityName());
-            // leaf:是否叶子(这里按 level 判断:省/市/区县...你想停在区县就 level>=3 leaf=true)
-            boolean leaf = c.getLevel() != null && c.getLevel() >= 3;
-            m.put("leaf", leaf);
-            return m;
-        }).collect(Collectors.toList());
-
-        return AjaxResult.success(result);
-    }
-
-
-    @GetMapping("/path")
-    public AjaxResult path(@RequestParam String cityId) {
-        return AjaxResult.success(fsCityService.selectPath(cityId));
-    }
-}
-

+ 0 - 106
fs-company/src/main/java/com/fs/delivery/controller/CtArticleController.java

@@ -1,106 +0,0 @@
-package com.fs.delivery.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.CtArticle;
-import com.fs.delivery.service.ICtArticleService;
-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 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/article")
-public class CtArticleController extends BaseController
-{
-    @Autowired
-    private ICtArticleService ctArticleService;
-
-    /**
-     * 查询文章列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtArticle ctArticle)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctArticle.setCompanyId(currentCompanyId);
-        List<CtArticle> list = ctArticleService.selectCtArticleList(ctArticle);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出文章列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:export')")
-    @Log(title = "文章", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtArticle ctArticle)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctArticle.setCompanyId(currentCompanyId);
-        List<CtArticle> list = ctArticleService.selectCtArticleList(ctArticle);
-        ExcelUtil<CtArticle> util = new ExcelUtil<CtArticle>(CtArticle.class);
-        return util.exportExcel(list, "文章数据");
-    }
-
-    /**
-     * 获取文章详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(ctArticleService.selectCtArticleById(id));
-    }
-
-    /**
-     * 新增文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:add')")
-    @Log(title = "文章", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtArticle ctArticle)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctArticle.setCompanyId(currentCompanyId);
-        return toAjax(ctArticleService.insertCtArticle(ctArticle));
-    }
-
-    /**
-     * 修改文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:edit')")
-    @Log(title = "文章", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtArticle ctArticle)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctArticle.setCompanyId(currentCompanyId);
-        return toAjax(ctArticleService.updateCtArticle(ctArticle));
-    }
-
-    /**
-     * 删除文章
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:article:remove')")
-    @Log(title = "文章", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctArticleService.deleteCtArticleByIds(ids));
-    }
-}

+ 0 - 108
fs-company/src/main/java/com/fs/delivery/controller/CtLongVideoController.java

@@ -1,108 +0,0 @@
-package com.fs.delivery.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.CtLongVideo;
-import com.fs.delivery.service.ICtLongVideoService;
-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 2026-01-22
- */
-@RestController
-@RequestMapping("/delivery/video")
-public class CtLongVideoController extends BaseController
-{
-    @Autowired
-    private ICtLongVideoService ctLongVideoService;
-
-    /**
-     * 查询长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtLongVideo ctLongVideo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctLongVideo.setCompanyId(currentCompanyId);
-
-        startPage();
-        List<CtLongVideo> list = ctLongVideoService.selectCtLongVideoList(ctLongVideo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:export')")
-    @Log(title = "长视频", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtLongVideo ctLongVideo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctLongVideo.setCompanyId(currentCompanyId);
-        List<CtLongVideo> list = ctLongVideoService.selectCtLongVideoList(ctLongVideo);
-        ExcelUtil<CtLongVideo> util = new ExcelUtil<CtLongVideo>(CtLongVideo.class);
-        return util.exportExcel(list, "长视频数据");
-    }
-
-    /**
-     * 获取长视频详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-
-        return AjaxResult.success(ctLongVideoService.selectCtLongVideoById(id));
-    }
-
-    /**
-     * 新增长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:add')")
-    @Log(title = "长视频", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtLongVideo ctLongVideo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctLongVideo.setCompanyId(currentCompanyId);
-        return toAjax(ctLongVideoService.insertCtLongVideo(ctLongVideo));
-    }
-
-    /**
-     * 修改长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:edit')")
-    @Log(title = "长视频", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtLongVideo ctLongVideo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctLongVideo.setCompanyId(currentCompanyId);
-        return toAjax(ctLongVideoService.updateCtLongVideo(ctLongVideo));
-    }
-
-    /**
-     * 删除长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:video:remove')")
-    @Log(title = "长视频", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctLongVideoService.deleteCtLongVideoByIds(ids));
-    }
-}

+ 0 - 100
fs-company/src/main/java/com/fs/delivery/controller/CtShortVideoController.java

@@ -1,100 +0,0 @@
-package com.fs.delivery.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.CtShortVideo;
-import com.fs.delivery.service.ICtShortVideoService;
-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 2026-01-22
- */
-@RestController
-@RequestMapping("/delivery/shortVideo")
-public class CtShortVideoController extends BaseController
-{
-    @Autowired
-    private ICtShortVideoService ctShortVideoService;
-
-    /**
-     * 查询长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(CtShortVideo ctShortVideo)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ctShortVideo.setCompanyId(currentCompanyId);
-        List<CtShortVideo> list = ctShortVideoService.selectCtShortVideoList(ctShortVideo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出长视频列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:export')")
-    @Log(title = "长视频", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(CtShortVideo ctShortVideo)
-    {
-        List<CtShortVideo> list = ctShortVideoService.selectCtShortVideoList(ctShortVideo);
-        ExcelUtil<CtShortVideo> util = new ExcelUtil<CtShortVideo>(CtShortVideo.class);
-        return util.exportExcel(list, "长视频数据");
-    }
-
-    /**
-     * 获取长视频详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(ctShortVideoService.selectCtShortVideoById(id));
-    }
-
-    /**
-     * 新增长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:add')")
-    @Log(title = "长视频", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody CtShortVideo ctShortVideo)
-    {
-        return toAjax(ctShortVideoService.insertCtShortVideo(ctShortVideo));
-    }
-
-    /**
-     * 修改长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:edit')")
-    @Log(title = "长视频", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody CtShortVideo ctShortVideo)
-    {
-        return toAjax(ctShortVideoService.updateCtShortVideo(ctShortVideo));
-    }
-
-    /**
-     * 删除长视频
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:shortVideo:remove')")
-    @Log(title = "长视频", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(ctShortVideoService.deleteCtShortVideoByIds(ids));
-    }
-}

+ 0 - 106
fs-company/src/main/java/com/fs/delivery/controller/TagController.java

@@ -1,106 +0,0 @@
-package com.fs.delivery.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.Tag;
-import com.fs.delivery.service.ITagService;
-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 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/tag")
-public class TagController extends BaseController
-{
-    @Autowired
-    private ITagService tagService;
-
-    /**
-     * 查询标签列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Tag tag)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tag.setCompanyId(currentCompanyId);
-        List<Tag> list = tagService.selectTagList(tag);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出标签列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:export')")
-    @Log(title = "标签", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Tag tag)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tag.setCompanyId(currentCompanyId);
-        List<Tag> list = tagService.selectTagList(tag);
-        ExcelUtil<Tag> util = new ExcelUtil<Tag>(Tag.class);
-        return util.exportExcel(list, "标签数据");
-    }
-
-    /**
-     * 获取标签详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(tagService.selectTagById(id));
-    }
-
-    /**
-     * 新增标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:add')")
-    @Log(title = "标签", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody Tag tag)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tag.setCompanyId(currentCompanyId);
-        return toAjax(tagService.insertTag(tag));
-    }
-
-    /**
-     * 修改标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:edit')")
-    @Log(title = "标签", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Tag tag)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tag.setCompanyId(currentCompanyId);
-        return toAjax(tagService.updateTag(tag));
-    }
-
-    /**
-     * 删除标签
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:tag:remove')")
-    @Log(title = "标签", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(tagService.deleteTagByIds(ids));
-    }
-}

+ 0 - 106
fs-company/src/main/java/com/fs/delivery/controller/TagGroupController.java

@@ -1,106 +0,0 @@
-package com.fs.delivery.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.delivery.domain.TagGroup;
-import com.fs.delivery.service.ITagGroupService;
-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 2026-01-20
- */
-@RestController
-@RequestMapping("/delivery/group")
-public class TagGroupController extends BaseController
-{
-    @Autowired
-    private ITagGroupService tagGroupService;
-
-    /**
-     * 查询标签分组列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TagGroup tagGroup)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tagGroup.setCompanyId(currentCompanyId);
-        List<TagGroup> list = tagGroupService.selectTagGroupList(tagGroup);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出标签分组列表
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:export')")
-    @Log(title = "标签分组", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TagGroup tagGroup)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tagGroup.setCompanyId(currentCompanyId);
-        List<TagGroup> list = tagGroupService.selectTagGroupList(tagGroup);
-        ExcelUtil<TagGroup> util = new ExcelUtil<TagGroup>(TagGroup.class);
-        return util.exportExcel(list, "标签分组数据");
-    }
-
-    /**
-     * 获取标签分组详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(tagGroupService.selectTagGroupById(id));
-    }
-
-    /**
-     * 新增标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:add')")
-    @Log(title = "标签分组", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TagGroup tagGroup)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tagGroup.setCompanyId(currentCompanyId);
-        return toAjax(tagGroupService.insertTagGroup(tagGroup));
-    }
-
-    /**
-     * 修改标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:edit')")
-    @Log(title = "标签分组", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TagGroup tagGroup)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        tagGroup.setCompanyId(currentCompanyId);
-        return toAjax(tagGroupService.updateTagGroup(tagGroup));
-    }
-
-    /**
-     * 删除标签分组
-     */
-    @PreAuthorize("@ss.hasPermi('delivery:group:remove')")
-    @Log(title = "标签分组", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(tagGroupService.deleteTagGroupByIds(ids));
-    }
-}

+ 0 - 106
fs-company/src/main/java/com/fs/doctor/controller/DoctorBalanceLogController.java

@@ -1,106 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorBalanceLog;
-import com.fs.doctor.service.IDoctorBalanceLogService;
-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 2026-01-26
- */
-@RestController
-@RequestMapping("/doctor/log")
-public class DoctorBalanceLogController extends BaseController
-{
-    @Autowired
-    private IDoctorBalanceLogService doctorBalanceLogService;
-
-    /**
-     * 查询医生积分变动记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorBalanceLog doctorBalanceLog)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorBalanceLog.setCompanyId(currentCompanyId);
-        List<DoctorBalanceLog> list = doctorBalanceLogService.selectDoctorBalanceLogList(doctorBalanceLog);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生积分变动记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:export')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorBalanceLog doctorBalanceLog)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorBalanceLog.setCompanyId(currentCompanyId);
-        List<DoctorBalanceLog> list = doctorBalanceLogService.selectDoctorBalanceLogList(doctorBalanceLog);
-        ExcelUtil<DoctorBalanceLog> util = new ExcelUtil<DoctorBalanceLog>(DoctorBalanceLog.class);
-        return util.exportExcel(list, "医生积分变动记录数据");
-    }
-
-    /**
-     * 获取医生积分变动记录详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") String id)
-    {
-        return AjaxResult.success(doctorBalanceLogService.selectDoctorBalanceLogById(id));
-    }
-
-    /**
-     * 新增医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:add')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorBalanceLog doctorBalanceLog)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorBalanceLog.setCompanyId(currentCompanyId);
-        return toAjax(doctorBalanceLogService.insertDoctorBalanceLog(doctorBalanceLog));
-    }
-
-    /**
-     * 修改医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:edit')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorBalanceLog doctorBalanceLog)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorBalanceLog.setCompanyId(currentCompanyId);
-        return toAjax(doctorBalanceLogService.updateDoctorBalanceLog(doctorBalanceLog));
-    }
-
-    /**
-     * 删除医生积分变动记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:log:remove')")
-    @Log(title = "医生积分变动记录", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable String[] ids)
-    {
-        return toAjax(doctorBalanceLogService.deleteDoctorBalanceLogByIds(ids));
-    }
-}

+ 0 - 148
fs-company/src/main/java/com/fs/doctor/controller/DoctorCompanyUserController.java

@@ -1,148 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.company.vo.DoctorCompanyUserVO;
-import com.fs.doctor.domain.DoctorCompanyUser;
-import com.fs.doctor.service.IDoctorCompanyUserService;
-import com.fs.doctor.vo.ProductGroupReqVO;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/user")
-public class DoctorCompanyUserController extends BaseController {
-    @Autowired
-    private IDoctorCompanyUserService doctorCompanyUserService;
-
-    /**
-     * 查询讲者业务员绑定列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorCompanyUser doctorCompanyUser) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorCompanyUser.setCompanyId(currentCompanyId);
-        List<DoctorCompanyUserVO> doctorCompanyUserVOS = doctorCompanyUserService.selectDoctorCompanyUserList(doctorCompanyUser);
-        return getDataTable(doctorCompanyUserVOS);
-    }
-
-    /**
-     * 导出讲者业务员绑定列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:export')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorCompanyUser doctorCompanyUser) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorCompanyUser.setCompanyId(currentCompanyId);
-        List<DoctorCompanyUserVO> doctorCompanyUserVOS = doctorCompanyUserService.selectDoctorCompanyUserList(doctorCompanyUser);
-        ExcelUtil<DoctorCompanyUserVO> util = new ExcelUtil<DoctorCompanyUserVO>(DoctorCompanyUserVO.class);
-        return util.exportExcel(doctorCompanyUserVOS, "讲者业务员绑定数据");
-    }
-
-    /**
-     * 获取讲者业务员绑定详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(doctorCompanyUserService.selectDoctorCompanyUserById(id));
-    }
-
-    /**
-     * 新增讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:add')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorCompanyUser doctorCompanyUser) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorCompanyUser.setCompanyId(currentCompanyId);
-        return toAjax(doctorCompanyUserService.insertDoctorCompanyUser(doctorCompanyUser));
-    }
-
-    /**
-     * 修改讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:edit')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorCompanyUser doctorCompanyUser) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorCompanyUser.setCompanyId(currentCompanyId);
-        return toAjax(doctorCompanyUserService.updateDoctorCompanyUser(doctorCompanyUser));
-    }
-
-    /**
-     * 删除讲者业务员绑定
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:user:remove')")
-    @Log(title = "讲者业务员绑定", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(doctorCompanyUserService.deleteDoctorCompanyUserByIds(ids));
-    }
-
-    @GetMapping("/getProductGroup")
-    @Log(title = "获取产品组")
-    public AjaxResult getProductGroup(ProductGroupReqVO req) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        req.setCompanyId(currentCompanyId);
-        String pg = doctorCompanyUserService.queryProductGroup(req.getCompanyId(), req.getDoctorId());
-        return AjaxResult.success(pg);
-    }
-
-
-    /**
-     * 按公司+业务员联想查询讲者(只返回该业务员已绑定的讲者,且讲者审核通过)
-     * 参数:
-     * companyId(必填)
-     * companyUserId(必填)
-     * keyword(可选:讲者姓名/手机号模糊)
-     */
-    @GetMapping("/options/optionsByCompanyUser")
-    public AjaxResult doctorOptionsByCompanyUser(
-            @RequestParam Long companyId,
-            @RequestParam Long companyUserId,
-            @RequestParam(required = false) String productCode,
-            @RequestParam(required = false) String keyword
-    ) {
-
-        companyId = LoginContextManager.getCurrentCompanyId();
-        return AjaxResult.success(
-                doctorCompanyUserService.getDoctorOptionsByCompanyUser(companyId, companyUserId, productCode, keyword)
-        );
-    }
-
-
-    @GetMapping("/options/productoptionsByCompanyUser")
-    public AjaxResult productOptionsByCompanyUser(
-            @RequestParam Long companyId,
-            @RequestParam Long companyUserId,
-            @RequestParam(required = false) String keyword
-    ) {
-        companyId = LoginContextManager.getCurrentCompanyId();
-
-        return AjaxResult.success(
-                doctorCompanyUserService.getProductOptionsByCompanyUser(companyId, companyUserId, keyword)
-        );
-    }
-
-
-}

+ 0 - 158
fs-company/src/main/java/com/fs/doctor/controller/DoctorController.java

@@ -1,158 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.BeanCopyUtils;
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.Doctor;
-import com.fs.doctor.service.IDoctorService;
-import com.fs.doctor.vo.*;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/doctor")
-public class DoctorController extends BaseController
-{
-    @Autowired
-    private IDoctorService doctorService;
-
-    /**
-     * 查询讲者列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Doctor doctor)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctor.setCompanyId(currentCompanyId);
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        List<DoctorVO> doctorVOS = BeanCopyUtils.copyList(list, DoctorVO.class);
-
-        return getDataTable(doctorVOS);
-    }
-
-    /**
-     * 导出讲者列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:export')")
-    @Log(title = "讲者", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Doctor doctor)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctor.setCompanyId(currentCompanyId);
-        List<Doctor> list = doctorService.selectDoctorList(doctor);
-        ExcelUtil<Doctor> util = new ExcelUtil<Doctor>(Doctor.class);
-        return util.exportExcel(list, "讲者数据");
-    }
-
-    /**
-     * 获取讲者详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-
-        return AjaxResult.success(doctorService.selectDoctorById(id));
-    }
-
-    /**
-     * 新增讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:add')")
-    @Log(title = "讲者", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorVO doctorVO)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorVO.setCompanyId(currentCompanyId);
-        return toAjax( doctorService.addByCompany(doctorVO));
-    }
-
-    /**
-     * 修改讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:edit')")
-    @Log(title = "讲者", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Doctor doctor)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctor.setCompanyId(currentCompanyId);
-
-        return toAjax(doctorService.updateDoctor(doctor));
-    }
-
-    /**
-     * 删除讲者
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:remove')")
-    @Log(title = "讲者", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorService.deleteDoctorByIds(ids));
-    }
-
-
-        @PreAuthorize("@ss.hasPermi('doctor:doctor:list')")
-        @GetMapping("/getDoctorOptionVOList")
-        public AjaxResult getDoctorOptionVOList(DoctorOptionReqVO doctorOptionReqVO)
-        {
-            Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-            doctorOptionReqVO.setCompanyId(currentCompanyId);
-            List<DoctorOptionRespVO> list = doctorService.getDoctorOptionVOList(doctorOptionReqVO);
-            return AjaxResult.success(list);
-        }
-
-
-    /**
-     * 查询讲者审核页面信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:audit')")
-    @GetMapping("/audit/{id}")
-    public AjaxResult getAuditInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorService.selectDoctorAuditInfo(id));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:audit')")
-    @Log(title = "完成审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("doAudit")
-    public void doAudit(@RequestBody DoctorDoAuditReqVO doctorDoAuditReqVO){
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorDoAuditReqVO.setCompanyId(currentCompanyId);
-        doctorService.doAudit(doctorDoAuditReqVO);
-    }
-
-
-
-    /**
-     * 修改讲者密码
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:doctor:edit')")
-    @Log(title = "讲者-修改密码", businessType = BusinessType.UPDATE)
-    @PostMapping("/resetPwd")
-    public AjaxResult resetPwd(@RequestBody DoctorResetPwdReqVO req) {
-        return toAjax(doctorService.resetPwd(req));
-    }
-
-
-}

+ 0 - 156
fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelApplyController.java

@@ -1,156 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelApply;
-import com.fs.doctor.service.IDoctorLevelApplyService;
-import com.fs.doctor.vo.*;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/apply")
-public class DoctorLevelApplyController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelApplyService doctorLevelApplyService;
-
-    /**
-     * 查询讲者定级申请列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelApply doctorLevelApply)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelApply.setCompanyId(currentCompanyId);
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者定级申请列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:export')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelApply doctorLevelApply)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelApply.setCompanyId(currentCompanyId);
-        List<DoctorLevelApply> list = doctorLevelApplyService.selectDoctorLevelApplyList(doctorLevelApply);
-        ExcelUtil<DoctorLevelApply> util = new ExcelUtil<DoctorLevelApply>(DoctorLevelApply.class);
-        return util.exportExcel(list, "讲者定级申请数据");
-    }
-
-    /**
-     * 获取讲者定级申请详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelApplyService.selectDoctorLevelApplyById(id));
-    }
-
-    /**
-     * 新增讲者定级申请
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:add')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelApplyVO.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelApplyService.insertDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 修改讲者定级申请
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:edit')")
-    @Log(title = "讲者定级申请", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelApplyVO doctorLevelApplyVO)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelApplyVO.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelApplyService.updateDoctorLevelApply(doctorLevelApplyVO));
-    }
-
-    /**
-     * 讲者定级申请
-     */
-    @Log(title = "讲者定级申请", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(doctorLevelApplyService.deleteDoctorLevelApplyByIds(ids));
-    }
-
-
-    @Log(title = "讲者定级申请审核与查看页面信息")
-    @GetMapping(value = "/getDoctorApplyDetailInfoById")
-    public AjaxResult getDoctorApplyDetailInfoById(@RequestParam("id") Long id){
-
-        return AjaxResult.success(doctorLevelApplyService.getDoctorApplyDetailInfoById(id));
-    }
-    @PreAuthorize("@ss.hasPermi('doctor:apply:audit')")
-    @Log(title = "讲者定级申请审核", businessType = BusinessType.UPDATE)
-    @PostMapping(value = "/doAudit")
-    public void doAudit(@RequestBody DoctorApplyAuditReqVO doctorApplyAuditReqVO){
-        doctorLevelApplyService.doAudit(doctorApplyAuditReqVO);
-    }
-
-
-
-    /**
-     * 1. 新增定级申请(混合提交)
-     * 申请表 + 动态表单数据
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:add')")
-    @Log(title = "讲者定级申请-动态", businessType = BusinessType.INSERT)
-    @PostMapping("/dynamic/add")
-    public AjaxResult addDynamicApply(@RequestBody DynamicApplyAddVO addVO) {
-        // 1. 设置公司ID
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        addVO.getApply().setCompanyId(currentCompanyId);
-
-        // 2. 调用Service
-        Long applyId = doctorLevelApplyService.insertDynamicApply(addVO);
-        return AjaxResult.success(applyId);
-    }
-
-    /**
-     * 2. 修改定级申请(混合提交)
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:apply:edit')")
-    @Log(title = "讲者定级申请-动态", businessType = BusinessType.UPDATE)
-    @PutMapping("/dynamic/update")
-    public AjaxResult updateDynamicApply(@RequestBody DynamicApplyUpdateVO updateVO) {
-        // 1. 设置公司ID
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        updateVO.getApply().setCompanyId(currentCompanyId);
-
-        // 2. 调用Service
-        doctorLevelApplyService.updateDynamicApply(updateVO);
-        return AjaxResult.success();
-    }
-
-
-}

+ 0 - 106
fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelController.java

@@ -1,106 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevel;
-import com.fs.doctor.service.IDoctorLevelService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/level")
-public class DoctorLevelController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelService doctorLevelService;
-
-    /**
-     * 查询讲者级别信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevel doctorLevel)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevel.setCompanyId(currentCompanyId);
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出讲者级别信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:export')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevel doctorLevel)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevel.setCompanyId(currentCompanyId);
-        List<DoctorLevel> list = doctorLevelService.selectDoctorLevelList(doctorLevel);
-        ExcelUtil<DoctorLevel> util = new ExcelUtil<DoctorLevel>(DoctorLevel.class);
-        return util.exportExcel(list, "讲者级别信息数据");
-    }
-
-    /**
-     * 获取讲者级别信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelService.selectDoctorLevelById(id));
-    }
-
-    /**
-     * 新增讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:add')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevel doctorLevel)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevel.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelService.insertDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 修改讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:edit')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevel doctorLevel)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevel.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelService.updateDoctorLevel(doctorLevel));
-    }
-
-    /**
-     * 删除讲者级别信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:level:remove')")
-    @Log(title = "讲者级别信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelService.deleteDoctorLevelByIds(ids));
-    }
-}

+ 0 - 113
fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelDataController.java

@@ -1,113 +0,0 @@
-package com.fs.doctor.controller;
-
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.doctor.domain.DoctorLevelData;
-import com.fs.doctor.service.IDoctorLevelDataService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 医生级别Controller
- * 
- * @author fs
- * @date 2026-02-12
- */
-@RestController
-@RequestMapping("/doctor/data")
-public class DoctorLevelDataController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelDataService doctorLevelDataService;
-
-    /**
-     * 查询医生级别列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelData doctorLevelData)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生级别列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:export')")
-    @Log(title = "医生级别", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        List<DoctorLevelData> list = doctorLevelDataService.selectDoctorLevelDataList(doctorLevelData);
-        ExcelUtil<DoctorLevelData> util = new ExcelUtil<DoctorLevelData>(DoctorLevelData.class);
-        return util.exportExcel(list, "医生级别数据");
-    }
-
-    /**
-     * 获取医生级别详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelDataService.selectDoctorLevelDataById(id));
-    }
-
-    /**
-     * 新增医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:add')")
-    @Log(title = "医生级别", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelDataService.insertDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 修改医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:edit')")
-    @Log(title = "医生级别", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelData doctorLevelData)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelData.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelDataService.updateDoctorLevelData(doctorLevelData));
-    }
-
-    /**
-     * 删除医生级别
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:data:remove')")
-    @Log(title = "医生级别", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelDataService.deleteDoctorLevelDataByIds(ids));
-    }
-}

+ 0 - 106
fs-company/src/main/java/com/fs/doctor/controller/DoctorLevelMaterialController.java

@@ -1,106 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.DoctorLevelMaterial;
-import com.fs.doctor.service.IDoctorLevelMaterialService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/doctor/material")
-public class DoctorLevelMaterialController extends BaseController
-{
-    @Autowired
-    private IDoctorLevelMaterialService doctorLevelMaterialService;
-
-    /**
-     * 查询定级证明材料列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DoctorLevelMaterial doctorLevelMaterial)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelMaterial.setCompanyId(currentCompanyId);
-        List<DoctorLevelMaterial> list = doctorLevelMaterialService.selectDoctorLevelMaterialList(doctorLevelMaterial);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出定级证明材料列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:export')")
-    @Log(title = "定级证明材料", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DoctorLevelMaterial doctorLevelMaterial)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelMaterial.setCompanyId(currentCompanyId);
-        List<DoctorLevelMaterial> list = doctorLevelMaterialService.selectDoctorLevelMaterialList(doctorLevelMaterial);
-        ExcelUtil<DoctorLevelMaterial> util = new ExcelUtil<DoctorLevelMaterial>(DoctorLevelMaterial.class);
-        return util.exportExcel(list, "定级证明材料数据");
-    }
-
-    /**
-     * 获取定级证明材料详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(doctorLevelMaterialService.selectDoctorLevelMaterialById(id));
-    }
-
-    /**
-     * 新增定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:add')")
-    @Log(title = "定级证明材料", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DoctorLevelMaterial doctorLevelMaterial)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelMaterial.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelMaterialService.insertDoctorLevelMaterial(doctorLevelMaterial));
-    }
-
-    /**
-     * 修改定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:edit')")
-    @Log(title = "定级证明材料", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DoctorLevelMaterial doctorLevelMaterial)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        doctorLevelMaterial.setCompanyId(currentCompanyId);
-        return toAjax(doctorLevelMaterialService.updateDoctorLevelMaterial(doctorLevelMaterial));
-    }
-
-    /**
-     * 删除定级证明材料
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:material:remove')")
-    @Log(title = "定级证明材料", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(doctorLevelMaterialService.deleteDoctorLevelMaterialByIds(ids));
-    }
-}

+ 0 - 127
fs-company/src/main/java/com/fs/doctor/controller/WithdrawRecordsController.java

@@ -1,127 +0,0 @@
-package com.fs.doctor.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.doctor.domain.WithdrawRecords;
-import com.fs.doctor.service.IWithdrawRecordsService;
-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 2026-01-27
- */
-@RestController
-@RequestMapping("/doctor/records")
-public class WithdrawRecordsController extends BaseController
-{
-    @Autowired
-    private IWithdrawRecordsService withdrawRecordsService;
-
-    /**
-     * 查询医生提现记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(WithdrawRecords withdrawRecords)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        withdrawRecords.setCompanyId(currentCompanyId);
-        List<WithdrawRecords> list = withdrawRecordsService.selectWithdrawRecordsList(withdrawRecords);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出医生提现记录列表
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:export')")
-    @Log(title = "医生提现记录", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(WithdrawRecords withdrawRecords)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        withdrawRecords.setCompanyId(currentCompanyId);
-        List<WithdrawRecords> list = withdrawRecordsService.selectWithdrawRecordsList(withdrawRecords);
-        ExcelUtil<WithdrawRecords> util = new ExcelUtil<WithdrawRecords>(WithdrawRecords.class);
-        return util.exportExcel(list, "医生提现记录数据");
-    }
-
-    /**
-     * 获取医生提现记录详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:query')")
-    @GetMapping(value = "/{withdrawId}")
-    public AjaxResult getInfo(@PathVariable("withdrawId") Long withdrawId)
-    {
-        return AjaxResult.success(withdrawRecordsService.selectWithdrawRecordsByWithdrawId(withdrawId));
-    }
-
-    /**
-     * 新增医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:add')")
-    @Log(title = "医生提现记录", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        withdrawRecords.setCompanyId(currentCompanyId);
-        return toAjax(withdrawRecordsService.insertWithdrawRecords(withdrawRecords));
-    }
-
-    /**
-     * 修改医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:edit')")
-    @Log(title = "医生提现记录", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        withdrawRecords.setCompanyId(currentCompanyId);
-        return toAjax(withdrawRecordsService.updateWithdrawRecords(withdrawRecords));
-    }
-
-    /**
-     * 删除医生提现记录
-     */
-    @PreAuthorize("@ss.hasPermi('doctor:records:remove')")
-    @Log(title = "医生提现记录", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{withdrawIds}")
-    public AjaxResult remove(@PathVariable String[] withdrawIds)
-    {
-        return toAjax(withdrawRecordsService.deleteWithdrawRecordsByWithdrawIds(withdrawIds));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('doctor:records:audit')")
-    @Log(title = "审核医生提现记录", businessType = BusinessType.UPDATE)
-    @PostMapping("/audit")
-    public AjaxResult audit(@RequestBody WithdrawRecords withdrawRecords)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        withdrawRecords.setCompanyId(currentCompanyId);
-        return toAjax(withdrawRecordsService.auditWithdraw(withdrawRecords));
-    }
-
-    @PreAuthorize("@ss.hasPermi('doctor:records:query')")
-    @Log(title = "提现审核详情", businessType = BusinessType.OTHER)
-    @GetMapping("/auditInfo/{withdrawId}")
-    public AjaxResult auditInfo(@PathVariable Long withdrawId) {
-        return AjaxResult.success(withdrawRecordsService.getRecordAuditInfo(withdrawId));
-    }
-
-
-
-}

+ 0 - 113
fs-company/src/main/java/com/fs/live/controller/LiveBroadcastController.java

@@ -1,113 +0,0 @@
-package com.fs.live.controller;
-
-import java.util.List;
-
-import io.swagger.annotations.ApiOperation;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.live.domain.LiveBroadcast;
-import com.fs.live.service.ILiveBroadcastService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 直播列表Controller
- * 
- * @author fs
- * @date 2026-03-10
- */
-@RestController
-@RequestMapping("/live/broadcast")
-public class LiveBroadcastController extends BaseController
-{
-    @Autowired
-    private ILiveBroadcastService liveBroadcastService;
-
-    /**
-     * 查询直播列表列表
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(LiveBroadcast liveBroadcast)
-    {
-        startPage();
-        List<LiveBroadcast> list = liveBroadcastService.selectLiveBroadcastBaseList(liveBroadcast);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出直播列表列表
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:export')")
-    @Log(title = "直播列表", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(LiveBroadcast liveBroadcast)
-    {
-        List<LiveBroadcast> list = liveBroadcastService.selectLiveBroadcastList(liveBroadcast);
-        ExcelUtil<LiveBroadcast> util = new ExcelUtil<LiveBroadcast>(LiveBroadcast.class);
-        return util.exportExcel(list, "直播列表数据");
-    }
-
-    /**
-     * 获取直播列表详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(liveBroadcastService.selectLiveBroadcastById(id));
-    }
-
-    /**
-     * 新增直播列表
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:add')")
-    @Log(title = "直播列表", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody LiveBroadcast liveBroadcast)
-    {
-        return toAjax(liveBroadcastService.insertLiveBroadcast(liveBroadcast));
-    }
-
-    /**
-     * 修改直播列表
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:edit')")
-    @Log(title = "直播列表", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody LiveBroadcast liveBroadcast)
-    {
-        return toAjax(liveBroadcastService.updateLiveBroadcast(liveBroadcast));
-    }
-
-    /**
-     * 删除直播列表
-     */
-    @PreAuthorize("@ss.hasPermi('live:broadcast:remove')")
-    @Log(title = "直播列表", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(liveBroadcastService.deleteLiveBroadcastByIds(ids));
-    }
-
-    @ApiOperation("开始直播")
-    @PostMapping("/startLive")
-    public AjaxResult startLive()
-    {
-        System.out.println("调用了开始直播接口");
-        return AjaxResult.success("开始直播");
-    }
-}

+ 0 - 57
fs-company/src/main/java/com/fs/live/controller/LiveRemoteController.java

@@ -1,57 +0,0 @@
-package com.fs.live.controller;
-
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.LiveBroadcastEnum;
-import com.fs.live.dto.LiveBroadcastDto;
-import com.fs.live.domain.LiveBroadcast;
-import com.fs.live.service.ILiveBroadcastService;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.Date;
-
-/**
- * 直播列表Controller
- * 
- * @author fs
- * @date 2026-03-10
- */
-@RestController
-public class LiveRemoteController extends BaseController
-{
-    @Autowired
-    private ILiveBroadcastService liveBroadcastService;
-
-    @ApiOperation("开始直播")
-    @PostMapping("/startLive")
-    public AjaxResult startLive(@RequestBody LiveBroadcastDto liveBroadcastDto)
-    {
-        LiveBroadcast liveBroadcast = new LiveBroadcast();
-        liveBroadcast.setActualStartTime(new Date());
-        liveBroadcast.setId(liveBroadcastDto.getSysLiveId());
-        liveBroadcast.setStatus(LiveBroadcastEnum.STARTING.getCode());
-        liveBroadcastService.updateLiveBroadcast(liveBroadcast);
-
-        System.out.println("调用了开始直播接口");
-        return AjaxResult.success("开始直播");
-    }
-
-    @ApiOperation("结束直播")
-    @PostMapping("/closeLive")
-    public AjaxResult closeLive(@RequestBody LiveBroadcastDto liveBroadcastDto)
-    {
-        liveBroadcastService.closeLive(liveBroadcastDto);
-        System.out.println("调用了结束直播接口");
-        return AjaxResult.success("结束直播");
-    }
-
-    @ApiOperation("liveKit用户动态回调接口")
-    @PostMapping("/userStatusCallback")
-    public AjaxResult userStatusCallback(@RequestBody LiveBroadcastDto liveBroadcastDto)
-    {
-        System.out.println("-----------------用户动态回调执行了---------------------");
-        return AjaxResult.success("结束直播");
-    }
-}

+ 0 - 107
fs-company/src/main/java/com/fs/project/controller/ProjectContractController.java

@@ -1,107 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectContract;
-import com.fs.project.service.IProjectContractService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/contract")
-public class ProjectContractController extends BaseController
-{
-    @Autowired
-    private IProjectContractService projectContractService;
-
-    /**
-     * 查询项目合同信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectContract projectContract)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectContract.setCompanyId(currentCompanyId);
-
-        List<ProjectContract> list = projectContractService.selectProjectContractList(projectContract);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目合同信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:export')")
-    @Log(title = "项目合同信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectContract projectContract)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectContract.setCompanyId(currentCompanyId);
-        List<ProjectContract> list = projectContractService.selectProjectContractList(projectContract);
-        ExcelUtil<ProjectContract> util = new ExcelUtil<ProjectContract>(ProjectContract.class);
-        return util.exportExcel(list, "项目合同信息数据");
-    }
-
-    /**
-     * 获取项目合同信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectContractService.selectProjectContractById(id));
-    }
-
-    /**
-     * 新增项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:add')")
-    @Log(title = "项目合同信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectContract projectContract)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectContract.setCompanyId(currentCompanyId);
-        return toAjax(projectContractService.insertProjectContract(projectContract));
-    }
-
-    /**
-     * 修改项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:edit')")
-    @Log(title = "项目合同信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectContract projectContract)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectContract.setCompanyId(currentCompanyId);
-        return toAjax(projectContractService.updateProjectContract(projectContract));
-    }
-
-    /**
-     * 删除项目合同信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:contract:remove')")
-    @Log(title = "项目合同信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectContractService.deleteProjectContractByIds(ids));
-    }
-}

+ 0 - 143
fs-company/src/main/java/com/fs/project/controller/ProjectController.java

@@ -1,143 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.Project;
-import com.fs.project.service.IProjectService;
-import com.fs.project.vo.*;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/project")
-public class ProjectController extends BaseController {
-    @Autowired
-    private IProjectService projectService;
-
-    /**
-     * 查询项目列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(Project project) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        project.setCompanyId(currentCompanyId);
-        List<Project> list = projectService.selectProjectList(project);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:export')")
-    @Log(title = "项目", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(Project project) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        project.setCompanyId(currentCompanyId);
-        List<Project> list = projectService.selectProjectList(project);
-        ExcelUtil<Project> util = new ExcelUtil<Project>(Project.class);
-        return util.exportExcel(list, "项目数据");
-    }
-
-    /**
-     * 获取项目详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:query')")
-    @GetMapping("/{id:\\d+}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-
-        return AjaxResult.success(projectService.selectProjectDetailById(id));
-    }
-
-    /**
-     * 新增项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:add')")
-    @Log(title = "项目", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody AddProjectReqVO addProjectReqVO) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ProjectVO projectVO = addProjectReqVO.getProjectVO();
-        projectVO.setCompanyId(currentCompanyId);
-
-        List<ProjectContractVO> projectContractVOList = addProjectReqVO.getProjectContractVOList();
-        for (ProjectContractVO projectContractVO : projectContractVOList) {
-            projectContractVO.setCompanyId(currentCompanyId);
-        }
-
-        for (ProjectTaskTypeVO projectTaskTypeVO : addProjectReqVO.getProjectTaskTypeVOList()) {
-            projectTaskTypeVO.setCompanyId(currentCompanyId);
-        }
-
-        return toAjax(projectService.add(addProjectReqVO));
-    }
-
-    /**
-     * 修改项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:edit')")
-    @Log(title = "项目", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody AddProjectReqVO addProjectReqVO) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        ProjectVO projectVO = addProjectReqVO.getProjectVO();
-        projectVO.setCompanyId(currentCompanyId);
-
-        List<ProjectContractVO> projectContractVOList = addProjectReqVO.getProjectContractVOList();
-        for (ProjectContractVO projectContractVO : projectContractVOList) {
-            projectContractVO.setCompanyId(currentCompanyId);
-        }
-
-        for (ProjectTaskTypeVO projectTaskTypeVO : addProjectReqVO.getProjectTaskTypeVOList()) {
-            projectTaskTypeVO.setCompanyId(currentCompanyId);
-        }
-        return toAjax(projectService.edit(addProjectReqVO));
-    }
-
-    /**
-     * 删除项目
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:remove')")
-    @Log(title = "项目", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectService.deleteProjectByIds(ids));
-    }
-
-
-    @PreAuthorize("@ss.hasPermi('project:project:list')")
-    @GetMapping("/options")
-    public AjaxResult options(@RequestParam(required = false) String projectName) {
-        List<ProjectOptionVO> list = projectService.selectProjectOptions(projectName);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 修改项目启用状态
-     */
-    @PreAuthorize("@ss.hasPermi('project:project:edit')")
-    @Log(title = "项目", businessType = BusinessType.UPDATE)
-    @PutMapping("/changeStatus")
-    public AjaxResult changeStatus(@RequestBody Project project) {
-        // 只需要 id 和 status
-        return toAjax(projectService.changeStatus(project.getId(), project.getStatus()));
-    }
-
-}

+ 0 - 106
fs-company/src/main/java/com/fs/project/controller/ProjectPermissionController.java

@@ -1,106 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectPermission;
-import com.fs.project.service.IProjectPermissionService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/permission")
-public class ProjectPermissionController extends BaseController
-{
-    @Autowired
-    private IProjectPermissionService projectPermissionService;
-
-    /**
-     * 查询项目权限列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectPermission projectPermission)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectPermission.setCompanyId(currentCompanyId);
-         List<ProjectPermission> list = projectPermissionService.selectProjectPermissionList(projectPermission);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目权限列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:export')")
-    @Log(title = "项目权限", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectPermission projectPermission)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectPermission.setCompanyId(currentCompanyId);
-        List<ProjectPermission> list = projectPermissionService.selectProjectPermissionList(projectPermission);
-        ExcelUtil<ProjectPermission> util = new ExcelUtil<ProjectPermission>(ProjectPermission.class);
-        return util.exportExcel(list, "项目权限数据");
-    }
-
-    /**
-     * 获取项目权限详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectPermissionService.selectProjectPermissionById(id));
-    }
-
-    /**
-     * 新增项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:add')")
-    @Log(title = "项目权限", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectPermission projectPermission)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectPermission.setCompanyId(currentCompanyId);
-        return toAjax(projectPermissionService.insertProjectPermission(projectPermission));
-    }
-
-    /**
-     * 修改项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:edit')")
-    @Log(title = "项目权限", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectPermission projectPermission)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectPermission.setCompanyId(currentCompanyId);
-        return toAjax(projectPermissionService.updateProjectPermission(projectPermission));
-    }
-
-    /**
-     * 删除项目权限
-     */
-    @PreAuthorize("@ss.hasPermi('project:permission:remove')")
-    @Log(title = "项目权限", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectPermissionService.deleteProjectPermissionByIds(ids));
-    }
-}

+ 0 - 145
fs-company/src/main/java/com/fs/project/controller/ProjectSettingsController.java

@@ -1,145 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.StringUtils;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectSettings;
-import com.fs.project.service.IProjectSettingsService;
-import com.fs.task.enums.TaskTypeEnum;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-/**
- * 项目设置Controller
- *
- * @author fs
- * @date 2026-01-12
- */
-@RestController
-@RequestMapping("/project/settings")
-public class ProjectSettingsController extends BaseController
-{
-    @Autowired
-    private IProjectSettingsService projectSettingsService;
-
-    /**
-     * 查询项目设置列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectSettings projectSettings)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectSettings.setCompanyId(currentCompanyId);
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-
-        return getDataTable(list);
-    }
-
-
-    /**
-     * 查询项目设置具体配置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:list')")
-        @GetMapping("/getSettingTaskTypeList")
-    public AjaxResult getprojectSetting(ProjectSettings projectSettings) throws Exception {
-        startPage();
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        ProjectSettings projectSettings1 = list.get(0);
-        if(Objects.isNull(projectSettings1)){
-            throw new Exception("当前部门下未配置项目设置,请先配置");
-        }
-        //逗号分割的任务类型
-        String inHisTaskTypes = projectSettings1.getInHisTaskTypes();
-        List<Integer> taskTypeIdList = Arrays.stream(inHisTaskTypes.split(","))
-                .map(String::trim)
-                .filter(s -> !s.isEmpty())
-                .map(Integer::parseInt)
-                .collect(Collectors.toList());
-        return AjaxResult.success(taskTypeIdList);
-    }
-
-
-    /**
-     * 导出项目设置列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:export')")
-    @Log(title = "项目设置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectSettings projectSettings)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectSettings.setCompanyId(currentCompanyId);
-        List<ProjectSettings> list = projectSettingsService.selectProjectSettingsList(projectSettings);
-        ExcelUtil<ProjectSettings> util = new ExcelUtil<ProjectSettings>(ProjectSettings.class);
-        return util.exportExcel(list, "项目设置数据");
-    }
-
-    /**
-     * 获取项目设置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsById(id));
-    }
-
-    /**
-     * 新增项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:add')")
-    @Log(title = "项目设置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectSettings projectSettings)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectSettings.setCompanyId(currentCompanyId);
-        return toAjax(projectSettingsService.insertProjectSettings(projectSettings));
-    }
-
-    /**
-     * 修改项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:edit')")
-    @Log(title = "项目设置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectSettings projectSettings)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectSettings.setCompanyId(currentCompanyId);
-        return toAjax(projectSettingsService.updateProjectSettings(projectSettings));
-    }
-
-    /**
-     * 删除项目设置
-     */
-    @PreAuthorize("@ss.hasPermi('project:settings:remove')")
-    @Log(title = "项目设置", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectSettingsService.deleteProjectSettingsByIds(ids));
-    }
-
-    /**
-     * 查询指定公司下的项目设置列表
-     */
-    @GetMapping("/company/{companyId}")
-    public AjaxResult listByCompanyId(@PathVariable String companyId)
-    {
-        return AjaxResult.success(projectSettingsService.selectProjectSettingsByCompanyId(companyId));
-    }
-}

+ 0 - 116
fs-company/src/main/java/com/fs/project/controller/ProjectStandardController.java

@@ -1,116 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.BeanCopyUtils;
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.exception.ServiceException;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectStandard;
-import com.fs.project.vo.ProjectStandardDTO;
-import com.fs.project.service.IProjectStandardService;
-import com.fs.project.vo.ProjectStandardVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-@RestController
-@RequestMapping("/project/standard")
-public class ProjectStandardController extends BaseController {
-
-    @Autowired
-    private IProjectStandardService projectStandardService;
-
-    /**
-     * 查询列表 - 返回 VO(自动转换 levelConfigList)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectStandard projectStandard) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectStandard.setCompanyId(currentCompanyId);
-        List<ProjectStandardVO> voList = projectStandardService.listVo(projectStandard);
-        return getDataTable(voList);
-    }
-
-    /**
-     * 导出(暂保持原逻辑,导出字符串 JSON)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:export')")
-    @Log(title = "项目标准配置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectStandard projectStandard) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectStandard.setCompanyId(currentCompanyId);
-        List<ProjectStandard> list = projectStandardService.selectProjectStandardList(projectStandard);
-        ExcelUtil<ProjectStandard> util = new ExcelUtil<>(ProjectStandard.class);
-        return util.exportExcel(list, "项目标准配置数据");
-    }
-
-    /**
-     * 获取详情 - 返回 VO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        ProjectStandardVO vo = projectStandardService.getDetailVo(id);
-        return AjaxResult.success(vo);
-    }
-
-    /**
-     * 新增 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:add')")
-    @Log(title = "项目标准配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectStandardDTO dto) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        dto.setCompanyId(currentCompanyId);
-        projectStandardService.checkParseTaskTypes(dto);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 修改 - 接收 DTO
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:edit')")
-    @Log(title = "项目标准配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectStandardDTO dto) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        dto.setCompanyId(currentCompanyId);
-        projectStandardService.checkEditParseTaskTypes(dto);
-        projectStandardService.saveOrUpdate(dto);
-        return AjaxResult.success();
-    }
-
-    /**
-     * 删除(逻辑删除)
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:remove')")
-    @Log(title = "项目标准配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(projectStandardService.deleteProjectStandardByIds(ids));
-    }
-
-
-    /**
-     * 获取项目允许的最大积分额度
-     * @param projectId 项目ID(必填)
-     * @return { "maxIntegral": 500.00 },若未配置则返回 null
-     */
-    @PreAuthorize("@ss.hasPermi('project:standard:query')")
-    @GetMapping("/checkIntegralLimit")
-    public AjaxResult checkIntegralLimit(@RequestParam Long projectId,@RequestParam Long doctorId,@RequestParam Integer pointNum,Long taskType) {
-        return AjaxResult.success(projectStandardService.getCompanyIntegralLimit(projectId,doctorId,pointNum,taskType));
-
-    }
-}

+ 0 - 118
fs-company/src/main/java/com/fs/project/controller/ProjectTaskTypeController.java

@@ -1,118 +0,0 @@
-package com.fs.project.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.project.domain.ProjectTaskType;
-import com.fs.project.service.IProjectTaskTypeService;
-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 2025-12-30
- */
-@RestController
-@RequestMapping("/project/type")
-public class ProjectTaskTypeController extends BaseController
-{
-    @Autowired
-    private IProjectTaskTypeService projectTaskTypeService;
-
-    /**
-     * 查询项目任务类型列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ProjectTaskType projectTaskType)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectTaskType.setCompanyId(currentCompanyId);
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出项目任务类型列表
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:export')")
-    @Log(title = "项目任务类型", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ProjectTaskType projectTaskType)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectTaskType.setCompanyId(currentCompanyId);
-        List<ProjectTaskType> list = projectTaskTypeService.selectProjectTaskTypeList(projectTaskType);
-        ExcelUtil<ProjectTaskType> util = new ExcelUtil<ProjectTaskType>(ProjectTaskType.class);
-        return util.exportExcel(list, "项目任务类型数据");
-    }
-
-    /**
-     * 获取项目任务类型详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(projectTaskTypeService.selectProjectTaskTypeById(id));
-    }
-
-    /**
-     * 新增项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:add')")
-    @Log(title = "项目任务类型", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ProjectTaskType projectTaskType)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectTaskType.setCompanyId(currentCompanyId);
-        return toAjax(projectTaskTypeService.insertProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 修改项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:edit')")
-    @Log(title = "项目任务类型", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ProjectTaskType projectTaskType)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        projectTaskType.setCompanyId(currentCompanyId);
-        return toAjax(projectTaskTypeService.updateProjectTaskType(projectTaskType));
-    }
-
-    /**
-     * 删除项目任务类型
-     */
-    @PreAuthorize("@ss.hasPermi('project:type:remove')")
-    @Log(title = "项目任务类型", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(projectTaskTypeService.deleteProjectTaskTypeByIds(ids));
-    }
-
-
-
-
-    @GetMapping("/selectProjectOptionsByDept")
-    public AjaxResult optionsByDept(@RequestParam Long deptId,
-                                    @RequestParam(required = false) String projectName) {
-        return AjaxResult.success(projectTaskTypeService.selectProjectOptionsByDept(deptId, projectName));
-    }
-
-
-
-}

+ 0 - 135
fs-company/src/main/java/com/fs/provider/controller/ServiceGenConfigController.java

@@ -1,135 +0,0 @@
-package com.fs.provider.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceGenConfig;
-import com.fs.provider.service.IServiceGenConfigService;
-import com.fs.provider.vo.ServiceGenConfigAuditReqVO;
-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 2026-01-27
- */
-@RestController
-@RequestMapping("/service/config")
-public class ServiceGenConfigController extends BaseController {
-    @Autowired
-    private IServiceGenConfigService serviceGenConfigService;
-
-    /**
-     * 查询任务生成配置列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceGenConfig serviceGenConfig) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceGenConfig.setCompanyId(currentCompanyId);
-        List<ServiceGenConfig> list = serviceGenConfigService.selectServiceGenConfigList(serviceGenConfig);
-        return getDataTable(list);
-    }
-
-
-    /**
-     * 导出任务生成配置列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:export')")
-    @Log(title = "任务生成配置", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceGenConfig serviceGenConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceGenConfig.setCompanyId(currentCompanyId);
-        List<ServiceGenConfig> list = serviceGenConfigService.selectServiceGenConfigList(serviceGenConfig);
-        ExcelUtil<ServiceGenConfig> util = new ExcelUtil<ServiceGenConfig>(ServiceGenConfig.class);
-        return util.exportExcel(list, "任务生成配置数据");
-    }
-
-    /**
-     * 获取任务生成配置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(serviceGenConfigService.selectServiceGenConfigById(id));
-    }
-
-
-    /**
-     * 获取任务生成配置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:query')")
-    @GetMapping("/audit/{id}")
-    public AjaxResult getAuditInfoById(@PathVariable Long id) {
-        return AjaxResult.success(serviceGenConfigService.getAuditInfoById(id));
-    }
-
-    /**
-     * 新增任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:add')")
-    @Log(title = "任务生成配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceGenConfig serviceGenConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceGenConfig.setCompanyId(currentCompanyId);
-        return toAjax(serviceGenConfigService.companyInsertServiceGenConfig(serviceGenConfig));
-    }
-
-    /**
-     * 修改任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:edit')")
-    @Log(title = "任务生成配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceGenConfig serviceGenConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceGenConfig.setCompanyId(currentCompanyId);
-        return toAjax(serviceGenConfigService.updateServiceGenConfig(serviceGenConfig));
-    }
-
-    /**
-     * 删除任务生成配置
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:remove')")
-    @Log(title = "任务生成配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(serviceGenConfigService.deleteServiceGenConfigByIds(ids));
-    }
-
-
-    /**
-     * 审核任务生成配置
-     * <p>
-     * 前端请求示例:
-     * POST /service/config/audit
-     * {
-     * "id": 1,
-     * "auditStatus": 1,        // 1-通过,2-不通过
-     * "auditRemark": "xxx",    // 审核描述
-     * "auditInstanceId": 123   // 可选
-     * }
-     */
-    @PreAuthorize("@ss.hasPermi('service:config:edit')")
-    @Log(title = "任务生成配置审核", businessType = BusinessType.UPDATE)
-    @PostMapping("/audit")
-    public AjaxResult audit(@RequestBody ServiceGenConfigAuditReqVO serviceGenConfigAuditReqVO) {
-        // 这里只做壳子:保证能进来即可
-        // 你可以在 Service 里校验 needAudit / auditStatus 状态机 / 幂等 等逻辑
-        return toAjax(serviceGenConfigService.companyAudit(serviceGenConfigAuditReqVO));
-    }
-
-
-}

+ 0 - 135
fs-company/src/main/java/com/fs/provider/controller/ServiceOrderController.java

@@ -1,135 +0,0 @@
-package com.fs.provider.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceOrder;
-import com.fs.provider.service.IServiceOrderService;
-import com.fs.provider.vo.GenerateServiceOrderReqVO;
-import com.fs.provider.vo.ServiceOrderAuditReqVO;
-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 2026-01-26
- */
-@RestController
-@RequestMapping("/service/order")
-public class ServiceOrderController extends BaseController
-{
-    @Autowired
-    private IServiceOrderService serviceOrderService;
-
-    /**
-     * 查询服务单信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceOrder serviceOrder)
-    {
-
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceOrder.setCompanyId(currentCompanyId);
-        List<ServiceOrder> list = serviceOrderService.selectServiceOrderList(serviceOrder);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出服务单信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:export')")
-    @Log(title = "服务单信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceOrder serviceOrder)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceOrder.setCompanyId(currentCompanyId);
-        List<ServiceOrder> list = serviceOrderService.selectServiceOrderList(serviceOrder);
-        ExcelUtil<ServiceOrder> util = new ExcelUtil<ServiceOrder>(ServiceOrder.class);
-        return util.exportExcel(list, "服务单信息数据");
-    }
-
-    /**
-     * 获取服务单信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(serviceOrderService.selectServiceOrderById(id));
-    }
-
-    /**
-     * 新增服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:add')")
-    @Log(title = "服务单信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceOrder serviceOrder)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceOrder.setCompanyId(currentCompanyId);
-        return toAjax(serviceOrderService.insertServiceOrder(serviceOrder));
-    }
-
-    /**
-     * 修改服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:edit')")
-    @Log(title = "服务单信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceOrder serviceOrder)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        serviceOrder.setCompanyId(currentCompanyId);
-        return toAjax(serviceOrderService.updateServiceOrder(serviceOrder));
-    }
-
-    /**
-     * 删除服务单信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:remove')")
-    @Log(title = "服务单信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(serviceOrderService.deleteServiceOrderByIds(ids));
-    }
-
-
-    /**
-     * 根据任务ID生成服务单
-     */
-    @PostMapping("/generateByTask")
-    @PreAuthorize("@ss.hasPermi('service:order:add')")
-    public AjaxResult generateServiceOrderByTask(@RequestBody GenerateServiceOrderReqVO reqVO) {
-        if (reqVO == null || reqVO.getTaskId() == null) {
-            return AjaxResult.error("任务ID不能为空");
-        }
-        return AjaxResult.success(serviceOrderService.generateByTaskId(reqVO.getTaskId()));
-    }
-
-
-
-    /**
-     * 获取服务单信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:order:query')")
-    @GetMapping(value = "getAuditInfo")
-    public AjaxResult getAuditInfo(ServiceOrderAuditReqVO serviceOrderAuditReqVO){
-        return AjaxResult.success(serviceOrderService.getAuditInfo(serviceOrderAuditReqVO));
-    }
-
-
-}

+ 0 - 97
fs-company/src/main/java/com/fs/provider/controller/ServiceOrderTaskRelController.java

@@ -1,97 +0,0 @@
-package com.fs.provider.controller;
-
-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.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.provider.domain.ServiceOrderTaskRel;
-import com.fs.provider.service.IServiceOrderTaskRelService;
-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 2026-01-26
- */
-@RestController
-@RequestMapping("/service/rel")
-public class ServiceOrderTaskRelController extends BaseController
-{
-    @Autowired
-    private IServiceOrderTaskRelService serviceOrderTaskRelService;
-
-    /**
-     * 查询服务单-任务关联列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        startPage();
-        List<ServiceOrderTaskRel> list = serviceOrderTaskRelService.selectServiceOrderTaskRelList(serviceOrderTaskRel);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出服务单-任务关联列表
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:export')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        List<ServiceOrderTaskRel> list = serviceOrderTaskRelService.selectServiceOrderTaskRelList(serviceOrderTaskRel);
-        ExcelUtil<ServiceOrderTaskRel> util = new ExcelUtil<ServiceOrderTaskRel>(ServiceOrderTaskRel.class);
-        return util.exportExcel(list, "服务单-任务关联数据");
-    }
-
-    /**
-     * 获取服务单-任务关联详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(serviceOrderTaskRelService.selectServiceOrderTaskRelById(id));
-    }
-
-    /**
-     * 新增服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:add')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        return toAjax(serviceOrderTaskRelService.insertServiceOrderTaskRel(serviceOrderTaskRel));
-    }
-
-    /**
-     * 修改服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:edit')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody ServiceOrderTaskRel serviceOrderTaskRel)
-    {
-        return toAjax(serviceOrderTaskRelService.updateServiceOrderTaskRel(serviceOrderTaskRel));
-    }
-
-    /**
-     * 删除服务单-任务关联
-     */
-    @PreAuthorize("@ss.hasPermi('service:rel:remove')")
-    @Log(title = "服务单-任务关联", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(serviceOrderTaskRelService.deleteServiceOrderTaskRelByIds(ids));
-    }
-}

+ 0 - 122
fs-company/src/main/java/com/fs/survey/DrugResearchController.java

@@ -1,122 +0,0 @@
-package com.fs.survey;
-
-import java.util.Date;
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.utils.DateUtils;
-import com.fs.common.utils.SecurityUtils;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.DrugResearch;
-import com.fs.survey.service.IDrugResearchService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 用药调研Controller
- * 
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/drugResearch")
-public class DrugResearchController extends BaseController
-{
-    @Autowired
-    private IDrugResearchService drugResearchService;
-
-    /**
-     * 查询用药调研列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(DrugResearch drugResearch)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        drugResearch.setCompanyId(currentCompanyId);
-        startPage();
-        List<DrugResearch> list = drugResearchService.selectDrugResearchList(drugResearch);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出用药调研列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:export')")
-    @Log(title = "用药调研", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(DrugResearch drugResearch)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        drugResearch.setCompanyId(currentCompanyId);
-        List<DrugResearch> list = drugResearchService.selectDrugResearchList(drugResearch);
-        ExcelUtil<DrugResearch> util = new ExcelUtil<DrugResearch>(DrugResearch.class);
-        return util.exportExcel(list, "用药调研数据");
-    }
-
-    /**
-     * 获取用药调研详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(drugResearchService.selectDrugResearchById(id));
-    }
-
-    /**
-     * 新增用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:add')")
-    @Log(title = "用药调研", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DrugResearch drugResearch)
-    {
-        Long userId = LoginContextManager.getCurrentCompanyUserId();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        drugResearch.setCreateBy(userId);
-        drugResearch.setUpdateBy(userId);
-        drugResearch.setCreateTime(new Date());
-        drugResearch.setUpdateTime(new Date());
-        drugResearch.setDeleted(0l);
-        drugResearch.setCompanyId(currentCompanyId);
-        return toAjax(drugResearchService.companyInsertDrugResearch(drugResearch));
-    }
-
-    /**
-     * 修改用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:edit')")
-    @Log(title = "用药调研", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DrugResearch drugResearch)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        drugResearch.setCompanyId(currentCompanyId);
-        return toAjax(drugResearchService.updateDrugResearch(drugResearch));
-    }
-
-    /**
-     * 删除用药调研
-     */
-    @PreAuthorize("@ss.hasPermi('survey:drugResearch:remove')")
-    @Log(title = "用药调研", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(drugResearchService.deleteDrugResearchByIds(ids));
-    }
-}

+ 0 - 100
fs-company/src/main/java/com/fs/survey/SurveyDataController.java

@@ -1,100 +0,0 @@
-package com.fs.survey;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.service.ISurveyDataService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 问卷数据Controller
- *
- */
-@RestController
-@RequestMapping("/survey/data")
-public class SurveyDataController extends BaseController {
-
-    @Autowired
-    private ISurveyDataService surveyDataService;
-
-    /**
-     * 查询问卷数据列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(@RequestParam Map<String, Object> params) {
-        startPage();
-
-        List<Map<String, Object>> list = surveyDataService.selectSurveyDataList(params);
-        return getDataTable(list);
-    }
-
-    /**
-     * 获取问卷数据详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:query')")
-    @GetMapping(value = "/{versionId}/{id}")
-    public AjaxResult getInfo(@PathVariable("versionId") Long versionId, @PathVariable("id") Long id) {
-        return AjaxResult.success(surveyDataService.selectSurveyDataById(versionId, id));
-    }
-
-    /**
-     * 提交问卷数据
-     */
-    @Log(title = "提交问卷", businessType = BusinessType.INSERT)
-    @PostMapping("/submit")
-    public AjaxResult submit(@RequestBody Map<String, Object> data) {
-        return toAjax(surveyDataService.submitSurveyData(data));
-    }
-
-    /**
-     * 修改问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:edit')")
-    @Log(title = "问卷数据", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody Map<String, Object> data) {
-        return toAjax(surveyDataService.updateSurveyData(data));
-    }
-
-    /**
-     * 删除问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:remove')")
-    @Log(title = "问卷数据", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{versionId}/{ids}")
-    public AjaxResult remove(@PathVariable Long versionId, @PathVariable Long[] ids) {
-        return toAjax(surveyDataService.deleteSurveyDataByIds(versionId, ids));
-    }
-
-    /**
-     * 导出问卷数据
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:export')")
-    @Log(title = "问卷数据", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, @RequestParam Map<String, Object> params) throws IOException {
-//        List<Map<String, Object>> list = surveyDataService.selectSurveyDataList(params);
-//        ExcelUtil<Map> util = new ExcelUtil<>(Map.class);
-//        util.exportExcel(response, list, "问卷数据");
-    }
-
-    /**
-     * 数据统计
-     */
-    @PreAuthorize("@ss.hasPermi('survey:data:statistics')")
-    @GetMapping("/statistics/{versionId}")
-    public AjaxResult statistics(@PathVariable Long versionId) {
-        return AjaxResult.success(surveyDataService.getStatistics(versionId));
-    }
-}

+ 0 - 99
fs-company/src/main/java/com/fs/survey/SurveyFieldConfigController.java

@@ -1,99 +0,0 @@
-package com.fs.survey;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyFieldConfig;
-import com.fs.survey.service.ISurveyFieldConfigService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 字段配置Controller
- *
- * 管理问卷字段的增删改查操作
- *
- */
-@RestController
-@RequestMapping("/survey/fieldConfig")
-public class SurveyFieldConfigController extends BaseController {
-
-    @Autowired
-    private ISurveyFieldConfigService fieldConfigService;
-
-    /**
-     * 查询字段配置列表
-     */
-    @GetMapping("/list")
-    public AjaxResult list(SurveyFieldConfig fieldConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        fieldConfig.setCompanyId(currentCompanyId);
-        List<SurveyFieldConfig> list = fieldConfigService.selectSurveyFieldConfigList(fieldConfig);
-        return AjaxResult.success(list);
-    }
-
-    /**
-     * 根据ID获取字段配置详细信息
-     */
-    @GetMapping("/{id}")
-    public AjaxResult getInfo(@PathVariable Long id) {
-        return AjaxResult.success(fieldConfigService.selectSurveyFieldConfigById(id));
-    }
-
-    /**
-     * 根据问卷版本ID查询字段配置信息列表
-     */
-    @GetMapping("/byVersion/{versionId}")
-    public AjaxResult getByVersionId(@PathVariable Long versionId) {
-        List<SurveyFieldConfig> list = fieldConfigService.selectFieldConfigByVersionId(versionId);
-        return AjaxResult.success(list);
-    }
-
-    /**
-     * 新增字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyFieldConfig fieldConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        fieldConfig.setCompanyId(currentCompanyId);
-        int row = fieldConfigService.insertSurveyFieldConfig(fieldConfig);
-        return toAjax(row);
-    }
-
-    /**
-     * 修改字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyFieldConfig fieldConfig) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        fieldConfig.setCompanyId(currentCompanyId);
-        int row = fieldConfigService.updateSurveyFieldConfig(fieldConfig);
-        return toAjax(row);
-    }
-
-    /**
-     * 删除字段配置,支持批量ID
-     */
-    @Log(title = "字段配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        int row = fieldConfigService.deleteSurveyFieldConfigByIds(ids);
-        return toAjax(row);
-    }
-
-    /**
-     * 根据版本ID批量删除字段配置
-     */
-    @Log(title = "字段配置", businessType = BusinessType.DELETE)
-    @DeleteMapping("/byVersion/{versionId}")
-    public AjaxResult removeByVersionId(@PathVariable Long versionId) {
-        int row = fieldConfigService.deleteSurveyFieldConfigByVersionId(versionId);
-        return toAjax(row);
-    }
-}

+ 0 - 133
fs-company/src/main/java/com/fs/survey/SurveyQuestionnaireController.java

@@ -1,133 +0,0 @@
-package com.fs.survey;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.SecurityUtils;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.survey.domain.SurveyQuestionnaire;
-import com.fs.survey.service.ISurveyQuestionnaireService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.List;
-
-/**
- * 问卷Controller
- *
- */
-@RestController
-@RequestMapping("/survey/questionnaire")
-public class SurveyQuestionnaireController extends BaseController {
-    @Autowired
-    private ISurveyQuestionnaireService surveyQuestionnaireService;
-
-    /**
-     * 查询问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyQuestionnaire surveyQuestionnaire) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:export')")
-    @Log(title = "问卷", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, SurveyQuestionnaire surveyQuestionnaire) throws IOException {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        List<SurveyQuestionnaire> list = surveyQuestionnaireService.selectSurveyQuestionnaireList(surveyQuestionnaire);
-        ExcelUtil<SurveyQuestionnaire> util = new ExcelUtil<SurveyQuestionnaire>(SurveyQuestionnaire.class);
-        util.exportExcel(response, list, "问卷数据");
-    }
-
-    /**
-     * 获取问卷详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(surveyQuestionnaireService.selectSurveyQuestionnaireById(id));
-    }
-
-    /**
-     * 新增问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:add')")
-    @Log(title = "问卷", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        return toAjax(surveyQuestionnaireService.insertSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 修改问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:edit')")
-    @Log(title = "问卷", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyQuestionnaire surveyQuestionnaire) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyQuestionnaire.setCompanyId(currentCompanyId);
-        return toAjax(surveyQuestionnaireService.updateSurveyQuestionnaire(surveyQuestionnaire));
-    }
-
-    /**
-     * 删除问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:remove')")
-    @Log(title = "问卷", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(surveyQuestionnaireService.deleteSurveyQuestionnaireByIds(ids));
-    }
-
-    /**
-     * 发布问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:publish')")
-    @Log(title = "发布问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/publish/{id}/{versionId}")
-    public AjaxResult publish(@PathVariable Long id, @PathVariable Long versionId) {
-        return toAjax(surveyQuestionnaireService.publishQuestionnaire(id, versionId));
-    }
-
-    /**
-     * 停用问卷
-     */
-    @PreAuthorize("@ss.hasPermi('survey:questionnaire:disable')")
-    @Log(title = "停用问卷", businessType = BusinessType.UPDATE)
-    @PutMapping("/disable/{id}")
-    public AjaxResult disable(@PathVariable Long id) {
-        return toAjax(surveyQuestionnaireService.disableQuestionnaire(id));
-    }
-
-    /**
-     * 获取公司定级申请问卷(不需要参数)
-     */
-    @GetMapping("/getCompanyDoctorLevelApplyQuestionnaire")
-    public AjaxResult getCompanyDoctorLevelApplyQuestionnaire() {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        return AjaxResult.success(surveyQuestionnaireService.getCompanyDoctorLevelApplyQuestionnaire(currentCompanyId));
-
-    }
-
-
-
-}

+ 0 - 130
fs-company/src/main/java/com/fs/survey/SurveyTaskController.java

@@ -1,130 +0,0 @@
-package com.fs.survey;
-
-import java.util.Date;
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.domain.model.LoginUser;
-import com.fs.common.utils.SecurityUtils;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyTask;
-import com.fs.survey.service.ISurveyTaskService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 问卷任务Controller
- *
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/task")
-public class SurveyTaskController extends BaseController
-{
-    @Autowired
-    private ISurveyTaskService surveyTaskService;
-
-    /**
-     * 查询问卷任务列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyTask surveyTask)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTask.setCompanyId(currentCompanyId);
-        startPage();
-        List<SurveyTask> list = surveyTaskService.selectSurveyTaskList(surveyTask);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷任务列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:export')")
-    @Log(title = "问卷任务", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(SurveyTask surveyTask)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTask.setCompanyId(currentCompanyId);
-        surveyTask.setCompanyId(LoginContextManager.getCurrentCompanyId());
-        List<SurveyTask> list = surveyTaskService.selectSurveyTaskList(surveyTask);
-        ExcelUtil<SurveyTask> util = new ExcelUtil<SurveyTask>(SurveyTask.class);
-        return util.exportExcel(list, "问卷任务数据");
-    }
-
-    /**
-     * 获取问卷任务详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-
-
-        return AjaxResult.success(surveyTaskService.selectSurveyTaskById(id));
-    }
-
-    /**
-     * 新增问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:add')")
-    @Log(title = "问卷任务", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyTask surveyTask)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTask.setCompanyId(currentCompanyId);
-        //删除标记
-        surveyTask.setDeleted(0l);
-        //时间标记
-        surveyTask.setCreateTime(new Date());
-        surveyTask.setUpdateTime(new Date());
-        Long currentCompanyUserId = LoginContextManager.getCurrentCompanyUserId();
-        surveyTask.setCreateBy(currentCompanyUserId+"");
-        surveyTask.setUpdateBy(currentCompanyUserId+"");
-        surveyTask.setCompanyId(LoginContextManager.getCurrentCompanyId());
-        return toAjax(surveyTaskService.insertSurveyTask(surveyTask));
-    }
-
-    /**
-     * 修改问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:edit')")
-    @Log(title = "问卷任务", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyTask surveyTask)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTask.setCompanyId(currentCompanyId);
-        Long currentCompanyUserId = LoginContextManager.getCurrentCompanyUserId();
-        surveyTask.setCompanyId(currentCompanyUserId);
-        return toAjax(surveyTaskService.updateSurveyTask(surveyTask));
-    }
-
-    /**
-     * 删除问卷任务
-     */
-    @PreAuthorize("@ss.hasPermi('survey:task:remove')")
-    @Log(title = "问卷任务", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(surveyTaskService.deleteSurveyTaskByIds(ids));
-    }
-}

+ 0 - 113
fs-company/src/main/java/com/fs/survey/SurveyTaskPeriodController.java

@@ -1,113 +0,0 @@
-package com.fs.survey;
-
-import java.util.List;
-
-import com.fs.common.config.LoginContextManager;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.fs.common.annotation.Log;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyTaskPeriod;
-import com.fs.survey.service.ISurveyTaskPeriodService;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.common.core.page.TableDataInfo;
-
-/**
- * 问卷任务期次Controller
- * 
- * @author fs
- * @date 2026-02-06
- */
-@RestController
-@RequestMapping("/survey/period")
-public class SurveyTaskPeriodController extends BaseController
-{
-    @Autowired
-    private ISurveyTaskPeriodService surveyTaskPeriodService;
-
-    /**
-     * 查询问卷任务期次列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyTaskPeriod surveyTaskPeriod)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTaskPeriod.setCompanyId(currentCompanyId);
-        startPage();
-        List<SurveyTaskPeriod> list = surveyTaskPeriodService.selectSurveyTaskPeriodList(surveyTaskPeriod);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出问卷任务期次列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:export')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(SurveyTaskPeriod surveyTaskPeriod)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTaskPeriod.setCompanyId(currentCompanyId);
-        List<SurveyTaskPeriod> list = surveyTaskPeriodService.selectSurveyTaskPeriodList(surveyTaskPeriod);
-        ExcelUtil<SurveyTaskPeriod> util = new ExcelUtil<SurveyTaskPeriod>(SurveyTaskPeriod.class);
-        return util.exportExcel(list, "问卷任务期次数据");
-    }
-
-    /**
-     * 获取问卷任务期次详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(surveyTaskPeriodService.selectSurveyTaskPeriodById(id));
-    }
-
-    /**
-     * 新增问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:add')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyTaskPeriod surveyTaskPeriod)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTaskPeriod.setCompanyId(currentCompanyId);
-        return toAjax(surveyTaskPeriodService.insertSurveyTaskPeriod(surveyTaskPeriod));
-    }
-
-    /**
-     * 修改问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:edit')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyTaskPeriod surveyTaskPeriod)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        surveyTaskPeriod.setCompanyId(currentCompanyId);
-        return toAjax(surveyTaskPeriodService.updateSurveyTaskPeriod(surveyTaskPeriod));
-    }
-
-    /**
-     * 删除问卷任务期次
-     */
-    @PreAuthorize("@ss.hasPermi('survey:period:remove')")
-    @Log(title = "问卷任务期次", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(surveyTaskPeriodService.deleteSurveyTaskPeriodByIds(ids));
-    }
-}

+ 0 - 103
fs-company/src/main/java/com/fs/survey/SurveyVersionController.java

@@ -1,103 +0,0 @@
-package com.fs.survey;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.survey.domain.SurveyQuestionnaireVersion;
-import com.fs.survey.service.ISurveyQuestionnaireVersionService;
-import org.apache.ibatis.annotations.Param;
-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
- *
- */
-@RestController
-@RequestMapping("/survey/version")
-public class SurveyVersionController extends BaseController {
-    @Autowired
-    private ISurveyQuestionnaireVersionService versionService;
-
-    /**
-     * 查询问卷版本列表
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SurveyQuestionnaireVersion version) {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        version.setCompanyId(currentCompanyId);
-        List<SurveyQuestionnaireVersion> list = versionService.selectSurveyQuestionnaireVersionList(version);
-        return getDataTable(list);
-    }
-
-    /**
-     * 获取问卷版本详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(versionService.selectSurveyQuestionnaireVersionById(id));
-    }
-
-    /**
-     * 获取当前最新问卷版本
-     * @param id 问卷ID
-     * @return 最新问卷版本
-     */
-    @GetMapping(value = "/getLatestInfo")
-    public AjaxResult getLatestInfo(@Param("id") Long id) {
-        return AjaxResult.success(versionService.getLatestInfo(id));
-    }
-
-    /**
-     * 新增/保存问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:add')")
-    @Log(title = "问卷版本", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SurveyQuestionnaireVersion version) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        version.setCompanyId(currentCompanyId);
-        return AjaxResult.success(versionService.saveVersion(version));
-    }
-
-    /**
-     * 修改问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:edit')")
-    @Log(title = "问卷版本", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SurveyQuestionnaireVersion version) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        version.setCompanyId(currentCompanyId);
-        return toAjax(versionService.updateSurveyQuestionnaireVersion(version));
-    }
-
-    /**
-     * 发布版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:publish')")
-    @Log(title = "发布版本", businessType = BusinessType.UPDATE)
-    @PutMapping("/publish/{id}")
-    public AjaxResult publish(@PathVariable Long id) {
-        return toAjax(versionService.companyPublishVersion(id));
-    }
-
-    /**
-     * 删除问卷版本
-     */
-    @PreAuthorize("@ss.hasPermi('survey:version:remove')")
-    @Log(title = "问卷版本", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(versionService.deleteSurveyQuestionnaireVersionByIds(ids));
-    }
-}

+ 0 - 105
fs-company/src/main/java/com/fs/task/controller/TaskDeliveryInfoController.java

@@ -1,105 +0,0 @@
-package com.fs.task.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.task.domain.TaskDeliveryInfo;
-import com.fs.task.service.ITaskDeliveryInfoService;
-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 2026-01-04
- */
-@RestController
-@RequestMapping("/task/delivery")
-public class TaskDeliveryInfoController extends BaseController {
-    @Autowired
-    private ITaskDeliveryInfoService taskDeliveryInfoService;
-
-    /**
-     * 查询交付物信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskDeliveryInfo taskDeliveryInfo) {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskDeliveryInfo.setCompanyId(currentCompanyId);
-        startPage();
-        List<TaskDeliveryInfo> list = taskDeliveryInfoService.selectTaskDeliveryInfoList(taskDeliveryInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出交付物信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:export')")
-    @Log(title = "交付物信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskDeliveryInfo taskDeliveryInfo) {
-        List<TaskDeliveryInfo> list = taskDeliveryInfoService.selectTaskDeliveryInfoList(taskDeliveryInfo);
-        ExcelUtil<TaskDeliveryInfo> util = new ExcelUtil<TaskDeliveryInfo>(TaskDeliveryInfo.class);
-        return util.exportExcel(list, "交付物信息数据");
-    }
-
-    /**
-     * 获取交付物信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(taskDeliveryInfoService.selectTaskDeliveryInfoById(id));
-    }
-
-    /**
-     * 新增交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:add')")
-    @Log(title = "交付物信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskDeliveryInfo taskDeliveryInfo) {
-        return toAjax(taskDeliveryInfoService.insertTaskDeliveryInfo(taskDeliveryInfo));
-    }
-
-    /**
-     * 修改交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:edit')")
-    @Log(title = "交付物信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskDeliveryInfo taskDeliveryInfo) {
-        return toAjax(taskDeliveryInfoService.updateTaskDeliveryInfo(taskDeliveryInfo));
-    }
-
-    /**
-     * 删除交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:remove')")
-    @Log(title = "交付物信息", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(taskDeliveryInfoService.deleteTaskDeliveryInfoByIds(ids));
-    }
-
-
-
-    /**
-     * 通过任务类别与交付物编号查询出交付物信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:delivery:query')")
-    @GetMapping("/getDeliveryInfoByTaskTypeAndDeliveryNo")
-    public AjaxResult getDeliveryInfoByTaskTypeAndDeliveryNo(TaskDeliveryInfo taskDeliveryInfo) {
-        return AjaxResult.success(taskDeliveryInfoService.getDeliveryInfoByTaskTypeAndDeliveryNo(taskDeliveryInfo)
-        );
-    }
-}

+ 0 - 156
fs-company/src/main/java/com/fs/task/controller/TaskInfoController.java

@@ -1,156 +0,0 @@
-package com.fs.task.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.task.domain.TaskInfo;
-import com.fs.task.service.ITaskInfoService;
-import com.fs.task.vo.TaskCreateAuditReqVO;
-import com.fs.task.vo.TaskFinishAuditReqVO;
-import com.fs.task.vo.TaskInfoCreateVO;
-import com.fs.task.vo.TaskSpotCheckUpdateReqVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
-
-import javax.validation.Valid;
-import java.util.List;
-
-/**
- * 任务信息Controller
- *
- * @author fs
- * @date 2026-01-04
- */
-@RestController
-@RequestMapping("/task/info")
-public class TaskInfoController extends BaseController
-{
-    @Autowired
-    private ITaskInfoService taskInfoService;
-
-
-
-    /**
-     * 查询任务信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskInfo taskInfo)
-    {
-        startPage();
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskInfo.setCompanyId(currentCompanyId);
-        taskInfo.setCompanyUserId(LoginContextManager.getCurrentCompanyUserId());
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出任务信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:export')")
-    @Log(title = "任务信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskInfo taskInfo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskInfo.setCompanyId(currentCompanyId);
-        List<TaskInfo> list = taskInfoService.selectTaskInfoList(taskInfo);
-        ExcelUtil<TaskInfo> util = new ExcelUtil<TaskInfo>(TaskInfo.class);
-        return util.exportExcel(list, "任务信息数据");
-    }
-
-    /**
-     * 获取任务信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(taskInfoService.selectTaskInfoById(id));
-    }
-
-    /**
-     * 新增任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:add')")
-    @Log(title = "任务信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskInfoCreateVO vo)
-    {
-        return toAjax(taskInfoService.insertTaskInfo(vo));
-    }
-
-    /**
-     * 修改任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:edit')")
-    @Log(title = "任务信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskInfo taskInfo)
-    {
-        return toAjax(taskInfoService.updateTaskInfo(taskInfo));
-    }
-
-    /**
-     * 删除任务信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:info:remove')")
-    @Log(title = "任务信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(taskInfoService.deleteTaskInfoByIds(ids));
-    }
-
-
-    @Log(title = "创建审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("doCreateAudit")
-    @PreAuthorize("@ss.hasPermi('task:info:edit')")
-    public void doCreateAudit(@RequestBody TaskCreateAuditReqVO taskCreateAuditReqVO){
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskCreateAuditReqVO.setCompanyId(currentCompanyId);
-        taskInfoService.doCreateAudit(taskCreateAuditReqVO);
-    }
-
-
-    @Log(title = "完成审核处理", businessType = BusinessType.UPDATE)
-    @PostMapping("dofinishAudit")
-    public void dofinishAudit(@RequestBody TaskFinishAuditReqVO taskFinishAuditReqVO){
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskFinishAuditReqVO.setCompanyId(currentCompanyId);
-        taskInfoService.dofinishAudit(taskFinishAuditReqVO);
-    }
-
-    @Log(title = "获取创建审核任务信息", businessType = BusinessType.UPDATE)
-    @GetMapping("getTaskCreateAuditInfo")
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    public AjaxResult getTaskCreateAuditInfo(@RequestParam Long taskId){
-       return AjaxResult.success( taskInfoService.getTaskCreateAuditInfo(taskId));
-    }
-
-
-    @Log(title = "获取完成审核任务信息", businessType = BusinessType.UPDATE)
-    @GetMapping("getTaskFinishAuditInfo")
-    @PreAuthorize("@ss.hasPermi('task:info:query')")
-    public AjaxResult getTaskFinishAuditInfo(@RequestParam Long taskId){
-        return AjaxResult.success( taskInfoService.getTaskFinishAuditInfo(taskId));
-    }
-
-
-
-    @PutMapping("/spotCheck")
-    public AjaxResult updateSpotCheck(@Valid @RequestBody TaskSpotCheckUpdateReqVO req) {
-        int rows = taskInfoService.updateSpotCheck(req);
-        return rows > 0 ? AjaxResult.success() : AjaxResult.error("更新失败");
-    }
-
-
-
-
-    }

+ 0 - 100
fs-company/src/main/java/com/fs/task/controller/TaskMaterialInfoController.java

@@ -1,100 +0,0 @@
-package com.fs.task.controller;
-
-import com.fs.common.annotation.Log;
-import com.fs.common.config.LoginContextManager;
-import com.fs.common.core.controller.BaseController;
-import com.fs.common.core.domain.AjaxResult;
-import com.fs.common.core.page.TableDataInfo;
-import com.fs.common.enums.BusinessType;
-import com.fs.common.utils.poi.ExcelUtil;
-import com.fs.task.domain.TaskMaterialInfo;
-import com.fs.task.service.ITaskMaterialInfoService;
-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 2026-01-04
- */
-@RestController
-@RequestMapping("/task/material")
-public class TaskMaterialInfoController extends BaseController
-{
-    @Autowired
-    private ITaskMaterialInfoService taskMaterialInfoService;
-
-    /**
-     * 查询材料信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(TaskMaterialInfo taskMaterialInfo)
-    {
-        Long currentCompanyId = LoginContextManager.getCurrentCompanyId();
-        taskMaterialInfo.setTaskId(currentCompanyId);
-        startPage();
-        List<TaskMaterialInfo> list = taskMaterialInfoService.selectTaskMaterialInfoList(taskMaterialInfo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出材料信息列表
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:export')")
-    @Log(title = "材料信息", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult export(TaskMaterialInfo taskMaterialInfo)
-    {
-        List<TaskMaterialInfo> list = taskMaterialInfoService.selectTaskMaterialInfoList(taskMaterialInfo);
-        ExcelUtil<TaskMaterialInfo> util = new ExcelUtil<TaskMaterialInfo>(TaskMaterialInfo.class);
-        return util.exportExcel(list, "材料信息数据");
-    }
-
-    /**
-     * 获取材料信息详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(taskMaterialInfoService.selectTaskMaterialInfoById(id));
-    }
-
-    /**
-     * 新增材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:add')")
-    @Log(title = "材料信息", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TaskMaterialInfo taskMaterialInfo)
-    {
-        return toAjax(taskMaterialInfoService.insertTaskMaterialInfo(taskMaterialInfo));
-    }
-
-    /**
-     * 修改材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:edit')")
-    @Log(title = "材料信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody TaskMaterialInfo taskMaterialInfo)
-    {
-        return toAjax(taskMaterialInfoService.updateTaskMaterialInfo(taskMaterialInfo));
-    }
-
-    /**
-     * 删除材料信息
-     */
-    @PreAuthorize("@ss.hasPermi('task:material:remove')")
-    @Log(title = "材料信息", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(taskMaterialInfoService.deleteTaskMaterialInfoByIds(ids));
-    }
-}

+ 0 - 44
fs-service/src/main/java/com/fs/audit/chain/AbstractAuditHandler.java

@@ -1,44 +0,0 @@
-package com.fs.audit.chain;
-
-/**
- * 抽象审核处理器
- * 责任链模式中的抽象处理器基类
- */
-public abstract class AbstractAuditHandler implements AuditHandler {
-
-    protected AuditHandler next;
-
-    @Override
-    public void setNext(AuditHandler next) {
-        this.next = next;
-    }
-
-    @Override
-    public AuditHandler getNext() {
-        return this.next;
-    }
-
-    @Override
-    public AuditResult handle(AuditContext context) {
-        // 执行当前处理器的逻辑
-        AuditResult result = doHandle(context);
-
-        // 如果处理失败或不继续,直接返回
-        if (!result.isSuccess() || !result.isContinueChain()) {
-            return result;
-        }
-
-        // 传递给下一个处理器
-        if (next != null) {
-            return next.handle(context);
-        }
-
-        return result;
-    }
-
-    /**
-     * 具体处理逻辑,由子类实现
-     */
-    protected abstract AuditResult doHandle(AuditContext context);
-}
-

+ 0 - 62
fs-service/src/main/java/com/fs/audit/chain/AuditChainBuilder.java

@@ -1,62 +0,0 @@
-package com.fs.audit.chain;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.PostConstruct;
-import java.util.Comparator;
-import java.util.List;
-
-/**
- * 审核责任链构建器
- * 负责构建和管理审核处理器链
- */
-@Slf4j
-@Component
-@RequiredArgsConstructor
-public class AuditChainBuilder {
-
-    private final List<AuditHandler> handlers;
-
-    private AuditHandler chainHead;
-
-    @PostConstruct
-    public void init() {
-        buildChain();
-    }
-
-    /**
-     * 构建责任链
-     */
-    private void buildChain() {
-        if (handlers == null || handlers.isEmpty()) {
-            log.warn("没有找到审核处理器");
-            return;
-        }
-
-        // 按顺序排序
-        handlers.sort(Comparator.comparingInt(AuditHandler::getOrder));
-
-        // 构建链
-        for (int i = 0; i < handlers.size() - 1; i++) {
-            handlers.get(i).setNext(handlers.get(i + 1));
-        }
-
-        chainHead = handlers.get(0);
-
-        log.info("审核责任链构建完成,处理器数量: {}", handlers.size());
-        handlers.forEach(h -> log.info("  - {} (order: {})", h.getClass().getSimpleName(), h.getOrder()));
-    }
-
-    /**
-     * 执行审核流程
-     */
-    public AuditResult execute(AuditContext context) {
-        if (chainHead == null) {
-            return AuditResult.fail("审核处理链未初始化");
-        }
-        return chainHead.handle(context);
-    }
-}
-

+ 0 - 85
fs-service/src/main/java/com/fs/audit/chain/AuditContext.java

@@ -1,85 +0,0 @@
-package com.fs.audit.chain;
-
-import com.fs.audit.domain.Audit;
-import com.fs.audit.domain.AuditFlow;
-import com.fs.audit.dto.TemplateStepDTO;
-import lombok.Data;
-
-import java.util.List;
-
-/**
- * 审核上下文
- * 责任链模式中的上下文对象,携带审核流程所需的所有信息
- */
-@Data
-public class AuditContext {
-
-    /**
-     * 审核实例
-     */
-    private Audit audit;
-
-    /**
-     * 当前步骤的流程记录
-     */
-    private AuditFlow currentFlow;
-
-    /**
-     * 模板步骤列表
-     */
-    private List<TemplateStepDTO> steps;
-
-    /**
-     * 当前步骤索引 (0-based)
-     */
-    private int currentStepIndex;
-
-    /**
-     * 审核人ID
-     */
-    private Long userId;
-    /**
-     * 0销售用户 1系统用户
-     */
-    private Integer userType;
-
-    /**
-     * 是否通过
-     */
-    private boolean approved;
-
-    /**
-     * 审核意见
-     */
-    private String comment;
-
-    private Long companyId;
-
-    /**
-     * 获取当前步骤配置
-     */
-    public TemplateStepDTO getCurrentStepConfig() {
-        if (currentStepIndex >= 0 && currentStepIndex < steps.size()) {
-            return steps.get(currentStepIndex);
-        }
-        return null;
-    }
-
-    /**
-     * 是否为最后一步
-     */
-    public boolean isLastStep() {
-        return currentStepIndex >= steps.size() - 1;
-    }
-
-    /**
-     * 获取下一步配置
-     */
-    public TemplateStepDTO getNextStepConfig() {
-        if (!isLastStep()) {
-            return steps.get(currentStepIndex + 1);
-        }
-        return null;
-    }
-}
-

+ 0 - 31
fs-service/src/main/java/com/fs/audit/chain/AuditHandler.java

@@ -1,31 +0,0 @@
-package com.fs.audit.chain;
-
-/**
- * 审核处理器接口
- * 责任链模式中的抽象处理器
- */
-public interface AuditHandler {
-
-    /**
-     * 设置下一个处理器
-     */
-    void setNext(AuditHandler next);
-
-    /**
-     * 获取下一个处理器
-     */
-    AuditHandler getNext();
-
-    /**
-     * 处理审核请求
-     * @param context 审核上下文
-     * @return 处理结果
-     */
-    AuditResult handle(AuditContext context);
-
-    /**
-     * 获取处理器顺序
-     */
-    int getOrder();
-}
-

+ 0 - 50
fs-service/src/main/java/com/fs/audit/chain/AuditResult.java

@@ -1,50 +0,0 @@
-package com.fs.audit.chain;
-
-import lombok.Data;
-
-/**
- * 审核处理结果
- */
-@Data
-public class AuditResult {
-
-    /**
-     * 是否成功
-     */
-    private boolean success;
-
-    /**
-     * 消息
-     */
-    private String message;
-
-    /**
-     * 是否继续传递给下一个处理器
-     */
-    private boolean continueChain;
-
-    public static AuditResult success(String message) {
-        AuditResult result = new AuditResult();
-        result.setSuccess(true);
-        result.setMessage(message);
-        result.setContinueChain(true);
-        return result;
-    }
-
-    public static AuditResult fail(String message) {
-        AuditResult result = new AuditResult();
-        result.setSuccess(false);
-        result.setMessage(message);
-        result.setContinueChain(false);
-        return result;
-    }
-
-    public static AuditResult end(String message) {
-        AuditResult result = new AuditResult();
-        result.setSuccess(true);
-        result.setMessage(message);
-        result.setContinueChain(false);
-        return result;
-    }
-}
-

+ 0 - 60
fs-service/src/main/java/com/fs/audit/chain/handler/AuditExecuteHandler.java

@@ -1,60 +0,0 @@
-package com.fs.audit.chain.handler;
-
-import com.fs.audit.chain.AbstractAuditHandler;
-import com.fs.audit.chain.AuditContext;
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.domain.AuditFlow;
-import com.fs.audit.enums.AuditStatus;
-import com.fs.audit.mapper.AuditFlowMapper;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-import java.time.LocalDateTime;
-
-/**
- * 审核执行处理器
- * 执行审核动作,更新当前步骤状态
- */
-@Slf4j
-@Component
-@Order(3)
-@RequiredArgsConstructor
-public class AuditExecuteHandler extends AbstractAuditHandler {
-
-    private final AuditFlowMapper auditFlowMapper;
-
-    @Override
-    protected AuditResult doHandle(AuditContext context) {
-        log.info("执行审核处理器");
-
-        AuditFlow currentFlow = context.getCurrentFlow();
-
-        // 更新当前步骤记录
-        currentFlow.setAuditUserId(context.getUserId());
-        currentFlow.setComment(context.getComment());
-        currentFlow.setAuditTime(LocalDateTime.now());
-        currentFlow.setCompanyId(context.getCompanyId());
-        currentFlow.setAuditUserType(context.getUserType());
-        currentFlow.setCreateTime(LocalDateTime.now());
-        currentFlow.setUpdateTime(LocalDateTime.now());
-        if (context.isApproved()) {
-            currentFlow.setStatus(AuditStatus.APPROVED.getCode());
-            log.info("步骤{}审核通过", currentFlow.getStepNumber());
-        } else {
-            currentFlow.setStatus(AuditStatus.REJECTED.getCode());
-            log.info("步骤{}审核驳回", currentFlow.getStepNumber());
-        }
-
-        auditFlowMapper.updateById(currentFlow);
-
-        return AuditResult.success("审核执行成功");
-    }
-
-    @Override
-    public int getOrder() {
-        return 3;
-    }
-}
-

+ 0 - 110
fs-service/src/main/java/com/fs/audit/chain/handler/FlowAdvanceHandler.java

@@ -1,110 +0,0 @@
-package com.fs.audit.chain.handler;
-
-import com.alibaba.fastjson2.JSON;
-import com.fs.audit.chain.AbstractAuditHandler;
-import com.fs.audit.chain.AuditContext;
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.domain.Audit;
-import com.fs.audit.domain.AuditFlow;
-import com.fs.audit.dto.TemplateStepDTO;
-import com.fs.audit.enums.AuditStatus;
-import com.fs.audit.event.AuditCompletedEvent;
-import com.fs.audit.event.AuditStepChangedEvent;
-import com.fs.audit.mapper.AuditFlowMapper;
-import com.fs.audit.mapper.AuditMapper;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.context.ApplicationEventPublisher;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-import java.time.LocalDateTime;
-
-/**
- * 流程推进处理器
- * 根据审核结果推进或结束流程
- */
-@Slf4j
-@Component
-@Order(4)
-@RequiredArgsConstructor
-public class FlowAdvanceHandler extends AbstractAuditHandler {
-
-    private final AuditMapper auditMapper;
-    private final AuditFlowMapper auditFlowMapper;
-    private final ApplicationEventPublisher eventPublisher;
-
-    @Override
-    protected AuditResult doHandle(AuditContext context) {
-        log.info("执行流程推进处理器");
-
-        Audit audit = context.getAudit();
-
-        if (context.isApproved()) {
-            // 通过:判断是否为最后一步
-            if (context.isLastStep()) {
-                // 流程通过
-                audit.setStatus(AuditStatus.APPROVED.getCode());
-                auditMapper.updateById(audit);
-
-                log.info("审核流程{}已完成,状态: 通过", audit.getId());
-
-                // 发布流程完成事件
-                eventPublisher.publishEvent(new AuditCompletedEvent(this, audit, true));
-
-                return AuditResult.end("审核流程已通过");
-            } else {
-                // 推进到下一步
-                advanceToNextStep(context);
-                return AuditResult.end("已推进到下一审核步骤");
-            }
-        } else {
-            // 驳回:流程结束
-            audit.setStatus(AuditStatus.REJECTED.getCode());
-            auditMapper.updateById(audit);
-
-            log.info("审核流程{}已完成,状态: 驳回", audit.getId());
-
-            // 发布流程完成事件
-            eventPublisher.publishEvent(new AuditCompletedEvent(this, audit, false));
-
-            return AuditResult.end("审核流程已驳回");
-        }
-    }
-
-    /**
-     * 推进到下一步骤
-     */
-    private void advanceToNextStep(AuditContext context) {
-        Audit audit = context.getAudit();
-        TemplateStepDTO nextStepConfig = context.getNextStepConfig();
-
-        // 创建下一步流程记录
-        AuditFlow nextFlow = new AuditFlow();
-        nextFlow.setAuditId(audit.getId());
-        nextFlow.setStepNumber(nextStepConfig.getStep());
-        nextFlow.setStepDescription(nextStepConfig.getDescription());
-        nextFlow.setAuditUserIds(JSON.toJSONString(nextStepConfig.getAuditUserIds()));
-        nextFlow.setStatus(AuditStatus.PENDING.getCode());
-        nextFlow.setCreateTime(LocalDateTime.now());
-        nextFlow.setUpdateTime(LocalDateTime.now());
-        auditFlowMapper.insert(nextFlow);
-
-        // 更新审核实例
-        audit.setCurrentStep(nextStepConfig.getStep());
-        audit.setAuditUserIds(JSON.toJSONString(nextStepConfig.getAuditUserIds()));
-        audit.setUpdateTime(LocalDateTime.now());
-        auditMapper.updateById(audit);
-
-        log.info("流程已推进到步骤{}: {}", nextStepConfig.getStep(), nextStepConfig.getDescription());
-
-        // 发布步骤变更事件
-        eventPublisher.publishEvent(new AuditStepChangedEvent(this, audit, nextFlow));
-    }
-
-    @Override
-    public int getOrder() {
-        return 4;
-    }
-}
-

+ 0 - 47
fs-service/src/main/java/com/fs/audit/chain/handler/PermissionValidateHandler.java

@@ -1,47 +0,0 @@
-package com.fs.audit.chain.handler;
-
-import cn.hutool.core.util.ObjectUtil;
-import com.fs.audit.chain.AbstractAuditHandler;
-import com.fs.audit.chain.AuditContext;
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.dto.TemplateStepDTO;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-/**
- * 权限校验处理器
- * 校验当前用户是否有权限审核
- */
-@Slf4j
-@Component
-@Order(1)
-public class PermissionValidateHandler extends AbstractAuditHandler {
-
-    @Override
-    protected AuditResult doHandle(AuditContext context) {
-        log.info("执行权限校验处理器");
-
-        Long userId = context.getUserId();
-        TemplateStepDTO stepConfig = context.getCurrentStepConfig();
-
-        if (stepConfig == null) {
-            return AuditResult.fail("当前步骤配置不存在");
-        }
-
-        // 校验用户是否在当前步骤的审核人列表中
-        if (!stepConfig.getAuditUserIds().contains(userId) && ObjectUtil.equal(context.getUserType(),0)) {
-            log.warn("用户{}无权审核,当前步骤审核人: {}", userId, stepConfig.getAuditUserIds());
-            return AuditResult.fail("您没有权限审核此任务");
-        }
-
-        log.info("权限校验通过,用户: {} 用户类型: {}", userId, context.getUserType());
-        return AuditResult.success("权限校验通过");
-    }
-
-    @Override
-    public int getOrder() {
-        return 1;
-    }
-}
-

+ 0 - 56
fs-service/src/main/java/com/fs/audit/chain/handler/StatusValidateHandler.java

@@ -1,56 +0,0 @@
-package com.fs.audit.chain.handler;
-
-import cn.hutool.core.util.ObjectUtil;
-import com.fs.audit.chain.AbstractAuditHandler;
-import com.fs.audit.chain.AuditContext;
-import com.fs.audit.chain.AuditResult;
-import com.fs.audit.enums.AuditStatus;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-/**
- * 状态校验处理器
- * 校验审核实例和当前步骤的状态是否允许审核
- */
-@Slf4j
-@Component
-@Order(2)
-public class StatusValidateHandler extends AbstractAuditHandler {
-
-    @Override
-    protected AuditResult doHandle(AuditContext context) {
-        log.info("执行状态校验处理器");
-
-        // 如果公司为空,需要
-        if(ObjectUtil.isNull(context.getCompanyId())){
-            if(ObjectUtil.notEqual(context.getUserType(),1)){
-                throw new IllegalArgumentException("非系统用户,公司ID不能为空!");
-            }
-        }
-
-        // 校验审核实例状态
-        Integer auditStatus = context.getAudit().getStatus();
-        if (!AuditStatus.PENDING.getCode().equals(auditStatus)) {
-            String statusDesc = AuditStatus.fromCode(auditStatus).getDesc();
-            log.warn("审核实例状态不允许审核,当前状态: {}", statusDesc);
-            return AuditResult.fail("该审核已结束,状态: " + statusDesc);
-        }
-
-        // 校验当前步骤状态
-        Integer flowStatus = context.getCurrentFlow().getStatus();
-        if (!AuditStatus.PENDING.getCode().equals(flowStatus)) {
-            log.warn("当前步骤状态不允许审核,状态: {}", flowStatus);
-            return AuditResult.fail("当前步骤已被审核");
-        }
-
-        log.info("状态校验通过");
-        return AuditResult.success("状态校验通过");
-    }
-
-    @Override
-    public int getOrder() {
-        return 2;
-    }
-}
-

+ 0 - 41
fs-service/src/main/java/com/fs/audit/common/Result.java

@@ -1,41 +0,0 @@
-package com.fs.audit.common;
-
-import lombok.Data;
-
-/**
- * 统一响应结果
- */
-@Data
-public class Result<T> {
-
-    private Integer code;
-    private String message;
-    private T data;
-
-    public static <T> Result<T> success(T data) {
-        Result<T> result = new Result<>();
-        result.setCode(200);
-        result.setMessage("success");
-        result.setData(data);
-        return result;
-    }
-
-    public static <T> Result<T> success() {
-        return success(null);
-    }
-
-    public static <T> Result<T> fail(String message) {
-        Result<T> result = new Result<>();
-        result.setCode(500);
-        result.setMessage(message);
-        return result;
-    }
-
-    public static <T> Result<T> fail(Integer code, String message) {
-        Result<T> result = new Result<>();
-        result.setCode(code);
-        result.setMessage(message);
-        return result;
-    }
-}
-

+ 0 - 92
fs-service/src/main/java/com/fs/audit/domain/Audit.java

@@ -1,92 +0,0 @@
-package com.fs.audit.domain;
-
-import com.baomidou.mybatisplus.annotation.*;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-/**
- * 审核实例实体
- */
-@Data
-@TableName("audit")
-public class Audit {
-
-    @TableId(type = IdType.AUTO)
-    private Long id;
-
-    /**
-     * 审核类型:对应审核模板的CODE
-     */
-    private String auditType;
-
-    /**
-     * 名称
-     */
-    private String auditName;
-
-    /**
-     * 模板ID
-     */
-    private Long tempId;
-
-    /**
-     * 当前审核步骤
-     */
-    private Integer currentStep;
-    private String tempCode;
-
-    /**
-     * 当前审核人IDs (JSON数组)
-     */
-    private String auditUserIds;
-
-    /**
-     * 当前流程审核人
-     */
-    private String auditUserId;
-
-    /**
-     * 审核状态: 1-待审核 2-已通过 3-已驳回
-     */
-    private Integer status;
-    /**
-     * 租户ID
-     */
-    private Long companyId;
-    /**
-     * 发起人ID
-     */
-    private Long initiatorId;
-
-    /**
-     * 创建时间
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private LocalDateTime updateTime;
-
-    /**
-     * 业务ID
-     */
-    private Long businessId;
-
-    /**
-     * 业务类型
-     */
-    private String businessType;
-
-    /**
-     * 逻辑删除
-     */
-    @TableLogic
-    private Integer deleted;
-
-
-}
-

+ 0 - 79
fs-service/src/main/java/com/fs/audit/domain/AuditFlow.java

@@ -1,79 +0,0 @@
-package com.fs.audit.domain;
-
-import com.baomidou.mybatisplus.annotation.*;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-/**
- * 审核流程记录实体
- */
-@Data
-@TableName("audit_flow")
-public class AuditFlow {
-
-    @TableId(type = IdType.AUTO)
-    private Long id;
-
-    /**
-     * 审核实例ID
-     */
-    private Long auditId;
-
-    /**
-     * 步骤序号
-     */
-    private Integer stepNumber;
-
-    /**
-     * 步骤描述
-     */
-    private String stepDescription;
-
-    /**
-     * 审核人IDs (JSON数组)
-     */
-    private String auditUserIds;
-
-    /**
-     * 实际审核人ID
-     */
-    private Long auditUserId;
-
-    /**
-     * 审核人类型 0销售(默认) 1系统用户
-     */
-    private Integer auditUserType;
-    /**
-     * 审核状态: 0-已提交 1-待审核 2-已通过 3-已驳回
-     */
-    private Integer status;
-
-    /**
-     * 审核意见
-     */
-    private String comment;
-
-    /**
-     * 租户ID
-     */
-    private Long companyId;
-
-    /**
-     * 审核时间
-     */
-    private LocalDateTime auditTime;
-
-    /**
-     * 创建时间
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private LocalDateTime updateTime;
-}
-

+ 0 - 66
fs-service/src/main/java/com/fs/audit/domain/AuditTemp.java

@@ -1,66 +0,0 @@
-package com.fs.audit.domain;
-
-import com.baomidou.mybatisplus.annotation.*;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-/**
- * 审核模板实体
- */
-@Data
-@TableName("audit_temp")
-public class AuditTemp {
-
-    @TableId(type = IdType.AUTO)
-    private Long id;
-
-    /**
-     * 模板名称
-     */
-    private String tempName;
-
-
-    /**
-     * 模板代码
-     */
-    private String tempCode;
-
-    /**
-     * 模板JSON配置
-     */
-    private String tempJson;
-
-    private Integer status;
-
-
-    /**
-     * 创建时间
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private LocalDateTime updateTime;
-
-    /**
-     * 逻辑删除
-     */
-    @TableLogic
-    private Integer isDel;
-
-    /**
-     * 租户ID
-     */
-    private Long companyId;
-
-    /**
-     * 公司名称
-     */
-    @TableField(exist = false)
-    private String companyName;
-}
-

+ 0 - 46
fs-service/src/main/java/com/fs/audit/dto/AuditRequestDTO.java

@@ -1,46 +0,0 @@
-package com.fs.audit.dto;
-
-import lombok.Data;
-import javax.validation.constraints.NotNull;
-
-/**
- * 审核请求DTO
- */
-@Data
-public class AuditRequestDTO {
-
-    /**
-     * 审核实例ID
-     */
-    @NotNull(message = "审核实例ID不能为空")
-    private Long auditId;
-
-    /**
-     * 审核人ID
-     */
-    @NotNull(message = "审核人ID不能为空")
-    private Long userId;
-    /**
-     * 用户类型 0销售用户 1系统用户
-     */
-    private Integer userType;
-    /**
-     * 审核动作: 1-通过 2-驳回
-     */
-    @NotNull(message = "审核动作不能为空")
-    private Integer action;
-
-    /**
-     * 审核意见
-     */
-    private String comment;
-
-    private Long companyId;
-
-    private  Long businessId;
-
-    private String businessType;
-
-
-}
-

+ 0 - 44
fs-service/src/main/java/com/fs/audit/dto/CreateAuditRequestDTO.java

@@ -1,44 +0,0 @@
-package com.fs.audit.dto;
-
-import lombok.Data;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-/**
- * 创建审核实例请求DTO
- */
-@Data
-public class CreateAuditRequestDTO {
-
-    /**
-     * 业务ID
-     */
-    @NotBlank(message = "业务ID不能为空")
-    private Long businessId;
-
-    /**
-     * 业务类型
-     */
-    @NotBlank(message = "业务类型不能为空")
-    private String businessType;
-
-    /**
-     * 模板ID
-     */
-    @NotNull(message = "模板ID不能为空")
-    private Long tempId;
-
-    /**
-     * 模板Code
-     */
-    private String tempCode;
-
-    /**
-     * 发起人ID
-     */
-    @NotNull(message = "发起人ID不能为空")
-    private Long initiatorId;
-
-    private Long companyId;
-}
-

+ 0 - 77
fs-service/src/main/java/com/fs/audit/dto/CustomerServicePendingAuditDTO.java

@@ -1,77 +0,0 @@
-package com.fs.audit.dto;
-
-import lombok.Data;
-import java.time.LocalDateTime;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 客服待办审核响应DTO
- */
-@Data
-public class CustomerServicePendingAuditDTO {
-
-    /**
-     * 审核ID
-     */
-    private Long id;
-
-    /**
-     * 审核名称
-     */
-    private String auditName;
-
-    /**
-     * 审核类型
-     */
-    private String auditType;
-
-    /**
-     * 业务ID
-     */
-    private Long businessId;
-
-    /**
-     * 业务类型
-     */
-    private String businessType;
-
-    /**
-     * 当前步骤
-     */
-    private Integer currentStep;
-
-    /**
-     * 状态
-     */
-    private Integer status;
-
-    /**
-     * 发起人ID
-     */
-    private Long initiatorId;
-
-    /**
-     * 发起人姓名(需要关联查询)
-     */
-    private String initiatorName;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 审核人ID列表
-     */
-    private List<Long> auditUserIds;
-    /**
-     * 审核人ID列表-文本
-     */
-    private List<String> auditUserIdsStr;
-
-    /**
-     * 业务数据
-     */
-    private Map<String,Object> businessData;
-}

Niektoré súbory nie sú zobrazené, pretože je v týchto rozdielových dátach zmenené mnoho súborov