From 4ddff036191a2ec6ee6f85a337c97d6f7d9471d6 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 14 五月 2025 18:21:14 +0800
Subject: [PATCH] git ch

---
 server/service/src/main/java/com/doumee/service/business/KnowledgeService.java                |   97 +++
 server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java       |  167 +++++
 server/platform/src/main/java/com/doumee/api/business/AreasController.java                    |   11 
 server/platform/src/main/java/com/doumee/api/business/LabelsController.java                   |   98 +++
 server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsExtServiceImpl.java |  298 ++++++++++
 server/service/src/main/java/com/doumee/service/business/LabelsService.java                   |   96 +++
 server/platform/src/main/java/com/doumee/api/business/KnowledgeController.java                |   90 +++
 server/service/src/main/java/com/doumee/dao/business/KnowledgeMapper.java                     |   12 
 server/service/src/main/java/com/doumee/dao/business/model/Labels.java                        |   66 ++
 server/service/src/main/java/com/doumee/dao/business/LabelsMapper.java                        |   12 
 server/service/src/main/resources/application-dev.yml                                         |    6 
 server/service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java          |  155 +++++
 server/service/src/main/java/com/doumee/dao/business/SettleClaimsExtMapper.java               |   12 
 server/platform/src/main/resources/application.yml                                            |    2 
 server/platform/src/main/java/com/doumee/api/business/SettleClaimsExtController.java          |   90 +++
 server/service/src/main/java/com/doumee/service/business/SettleClaimsExtService.java          |   97 +++
 server/service/src/main/java/com/doumee/dao/business/model/Knowledge.java                     |  102 +++
 server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsExt.java               |  277 +++++++++
 18 files changed, 1,684 insertions(+), 4 deletions(-)

diff --git a/server/platform/src/main/java/com/doumee/api/business/AreasController.java b/server/platform/src/main/java/com/doumee/api/business/AreasController.java
index 8fd44d6..100fc17 100644
--- a/server/platform/src/main/java/com/doumee/api/business/AreasController.java
+++ b/server/platform/src/main/java/com/doumee/api/business/AreasController.java
@@ -7,6 +7,7 @@
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.model.PageData;
 import com.doumee.dao.business.model.Areas;
+import com.doumee.dao.business.vo.AreasTree;
 import com.doumee.service.business.AreasService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -59,6 +60,16 @@
         return ApiResponse.success(null);
     }
 
+    @ApiOperation("鍖哄煙鏍戝垪琛�")
+    @PostMapping("/findTreeList")
+    public ApiResponse<List<Areas>> findTreeList () {
+        List<Areas> areasList = areasService.findList(new Areas());
+        AreasTree treeBuild = new AreasTree(areasList);
+        areasList = treeBuild.buildTree();
+        return ApiResponse.success(areasList);
+    }
+
+
     @ApiOperation("鏍规嵁ID淇敼")
     @PostMapping("/updateById")
     @RequiresPermissions("business:areas:update")
diff --git a/server/platform/src/main/java/com/doumee/api/business/KnowledgeController.java b/server/platform/src/main/java/com/doumee/api/business/KnowledgeController.java
new file mode 100644
index 0000000..9dfcb81
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/KnowledgeController.java
@@ -0,0 +1,90 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.dao.business.model.Knowledge;
+import com.doumee.service.business.KnowledgeService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;    
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Api(tags = "鐭ヨ瘑搴撲俊鎭〃")
+@RestController
+@RequestMapping("/business/knowledge")
+public class KnowledgeController extends BaseController {
+
+    @Autowired
+    private KnowledgeService knowledgeService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:knowledge:create")
+    public ApiResponse create(@RequestBody Knowledge knowledge) {
+        return ApiResponse.success(knowledgeService.create(knowledge));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:knowledge:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        knowledgeService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:knowledge:delete")
+    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+        String [] idArray = ids.split(",");
+        List<Integer> idList = new ArrayList<>();
+        for (String id : idArray) {
+            idList.add(Integer.valueOf(id));
+        }
+        knowledgeService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:knowledge:update")
+    public ApiResponse updateById(@RequestBody Knowledge knowledge) {
+        knowledgeService.updateById(knowledge);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:knowledge:query")
+    public ApiResponse<PageData<Knowledge>> findPage (@RequestBody PageWrap<Knowledge> pageWrap) {
+        return ApiResponse.success(knowledgeService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:knowledge:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<Knowledge> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(Knowledge.class).export(knowledgeService.findPage(pageWrap).getRecords(), "鐭ヨ瘑搴撲俊鎭〃", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:knowledge:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(knowledgeService.findById(id));
+    }
+}
diff --git a/server/platform/src/main/java/com/doumee/api/business/LabelsController.java b/server/platform/src/main/java/com/doumee/api/business/LabelsController.java
new file mode 100644
index 0000000..2748338
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/LabelsController.java
@@ -0,0 +1,98 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.dao.business.model.Labels;
+import com.doumee.service.business.LabelsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;    
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Api(tags = "鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛�")
+@RestController
+@RequestMapping("/business/labels")
+public class LabelsController extends BaseController {
+
+    @Autowired
+    private LabelsService labelsService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:labels:create")
+    public ApiResponse create(@RequestBody Labels labels) {
+        return ApiResponse.success(labelsService.create(labels));
+    }
+
+
+    @ApiOperation("鑾峰彇鍒楄〃")
+    @PostMapping("/list")
+    @RequiresPermissions("business:labels:query")
+    public ApiResponse<List<Labels>> list() {
+        return ApiResponse.success(labelsService.findList());
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:labels:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        labelsService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+//
+//    @ApiOperation("鎵归噺鍒犻櫎")
+//    @GetMapping("/delete/batch")
+//    @RequiresPermissions("business:labels:delete")
+//    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+//        String [] idArray = ids.split(",");
+//        List<Integer> idList = new ArrayList<>();
+//        for (String id : idArray) {
+//            idList.add(Integer.valueOf(id));
+//        }
+//        labelsService.deleteByIdInBatch(idList);
+//        return ApiResponse.success(null);
+//    }
+//
+//    @ApiOperation("鏍规嵁ID淇敼")
+//    @PostMapping("/updateById")
+//    @RequiresPermissions("business:labels:update")
+//    public ApiResponse updateById(@RequestBody Labels labels) {
+//        labelsService.updateById(labels);
+//        return ApiResponse.success(null);
+//    }
+//
+//    @ApiOperation("鍒嗛〉鏌ヨ")
+//    @PostMapping("/page")
+//    @RequiresPermissions("business:labels:query")
+//    public ApiResponse<PageData<Labels>> findPage (@RequestBody PageWrap<Labels> pageWrap) {
+//        return ApiResponse.success(labelsService.findPage(pageWrap));
+//    }
+//
+//    @ApiOperation("瀵煎嚭Excel")
+//    @PostMapping("/exportExcel")
+//    @RequiresPermissions("business:labels:exportExcel")
+//    public void exportExcel (@RequestBody PageWrap<Labels> pageWrap, HttpServletResponse response) {
+//        ExcelExporter.build(Labels.class).export(labelsService.findPage(pageWrap).getRecords(), "鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛�", response);
+//    }
+//
+//    @ApiOperation("鏍规嵁ID鏌ヨ")
+//    @GetMapping("/{id}")
+//    @RequiresPermissions("business:labels:query")
+//    public ApiResponse findById(@PathVariable Integer id) {
+//        return ApiResponse.success(labelsService.findById(id));
+//    }
+}
diff --git a/server/platform/src/main/java/com/doumee/api/business/SettleClaimsExtController.java b/server/platform/src/main/java/com/doumee/api/business/SettleClaimsExtController.java
new file mode 100644
index 0000000..13c6637
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/SettleClaimsExtController.java
@@ -0,0 +1,90 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.dao.business.model.SettleClaimsExt;
+import com.doumee.service.business.SettleClaimsExtService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;    
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Api(tags = "鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛�")
+@RestController
+@RequestMapping("/business/settleClaimsExt")
+public class SettleClaimsExtController extends BaseController {
+
+    @Autowired
+    private SettleClaimsExtService settleClaimsExtService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:settleclaimsext:create")
+    public ApiResponse create(@RequestBody SettleClaimsExt settleClaimsExt) {
+        return ApiResponse.success(settleClaimsExtService.create(settleClaimsExt));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:settleclaimsext:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        settleClaimsExtService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:settleclaimsext:delete")
+    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+        String [] idArray = ids.split(",");
+        List<Integer> idList = new ArrayList<>();
+        for (String id : idArray) {
+            idList.add(Integer.valueOf(id));
+        }
+        settleClaimsExtService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:settleclaimsext:update")
+    public ApiResponse updateById(@RequestBody SettleClaimsExt settleClaimsExt) {
+        settleClaimsExtService.updateById(settleClaimsExt);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:settleclaimsext:query")
+    public ApiResponse<PageData<SettleClaimsExt>> findPage (@RequestBody PageWrap<SettleClaimsExt> pageWrap) {
+        return ApiResponse.success(settleClaimsExtService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:settleclaimsext:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<SettleClaimsExt> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(SettleClaimsExt.class).export(settleClaimsExtService.findPage(pageWrap).getRecords(), "鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:settleclaimsext:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(settleClaimsExtService.findById(id));
+    }
+}
diff --git a/server/platform/src/main/resources/application.yml b/server/platform/src/main/resources/application.yml
index 781f762..368c575 100644
--- a/server/platform/src/main/resources/application.yml
+++ b/server/platform/src/main/resources/application.yml
@@ -11,7 +11,7 @@
 #  application:
 #  name: doumeemes
   profiles:
-    active: pro
+    active: dev
 
   # JSON杩斿洖閰嶇疆
   jackson:
diff --git a/server/service/src/main/java/com/doumee/dao/business/KnowledgeMapper.java b/server/service/src/main/java/com/doumee/dao/business/KnowledgeMapper.java
new file mode 100644
index 0000000..33e055c
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/KnowledgeMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.Knowledge;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface KnowledgeMapper extends BaseMapper<Knowledge> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/LabelsMapper.java b/server/service/src/main/java/com/doumee/dao/business/LabelsMapper.java
new file mode 100644
index 0000000..f3c79c6
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/LabelsMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.Labels;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface LabelsMapper extends BaseMapper<Labels> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/SettleClaimsExtMapper.java b/server/service/src/main/java/com/doumee/dao/business/SettleClaimsExtMapper.java
new file mode 100644
index 0000000..4c72cf3
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/SettleClaimsExtMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.SettleClaimsExt;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface SettleClaimsExtMapper extends BaseMapper<SettleClaimsExt> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Knowledge.java b/server/service/src/main/java/com/doumee/dao/business/model/Knowledge.java
new file mode 100644
index 0000000..f1271ec
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Knowledge.java
@@ -0,0 +1,102 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 鐭ヨ瘑搴撲俊鎭〃
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Data
+@ApiModel("鐭ヨ瘑搴撲俊鎭〃")
+@TableName("`knowledge`")
+public class Knowledge {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鐪佷唤缂栫爜", example = "1")
+    @ExcelColumn(name="鐪佷唤缂栫爜")
+    private Integer provinceId;
+
+    @ApiModelProperty(value = "鐪佷唤鍚嶇О")
+    @ExcelColumn(name="鐪佷唤鍚嶇О")
+    private String provinceName;
+
+    @ApiModelProperty(value = "鐘舵�� 0姝e父 1绂佺敤", example = "1")
+    @ExcelColumn(name="鐘舵�� 0姝e父 1绂佺敤")
+    private Integer status;
+
+    @ApiModelProperty(value = "鍩庡競缂栫爜")
+    @ExcelColumn(name="鍩庡競缂栫爜")
+    private Integer cityId;
+
+    @ApiModelProperty(value = "鍩庡競鍚嶇О", example = "1")
+    @ExcelColumn(name="鍩庡競鍚嶇О")
+    private String cityName;
+
+    @ApiModelProperty(value = "鏍囬")
+    @ExcelColumn(name="鏍囬")
+    private String title;
+
+    @ApiModelProperty(value = "閾炬帴鍦板潃")
+    @ExcelColumn(name="閾炬帴鍦板潃")
+    private String link;
+
+    @ApiModelProperty(value = "鍓爣棰�")
+    @ExcelColumn(name="鍓爣棰�")
+    private String subtitle;
+
+    @ApiModelProperty(value = "鍐呭")
+    @ExcelColumn(name="鍐呭")
+    private String content;
+
+    @ApiModelProperty(value = "鏍囩闆嗗悎,澶氫釜鑻辨枃閫楀彿闅斿紑")
+    @ExcelColumn(name="鏍囩闆嗗悎,澶氫釜鑻辨枃閫楀彿闅斿紑")
+    private String labels;
+
+    @ApiModelProperty(value = "骞翠唤")
+    @ExcelColumn(name="骞翠唤")
+    private String yearInfo;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Labels.java b/server/service/src/main/java/com/doumee/dao/business/model/Labels.java
new file mode 100644
index 0000000..03fd040
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Labels.java
@@ -0,0 +1,66 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Data
+@ApiModel("鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛�")
+@TableName("`labels`")
+public class Labels {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鐘舵�� 0姝e父 1绂佺敤", example = "1")
+    @ExcelColumn(name="鐘舵�� 0姝e父 1绂佺敤")
+    private Integer status;
+
+    @ApiModelProperty(value = "鍚嶇О")
+    @ExcelColumn(name="鍚嶇О")
+    private String name;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsExt.java b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsExt.java
new file mode 100644
index 0000000..1a58b57
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsExt.java
@@ -0,0 +1,277 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛�
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Data
+@ApiModel("鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛�")
+@TableName("`settle_claims_ext`")
+public class SettleClaimsExt {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+    @ApiModelProperty(value = "鐞嗚禂缂栫爜锛堝叧鑱攕ettle_claims锛�", example = "1")
+    @ExcelColumn(name="鐞嗚禂缂栫爜锛堝叧鑱攕ettle_claims锛�")
+    private Integer settileClaimsId;
+
+    @ApiModelProperty(value = "鍑洪櫓浜哄鍚�")
+    @ExcelColumn(name="鍑洪櫓浜哄鍚�")
+    private String memberName;
+
+    @ApiModelProperty(value = "鍑洪櫓浜鸿瘉浠剁被鍨� 0灞呮皯韬唤璇� 1鎶ょ収 2鎴峰彛鏈� 3灞呬綇璇� 4绛捐瘉 5娓境閫氳璇�", example = "1")
+    @ExcelColumn(name="鍑洪櫓浜鸿瘉浠剁被鍨� 0灞呮皯韬唤璇� 1鎶ょ収 2鎴峰彛鏈� 3灞呬綇璇� 4绛捐瘉 5娓境閫氳璇�")
+    private Integer memberIdcardType;
+
+    @ApiModelProperty(value = "鍑洪櫓浜鸿瘉浠跺彿")
+    @ExcelColumn(name="鍑洪櫓浜鸿瘉浠跺彿")
+    private String memberIdcard;
+
+    @ApiModelProperty(value = "鍑洪櫓浜哄嚭鐢熸棩鏈�")
+    @ExcelColumn(name="鍑洪櫓浜哄嚭鐢熸棩鏈�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date memberBirthday;
+
+    @ApiModelProperty(value = "鍑洪櫓浜哄勾绾�", example = "1")
+    @ExcelColumn(name="鍑洪櫓浜哄勾绾�")
+    private Integer memberAge;
+
+    @ApiModelProperty(value = "鍑洪櫓浜烘�у埆 0鐢� 1濂�", example = "1")
+    @ExcelColumn(name="鍑洪櫓浜烘�у埆 0鐢� 1濂�")
+    private Integer memberSex;
+
+    @ApiModelProperty(value = "鍑洪櫓浜哄眳浣忓湴")
+    @ExcelColumn(name="鍑洪櫓浜哄眳浣忓湴")
+    private String memberAddr;
+
+    @ApiModelProperty(value = "鍑洪櫓浜烘墜鏈哄彿")
+    @ExcelColumn(name="鍑洪櫓浜烘墜鏈哄彿")
+    private String memberPhone;
+
+    @ApiModelProperty(value = "淇濋櫓鍚嶇О")
+    @ExcelColumn(name="淇濋櫓鍚嶇О")
+    private String bxName;
+
+    @ApiModelProperty(value = "淇濆崟鍙�")
+    @ExcelColumn(name="淇濆崟鍙�")
+    private String bxCode;
+
+    @ApiModelProperty(value = "淇濋櫓寮�濮嬫椂闂�")
+    @ExcelColumn(name="淇濋櫓寮�濮嬫椂闂�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date bxStartdate;
+
+    @ApiModelProperty(value = "淇濋櫓缁撴潫鏃堕棿")
+    @ExcelColumn(name="淇濋櫓缁撴潫鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date bxEnddate;
+
+    @ApiModelProperty(value = "鎶曚繚浜哄鍚�")
+    @ExcelColumn(name="鎶曚繚浜哄鍚�")
+    private String bxTbName;
+
+    @ApiModelProperty(value = "琚繚闄╀汉濮撳悕")
+    @ExcelColumn(name="琚繚闄╀汉濮撳悕")
+    private String bxBbName;
+
+    @ApiModelProperty(value = "鎵夸繚缁撴瀯")
+    @ExcelColumn(name="鎵夸繚缁撴瀯")
+    private String bxOrg;
+
+    @ApiModelProperty(value = "搴旀敹淇濊垂", example = "1")
+    @ExcelColumn(name="搴旀敹淇濊垂")
+    private BigDecimal bxYsMoney;
+
+    @ApiModelProperty(value = "瀹炴敹淇濊垂", example = "1")
+    @ExcelColumn(name="瀹炴敹淇濊垂")
+    private BigDecimal bxSsMoney;
+
+    @ApiModelProperty(value = "鏄惁宸叉敞閿� 0鏄� 1鍚�", example = "1")
+    @ExcelColumn(name="鏄惁宸叉敞閿� 0鏄� 1鍚�")
+    private Integer logoff;
+
+    @ApiModelProperty(value = "娉ㄩ攢浜嬩欢")
+    @ExcelColumn(name="娉ㄩ攢浜嬩欢")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date logoffDate;
+
+    @ApiModelProperty(value = "娉ㄩ攢澶勭悊浜�")
+    @ExcelColumn(name="娉ㄩ攢澶勭悊浜�")
+    private String logoffUser;
+
+    @ApiModelProperty(value = "鏍歌矗淇℃伅-淇濆崟鍙锋槸鍚︽垚绔�")
+    @ExcelColumn(name="鏍歌矗淇℃伅-淇濆崟鍙锋槸鍚︽垚绔�")
+    private String hzBdhCl;
+
+    @ApiModelProperty(value = "鏍歌矗淇℃伅-浜嬫晠璐d换姣斾緥")
+    @ExcelColumn(name="鏍歌矗淇℃伅-浜嬫晠璐d换姣斾緥")
+    private String hzDutyRate;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-浼や骸浜哄憳灞炴��")
+    @ExcelColumn(name="浜哄憳浼や骸-浼や骸浜哄憳灞炴��")
+    private String rsAttr;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-浜哄憳浼ゆ儏")
+    @ExcelColumn(name="浜哄憳浼や骸-浜哄憳浼ゆ儏")
+    private String rsInfo;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-娌荤枟鐘舵��")
+    @ExcelColumn(name="浜哄憳浼や骸-娌荤枟鐘舵��")
+    private String rsZlStatus;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-鎹熷け閲戦")
+    @ExcelColumn(name="浜哄憳浼や骸-鎹熷け閲戦")
+    private String rsLossMoney;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-灏辫瘖鎯呭喌")
+    @ExcelColumn(name="浜哄憳浼や骸-灏辫瘖鎯呭喌")
+    private String rsJzInfo;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-鍑洪櫌鏃堕棿")
+    @ExcelColumn(name="浜哄憳浼や骸-鍑洪櫌鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date rsCyDate;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-鍖荤枟鏈烘瀯")
+    @ExcelColumn(name="浜哄憳浼や骸-鍖荤枟鏈烘瀯")
+    private String rsYlOrg;
+
+    @ApiModelProperty(value = "浜哄憳浼や骸-姝讳骸鏃堕棿")
+    @ExcelColumn(name="浜哄憳浼や骸-姝讳骸鏃堕棿")
+    private String rsDeathDate;
+
+    @ApiModelProperty(value = "灏辫瘖-鍖婚櫌鍚嶇О")
+    @ExcelColumn(name="灏辫瘖-鍖婚櫌鍚嶇О")
+    private String jzHospital;
+
+    @ApiModelProperty(value = "灏辫瘖-浣忛櫌鍙�")
+    @ExcelColumn(name="灏辫瘖-浣忛櫌鍙�")
+    private String jzZyCode;
+
+    @ApiModelProperty(value = "灏辫瘖-浣忛櫌绉戝")
+    @ExcelColumn(name="灏辫瘖-浣忛櫌绉戝")
+    private String jzZyKs;
+
+    @ApiModelProperty(value = "灏辫瘖-浣忛櫌鏃堕棿")
+    @ExcelColumn(name="灏辫瘖-浣忛櫌鏃堕棿")
+    private String jzZyDate;
+
+    @ApiModelProperty(value = "灏辫瘖-鍑洪櫌鏃堕棿")
+    @ExcelColumn(name="灏辫瘖-鍑洪櫌鏃堕棿")
+    private String jzCyDate;
+
+    @ApiModelProperty(value = "灏辫瘖-浣忛櫌澶╂暟")
+    @ExcelColumn(name="灏辫瘖-浣忛櫌澶╂暟")
+    private String jzZyDays;
+
+    @ApiModelProperty(value = "璇婃柇-娌荤枟鎯呭喌")
+    @ExcelColumn(name="璇婃柇-娌荤枟鎯呭喌")
+    private String zdZlInfo;
+
+    @ApiModelProperty(value = "璇婃柇-浼ゆ儏鎻忚堪")
+    @ExcelColumn(name="璇婃柇-浼ゆ儏鎻忚堪")
+    private String zdSqInfo;
+
+    @ApiModelProperty(value = "璇婃柇-涓村簥璇婃柇")
+    @ExcelColumn(name="璇婃柇-涓村簥璇婃柇")
+    private String zdLczd;
+
+    @ApiModelProperty(value = "璇婃柇-鎵嬫湳鍚嶇О")
+    @ExcelColumn(name="璇婃柇-鎵嬫湳鍚嶇О")
+    private String zdSsName;
+
+    @ApiModelProperty(value = "璇婃柇-鍚庣画娌荤枟椤圭洰")
+    @ExcelColumn(name="璇婃柇-鍚庣画娌荤枟椤圭洰")
+    private String zdHxProject;
+
+    @ApiModelProperty(value = "璇婃柇-鏄惁鏈夋棦寰�鐥�")
+    @ExcelColumn(name="璇婃柇-鏄惁鏈夋棦寰�鐥�")
+    private String zdJwb;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-閴村畾鎯呭喌")
+    @ExcelColumn(name="閴村畾淇℃伅-閴村畾鎯呭喌")
+    private String jdInfo;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-閴村畾閫斿緞")
+    @ExcelColumn(name="閴村畾淇℃伅-閴村畾閫斿緞")
+    private String jdChannel;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-閴村畾鏈烘瀯")
+    @ExcelColumn(name="閴村畾淇℃伅-閴村畾鏈烘瀯")
+    private String jdOrg;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-閴村畾浜�")
+    @ExcelColumn(name="閴村畾淇℃伅-閴村畾浜�")
+    private String jdUser;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-璇勫畾鏃ユ湡")
+    @ExcelColumn(name="閴村畾淇℃伅-璇勫畾鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date jdPdDate;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-浼ゆ畫绛夌骇 0-10", example = "1")
+    @ExcelColumn(name="閴村畾淇℃伅-浼ゆ畫绛夌骇 0-10")
+    private Integer jdScLevel;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-閴村畾鏉℃")
+    @ExcelColumn(name="閴村畾淇℃伅-閴村畾鏉℃")
+    private String jdTerms;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-浼ゆ畫绯绘暟")
+    @ExcelColumn(name="閴村畾淇℃伅-浼ゆ畫绯绘暟")
+    private String jdXishu;
+
+    @ApiModelProperty(value = "閴村畾淇℃伅-鏄惁浼ゆ畫璧斿伩瀹屾垚瑙i櫎鍔冲姩鍚堝悓 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="閴村畾淇℃伅-鏄惁浼ゆ畫璧斿伩瀹屾垚瑙i櫎鍔冲姩鍚堝悓 0鍚� 1鏄�")
+    private Integer jdJsldht;
+
+    @ApiModelProperty(value = "璐d换涓庤瘎娈嬫潯閴村畾淇℃伅-娆惧叧鑱斿叧绯� 0淇濆崟鍙� 1鍏宠仈璇勬畫鏉℃ 2鍔冲姩鑳藉姏閴村畾", example = "1")
+    @ExcelColumn(name="璐d换涓庤瘎娈嬫潯閴村畾淇℃伅-娆惧叧鑱斿叧绯� 0淇濆崟鍙� 1鍏宠仈璇勬畫鏉℃ 2鍔冲姩鑳藉姏閴村畾")
+    private Integer jdZrpctkRel;
+
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/KnowledgeService.java b/server/service/src/main/java/com/doumee/service/business/KnowledgeService.java
new file mode 100644
index 0000000..f11047a
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/KnowledgeService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.Knowledge;
+import java.util.List;
+
+/**
+ * 鐭ヨ瘑搴撲俊鎭〃Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface KnowledgeService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param knowledge 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(Knowledge knowledge);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param knowledge 瀹炰綋瀵硅薄
+     */
+    void delete(Knowledge knowledge);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param knowledge 瀹炰綋瀵硅薄
+     */
+    void updateById(Knowledge knowledge);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param knowledges 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<Knowledge> knowledges);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return Knowledge
+     */
+    Knowledge findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param knowledge 瀹炰綋瀵硅薄
+     * @return Knowledge
+     */
+    Knowledge findOne(Knowledge knowledge);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param knowledge 瀹炰綋瀵硅薄
+     * @return List<Knowledge>
+     */
+    List<Knowledge> findList(Knowledge knowledge);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<Knowledge>
+     */
+    PageData<Knowledge> findPage(PageWrap<Knowledge> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param knowledge 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(Knowledge knowledge);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/LabelsService.java b/server/service/src/main/java/com/doumee/service/business/LabelsService.java
new file mode 100644
index 0000000..e4ba615
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/LabelsService.java
@@ -0,0 +1,96 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.Labels;
+import java.util.List;
+
+/**
+ * 鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface LabelsService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param labels 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(Labels labels);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param labels 瀹炰綋瀵硅薄
+     */
+    void delete(Labels labels);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param labels 瀹炰綋瀵硅薄
+     */
+    void updateById(Labels labels);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param labelss 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<Labels> labelss);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return Labels
+     */
+    Labels findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param labels 瀹炰綋瀵硅薄
+     * @return Labels
+     */
+    Labels findOne(Labels labels);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @return List<Labels>
+     */
+    List<Labels> findList();
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<Labels>
+     */
+    PageData<Labels> findPage(PageWrap<Labels> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param labels 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(Labels labels);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/SettleClaimsExtService.java b/server/service/src/main/java/com/doumee/service/business/SettleClaimsExtService.java
new file mode 100644
index 0000000..f7cd371
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/SettleClaimsExtService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.SettleClaimsExt;
+import java.util.List;
+
+/**
+ * 鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+public interface SettleClaimsExtService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(SettleClaimsExt settleClaimsExt);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     */
+    void delete(SettleClaimsExt settleClaimsExt);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     */
+    void updateById(SettleClaimsExt settleClaimsExt);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param settleClaimsExts 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<SettleClaimsExt> settleClaimsExts);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return SettleClaimsExt
+     */
+    SettleClaimsExt findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     * @return SettleClaimsExt
+     */
+    SettleClaimsExt findOne(SettleClaimsExt settleClaimsExt);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     * @return List<SettleClaimsExt>
+     */
+    List<SettleClaimsExt> findList(SettleClaimsExt settleClaimsExt);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<SettleClaimsExt>
+     */
+    PageData<SettleClaimsExt> findPage(PageWrap<SettleClaimsExt> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param settleClaimsExt 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(SettleClaimsExt settleClaimsExt);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
new file mode 100644
index 0000000..c04c5d2
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
@@ -0,0 +1,167 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.KnowledgeMapper;
+import com.doumee.dao.business.model.Knowledge;
+import com.doumee.service.business.KnowledgeService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.commons.lang.StringUtils;
+import org.apache.shiro.SecurityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鐭ヨ瘑搴撲俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Service
+public class KnowledgeServiceImpl implements KnowledgeService {
+
+    @Autowired
+    private KnowledgeMapper knowledgeMapper;
+
+    @Override
+    public Integer create(Knowledge knowledge) {
+        LoginUserInfo user= (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(Objects.isNull(knowledge)
+        || StringUtils.isBlank(knowledge.getTitle())
+                || StringUtils.isBlank(knowledge.getLink())
+//                || StringUtils.isBlank(knowledge.getCityName())
+//                || Objects.isNull(knowledge.getCityId())
+                || StringUtils.isBlank(knowledge.getProvinceName())
+                || Objects.isNull(knowledge.getProvinceId())
+                || StringUtils.isBlank(knowledge.getYearInfo())
+                || StringUtils.isBlank(knowledge.getTitle())
+                || StringUtils.isBlank(knowledge.getLabels())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        if(knowledge.getLabels().split(",").length>10){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏍囩鏁版渶澶氭坊鍔犲崄涓�");
+        }
+        knowledge.setIsdeleted(Constants.ZERO);
+        knowledge.setCreateDate(new Date());
+        knowledge.setCreator(user.getId());
+        knowledgeMapper.insert(knowledge);
+        return knowledge.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        knowledgeMapper.update(null,new UpdateWrapper<Knowledge>().lambda().set(Knowledge::getIsdeleted,Constants.ONE).eq(Knowledge::getId,id));
+//        knowledgeMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(Knowledge knowledge) {
+        UpdateWrapper<Knowledge> deleteWrapper = new UpdateWrapper<>(knowledge);
+        knowledgeMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        knowledgeMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(Knowledge knowledge) {
+        LoginUserInfo user= (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(Objects.isNull(knowledge)
+                || Objects.isNull(knowledge.getId())
+                || StringUtils.isBlank(knowledge.getTitle())
+                || StringUtils.isBlank(knowledge.getLink())
+                || StringUtils.isBlank(knowledge.getProvinceName())
+//                || StringUtils.isBlank(knowledge.getCityName())
+//                || Objects.isNull(knowledge.getCityId())
+                || Objects.isNull(knowledge.getProvinceId())
+                || StringUtils.isBlank(knowledge.getYearInfo())
+                || StringUtils.isBlank(knowledge.getTitle())
+                || StringUtils.isBlank(knowledge.getLabels())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        if(knowledge.getLabels().split(",").length>10){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏍囩鏁版渶澶氭坊鍔犲崄涓�");
+        }
+        knowledge.setEditDate(new Date());
+        knowledge.setEditor(user.getId());
+        knowledgeMapper.updateById(knowledge);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<Knowledge> knowledges) {
+        if (CollectionUtils.isEmpty(knowledges)) {
+            return;
+        }
+        for (Knowledge knowledge: knowledges) {
+            this.updateById(knowledge);
+        }
+    }
+
+    @Override
+    public Knowledge findById(Integer id) {
+        return knowledgeMapper.selectById(id);
+    }
+
+    @Override
+    public Knowledge findOne(Knowledge knowledge) {
+        QueryWrapper<Knowledge> wrapper = new QueryWrapper<>(knowledge);
+        return knowledgeMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<Knowledge> findList(Knowledge knowledge) {
+        QueryWrapper<Knowledge> wrapper = new QueryWrapper<>(knowledge);
+        return knowledgeMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<Knowledge> findPage(PageWrap<Knowledge> pageWrap) {
+        IPage<Knowledge> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<Knowledge> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        queryWrapper.lambda().eq(Knowledge::getIsdeleted,Constants.ZERO);
+
+        if (pageWrap.getModel().getProvinceId() != null) {
+            queryWrapper.lambda().eq(Knowledge::getProvinceId, pageWrap.getModel().getProvinceId());
+        }
+        if (pageWrap.getModel().getCityId() != null) {
+            queryWrapper.lambda().eq(Knowledge::getCityId, pageWrap.getModel().getCityId());
+        }
+        if (pageWrap.getModel().getTitle() != null) {
+            queryWrapper.lambda().like(Knowledge::getTitle, pageWrap.getModel().getTitle());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(knowledgeMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(Knowledge knowledge) {
+        QueryWrapper<Knowledge> wrapper = new QueryWrapper<>(knowledge);
+        return knowledgeMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
new file mode 100644
index 0000000..da3c023
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
@@ -0,0 +1,155 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.LabelsMapper;
+import com.doumee.dao.business.model.Labels;
+import com.doumee.service.business.LabelsService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.shiro.SecurityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鐭ヨ瘑搴撴爣绛惧簱淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Service
+public class LabelsServiceImpl implements LabelsService {
+
+    @Autowired
+    private LabelsMapper labelsMapper;
+
+    @Override
+    public Integer create(Labels labels) {
+        LoginUserInfo user= (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(Objects.isNull(labels)
+        || StringUtils.isEmpty(labels.getName())){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        labelsMapper.delete(new QueryWrapper<Labels>().lambda().eq(Labels::getName,labels.getName()));
+        labels.setCreateDate(new Date());
+        labels.setCreator(user.getId());
+        labelsMapper.insert(labels);
+        return labels.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        labelsMapper.update(null,new UpdateWrapper<Labels>().lambda().set(Labels::getIsdeleted, Constants.ONE).eq(Labels::getId,id));
+//        labelsMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(Labels labels) {
+        UpdateWrapper<Labels> deleteWrapper = new UpdateWrapper<>(labels);
+        labelsMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        labelsMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(Labels labels) {
+        labelsMapper.updateById(labels);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<Labels> labelss) {
+        if (CollectionUtils.isEmpty(labelss)) {
+            return;
+        }
+        for (Labels labels: labelss) {
+            this.updateById(labels);
+        }
+    }
+
+    @Override
+    public Labels findById(Integer id) {
+        return labelsMapper.selectById(id);
+    }
+
+    @Override
+    public Labels findOne(Labels labels) {
+        QueryWrapper<Labels> wrapper = new QueryWrapper<>(labels);
+        return labelsMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<Labels> findList() {
+        return labelsMapper.selectList(new QueryWrapper<Labels>().lambda().eq(Labels::getIsdeleted,Constants.ZERO).orderByDesc(Labels::getId));
+    }
+  
+    @Override
+    public PageData<Labels> findPage(PageWrap<Labels> pageWrap) {
+        IPage<Labels> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<Labels> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(Labels::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(Labels::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(Labels::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(Labels::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(Labels::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(Labels::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(Labels::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(Labels::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(Labels::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(Labels::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(Labels::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(Labels::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(labelsMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(Labels labels) {
+        QueryWrapper<Labels> wrapper = new QueryWrapper<>(labels);
+        return labelsMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsExtServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsExtServiceImpl.java
new file mode 100644
index 0000000..2bacb06
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsExtServiceImpl.java
@@ -0,0 +1,298 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.SettleClaimsExtMapper;
+import com.doumee.dao.business.model.SettleClaimsExt;
+import com.doumee.service.business.SettleClaimsExtService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 鐞嗚禂绯荤粺褰曞叆鍩烘湰淇℃伅琛ュ厖琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2025/05/14 13:49
+ */
+@Service
+public class SettleClaimsExtServiceImpl implements SettleClaimsExtService {
+
+    @Autowired
+    private SettleClaimsExtMapper settleClaimsExtMapper;
+
+    @Override
+    public Integer create(SettleClaimsExt settleClaimsExt) {
+        settleClaimsExtMapper.insert(settleClaimsExt);
+        return settleClaimsExt.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        settleClaimsExtMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(SettleClaimsExt settleClaimsExt) {
+        UpdateWrapper<SettleClaimsExt> deleteWrapper = new UpdateWrapper<>(settleClaimsExt);
+        settleClaimsExtMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        settleClaimsExtMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(SettleClaimsExt settleClaimsExt) {
+        settleClaimsExtMapper.updateById(settleClaimsExt);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<SettleClaimsExt> settleClaimsExts) {
+        if (CollectionUtils.isEmpty(settleClaimsExts)) {
+            return;
+        }
+        for (SettleClaimsExt settleClaimsExt: settleClaimsExts) {
+            this.updateById(settleClaimsExt);
+        }
+    }
+
+    @Override
+    public SettleClaimsExt findById(Integer id) {
+        return settleClaimsExtMapper.selectById(id);
+    }
+
+    @Override
+    public SettleClaimsExt findOne(SettleClaimsExt settleClaimsExt) {
+        QueryWrapper<SettleClaimsExt> wrapper = new QueryWrapper<>(settleClaimsExt);
+        return settleClaimsExtMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<SettleClaimsExt> findList(SettleClaimsExt settleClaimsExt) {
+        QueryWrapper<SettleClaimsExt> wrapper = new QueryWrapper<>(settleClaimsExt);
+        return settleClaimsExtMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<SettleClaimsExt> findPage(PageWrap<SettleClaimsExt> pageWrap) {
+        IPage<SettleClaimsExt> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<SettleClaimsExt> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getSettileClaimsId() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getSettileClaimsId, pageWrap.getModel().getSettileClaimsId());
+        }
+        if (pageWrap.getModel().getMemberName() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberName, pageWrap.getModel().getMemberName());
+        }
+        if (pageWrap.getModel().getMemberIdcardType() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberIdcardType, pageWrap.getModel().getMemberIdcardType());
+        }
+        if (pageWrap.getModel().getMemberIdcard() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberIdcard, pageWrap.getModel().getMemberIdcard());
+        }
+        if (pageWrap.getModel().getMemberBirthday() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getMemberBirthday, Utils.Date.getStart(pageWrap.getModel().getMemberBirthday()));
+            queryWrapper.lambda().le(SettleClaimsExt::getMemberBirthday, Utils.Date.getEnd(pageWrap.getModel().getMemberBirthday()));
+        }
+        if (pageWrap.getModel().getMemberAge() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberAge, pageWrap.getModel().getMemberAge());
+        }
+        if (pageWrap.getModel().getMemberSex() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberSex, pageWrap.getModel().getMemberSex());
+        }
+        if (pageWrap.getModel().getMemberAddr() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberAddr, pageWrap.getModel().getMemberAddr());
+        }
+        if (pageWrap.getModel().getMemberPhone() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getMemberPhone, pageWrap.getModel().getMemberPhone());
+        }
+        if (pageWrap.getModel().getBxName() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxName, pageWrap.getModel().getBxName());
+        }
+        if (pageWrap.getModel().getBxCode() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxCode, pageWrap.getModel().getBxCode());
+        }
+        if (pageWrap.getModel().getBxStartdate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getBxStartdate, Utils.Date.getStart(pageWrap.getModel().getBxStartdate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getBxStartdate, Utils.Date.getEnd(pageWrap.getModel().getBxStartdate()));
+        }
+        if (pageWrap.getModel().getBxEnddate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getBxEnddate, Utils.Date.getStart(pageWrap.getModel().getBxEnddate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getBxEnddate, Utils.Date.getEnd(pageWrap.getModel().getBxEnddate()));
+        }
+        if (pageWrap.getModel().getBxTbName() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxTbName, pageWrap.getModel().getBxTbName());
+        }
+        if (pageWrap.getModel().getBxBbName() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxBbName, pageWrap.getModel().getBxBbName());
+        }
+        if (pageWrap.getModel().getBxOrg() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxOrg, pageWrap.getModel().getBxOrg());
+        }
+        if (pageWrap.getModel().getBxYsMoney() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxYsMoney, pageWrap.getModel().getBxYsMoney());
+        }
+        if (pageWrap.getModel().getBxSsMoney() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getBxSsMoney, pageWrap.getModel().getBxSsMoney());
+        }
+        if (pageWrap.getModel().getLogoff() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getLogoff, pageWrap.getModel().getLogoff());
+        }
+        if (pageWrap.getModel().getLogoffDate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getLogoffDate, Utils.Date.getStart(pageWrap.getModel().getLogoffDate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getLogoffDate, Utils.Date.getEnd(pageWrap.getModel().getLogoffDate()));
+        }
+        if (pageWrap.getModel().getLogoffUser() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getLogoffUser, pageWrap.getModel().getLogoffUser());
+        }
+        if (pageWrap.getModel().getHzBdhCl() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getHzBdhCl, pageWrap.getModel().getHzBdhCl());
+        }
+        if (pageWrap.getModel().getHzDutyRate() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getHzDutyRate, pageWrap.getModel().getHzDutyRate());
+        }
+        if (pageWrap.getModel().getRsAttr() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsAttr, pageWrap.getModel().getRsAttr());
+        }
+        if (pageWrap.getModel().getRsInfo() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsInfo, pageWrap.getModel().getRsInfo());
+        }
+        if (pageWrap.getModel().getRsZlStatus() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsZlStatus, pageWrap.getModel().getRsZlStatus());
+        }
+        if (pageWrap.getModel().getRsLossMoney() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsLossMoney, pageWrap.getModel().getRsLossMoney());
+        }
+        if (pageWrap.getModel().getRsJzInfo() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsJzInfo, pageWrap.getModel().getRsJzInfo());
+        }
+        if (pageWrap.getModel().getRsCyDate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getRsCyDate, Utils.Date.getStart(pageWrap.getModel().getRsCyDate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getRsCyDate, Utils.Date.getEnd(pageWrap.getModel().getRsCyDate()));
+        }
+        if (pageWrap.getModel().getRsYlOrg() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsYlOrg, pageWrap.getModel().getRsYlOrg());
+        }
+        if (pageWrap.getModel().getRsDeathDate() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getRsDeathDate, pageWrap.getModel().getRsDeathDate());
+        }
+        if (pageWrap.getModel().getJzHospital() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzHospital, pageWrap.getModel().getJzHospital());
+        }
+        if (pageWrap.getModel().getJzZyCode() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzZyCode, pageWrap.getModel().getJzZyCode());
+        }
+        if (pageWrap.getModel().getJzZyKs() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzZyKs, pageWrap.getModel().getJzZyKs());
+        }
+        if (pageWrap.getModel().getJzZyDate() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzZyDate, pageWrap.getModel().getJzZyDate());
+        }
+        if (pageWrap.getModel().getJzCyDate() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzCyDate, pageWrap.getModel().getJzCyDate());
+        }
+        if (pageWrap.getModel().getJzZyDays() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJzZyDays, pageWrap.getModel().getJzZyDays());
+        }
+        if (pageWrap.getModel().getZdZlInfo() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdZlInfo, pageWrap.getModel().getZdZlInfo());
+        }
+        if (pageWrap.getModel().getZdSqInfo() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdSqInfo, pageWrap.getModel().getZdSqInfo());
+        }
+        if (pageWrap.getModel().getZdLczd() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdLczd, pageWrap.getModel().getZdLczd());
+        }
+        if (pageWrap.getModel().getZdSsName() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdSsName, pageWrap.getModel().getZdSsName());
+        }
+        if (pageWrap.getModel().getZdHxProject() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdHxProject, pageWrap.getModel().getZdHxProject());
+        }
+        if (pageWrap.getModel().getZdJwb() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getZdJwb, pageWrap.getModel().getZdJwb());
+        }
+        if (pageWrap.getModel().getJdInfo() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdInfo, pageWrap.getModel().getJdInfo());
+        }
+        if (pageWrap.getModel().getJdChannel() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdChannel, pageWrap.getModel().getJdChannel());
+        }
+        if (pageWrap.getModel().getJdOrg() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdOrg, pageWrap.getModel().getJdOrg());
+        }
+        if (pageWrap.getModel().getJdUser() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdUser, pageWrap.getModel().getJdUser());
+        }
+        if (pageWrap.getModel().getJdPdDate() != null) {
+            queryWrapper.lambda().ge(SettleClaimsExt::getJdPdDate, Utils.Date.getStart(pageWrap.getModel().getJdPdDate()));
+            queryWrapper.lambda().le(SettleClaimsExt::getJdPdDate, Utils.Date.getEnd(pageWrap.getModel().getJdPdDate()));
+        }
+        if (pageWrap.getModel().getJdScLevel() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdScLevel, pageWrap.getModel().getJdScLevel());
+        }
+        if (pageWrap.getModel().getJdTerms() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdTerms, pageWrap.getModel().getJdTerms());
+        }
+        if (pageWrap.getModel().getJdXishu() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdXishu, pageWrap.getModel().getJdXishu());
+        }
+        if (pageWrap.getModel().getJdJsldht() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdJsldht, pageWrap.getModel().getJdJsldht());
+        }
+        if (pageWrap.getModel().getJdZrpctkRel() != null) {
+            queryWrapper.lambda().eq(SettleClaimsExt::getJdZrpctkRel, pageWrap.getModel().getJdZrpctkRel());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(settleClaimsExtMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(SettleClaimsExt settleClaimsExt) {
+        QueryWrapper<SettleClaimsExt> wrapper = new QueryWrapper<>(settleClaimsExt);
+        return settleClaimsExtMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/resources/application-dev.yml b/server/service/src/main/resources/application-dev.yml
index a0c0780..8b1dec0 100644
--- a/server/service/src/main/resources/application-dev.yml
+++ b/server/service/src/main/resources/application-dev.yml
@@ -13,9 +13,9 @@
 spring:
   # 鏁版嵁婧愰厤缃�
   datasource:
-    url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/yunyibao1?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
-    username: doumee
-    password: rtjgfEr@&0c0m
+    url: jdbc:mysql://112.26.66.25:3306/yyb?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
+    username: root
+    password: Doumee@168&QWERT
     driver-class-name: com.mysql.cj.jdbc.Driver
     type: com.alibaba.druid.pool.DruidDataSource
   mail:

--
Gitblit v1.9.3