From a22fa65d1027f8500c0494e97ff2232f70e9ca93 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 28 十月 2024 19:27:06 +0800
Subject: [PATCH] 提交一把

---
 server/service/src/main/java/com/doumee/dao/business/model/Solutions.java                       |   12 
 server/service/src/main/java/com/doumee/dao/business/CompanyUserApplyMapper.java                |   12 
 server/service/src/main/java/com/doumee/service/business/impl/CompanyUserApplyServiceImpl.java  |  155 ++++
 server/service/src/main/java/com/doumee/service/business/impl/ContractServiceImpl.java          |  198 +++++
 server/shop/src/main/java/com/doumee/api/business/CompanyUserApplyController.java               |   90 ++
 server/service/src/main/java/com/doumee/dao/business/model/Contract.java                        |  143 ++++
 server/platform/src/main/java/com/doumee/api/business/SolutionsBaseController.java              |    6 
 server/service/src/main/java/com/doumee/dao/business/model/CompanyUserApply.java                |   87 ++
 server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java               |    3 
 server/shop/src/main/java/com/doumee/api/business/SolutionsBaseController.java                  |   12 
 server/service/src/main/java/com/doumee/service/business/ContractService.java                   |   97 ++
 server/service/src/main/java/com/doumee/dao/business/model/CompanyDepartment.java               |  106 +++
 server/service/src/main/java/com/doumee/service/business/CompanyUserApplyService.java           |   97 ++
 server/shop/src/main/java/com/doumee/api/business/ContractController.java                       |   90 ++
 server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java                   |   87 +-
 server/service/src/main/java/com/doumee/service/business/impl/CompanyDepartmentServiceImpl.java |  169 ++++
 server/shop/src/main/java/com/doumee/api/business/CompanyDepartmentController.java              |   90 ++
 server/company/src/main/java/com/doumee/api/business/CompanyUserApplyController.java            |   90 ++
 server/service/src/main/java/com/doumee/dao/business/CompanyDepartmentMapper.java               |   12 
 server/service/src/main/java/com/doumee/service/business/CompanyDepartmentService.java          |   97 ++
 server/company/src/main/resources/application.yml                                               |    2 
 server/service/src/main/java/com/doumee/service/business/SolutionsBaseService.java              |    4 
 server/company/src/main/java/com/doumee/api/business/CompanyDepartmentController.java           |   90 ++
 server/company/src/main/java/com/doumee/api/business/ContractController.java                    |   90 ++
 server/shop/src/main/resources/application.yml                                                  |    2 
 server/service/src/main/java/com/doumee/dao/business/ContractMapper.java                        |   12 
 server/platform/src/main/resources/application.yml                                              |    2 
 server/service/src/main/java/com/doumee/dao/business/SolutionsBaseMapper.java                   |    2 
 server/service/src/main/java/com/doumee/dao/business/model/Insurance.java                       |   19 
 server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java     |   61 +
 server/company/src/main/java/com/doumee/api/business/SolutionsBaseController.java               |   90 ++
 31 files changed, 1,954 insertions(+), 73 deletions(-)

diff --git a/server/company/src/main/java/com/doumee/api/business/CompanyDepartmentController.java b/server/company/src/main/java/com/doumee/api/business/CompanyDepartmentController.java
new file mode 100644
index 0000000..35a4621
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/CompanyDepartmentController.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.CompanyDepartment;
+import com.doumee.service.business.CompanyDepartmentService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "浼佷笟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/companyDepartment")
+public class CompanyDepartmentController extends BaseController {
+
+    @Autowired
+    private CompanyDepartmentService companyDepartmentService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:companydepartment:create")
+    public ApiResponse create(@RequestBody CompanyDepartment companyDepartment) {
+        return ApiResponse.success(companyDepartmentService.create(companyDepartment));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:companydepartment:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        companyDepartmentService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:companydepartment: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));
+        }
+        companyDepartmentService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:companydepartment:update")
+    public ApiResponse updateById(@RequestBody CompanyDepartment companyDepartment) {
+        companyDepartmentService.updateById(companyDepartment);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:companydepartment:query")
+    public ApiResponse<PageData<CompanyDepartment>> findPage (@RequestBody PageWrap<CompanyDepartment> pageWrap) {
+        return ApiResponse.success(companyDepartmentService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:companydepartment:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<CompanyDepartment> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(CompanyDepartment.class).export(companyDepartmentService.findPage(pageWrap).getRecords(), "浼佷笟淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:companydepartment:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(companyDepartmentService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/CompanyUserApplyController.java b/server/company/src/main/java/com/doumee/api/business/CompanyUserApplyController.java
new file mode 100644
index 0000000..c869c85
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/CompanyUserApplyController.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.CompanyUserApply;
+import com.doumee.service.business.CompanyUserApplyService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "闆嗗洟鐢宠璁板綍琛�")
+@RestController
+@RequestMapping("/business/companyUserApply")
+public class CompanyUserApplyController extends BaseController {
+
+    @Autowired
+    private CompanyUserApplyService companyUserApplyService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:companyuserapply:create")
+    public ApiResponse create(@RequestBody CompanyUserApply companyUserApply) {
+        return ApiResponse.success(companyUserApplyService.create(companyUserApply));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:companyuserapply:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        companyUserApplyService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:companyuserapply: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));
+        }
+        companyUserApplyService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:companyuserapply:update")
+    public ApiResponse updateById(@RequestBody CompanyUserApply companyUserApply) {
+        companyUserApplyService.updateById(companyUserApply);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:companyuserapply:query")
+    public ApiResponse<PageData<CompanyUserApply>> findPage (@RequestBody PageWrap<CompanyUserApply> pageWrap) {
+        return ApiResponse.success(companyUserApplyService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:companyuserapply:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<CompanyUserApply> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(CompanyUserApply.class).export(companyUserApplyService.findPage(pageWrap).getRecords(), "闆嗗洟鐢宠璁板綍琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:companyuserapply:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(companyUserApplyService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/ContractController.java b/server/company/src/main/java/com/doumee/api/business/ContractController.java
new file mode 100644
index 0000000..d392fce
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/ContractController.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.Contract;
+import com.doumee.service.business.ContractService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "鍚堝悓淇℃伅琛�")
+@RestController
+@RequestMapping("/business/contract")
+public class ContractController extends BaseController {
+
+    @Autowired
+    private ContractService contractService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:contract:create")
+    public ApiResponse create(@RequestBody Contract contract) {
+        return ApiResponse.success(contractService.create(contract));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:contract:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        contractService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:contract: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));
+        }
+        contractService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:contract:update")
+    public ApiResponse updateById(@RequestBody Contract contract) {
+        contractService.updateById(contract);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:contract:query")
+    public ApiResponse<PageData<Contract>> findPage (@RequestBody PageWrap<Contract> pageWrap) {
+        return ApiResponse.success(contractService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:contract:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<Contract> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(Contract.class).export(contractService.findPage(pageWrap).getRecords(), "鍚堝悓淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:contract:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(contractService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/SolutionsBaseController.java b/server/company/src/main/java/com/doumee/api/business/SolutionsBaseController.java
new file mode 100644
index 0000000..c1f73b4
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/SolutionsBaseController.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.SolutionsBase;
+import com.doumee.service.business.SolutionsBaseService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "淇濋櫓鏂规淇℃伅琛�")
+@RestController
+@RequestMapping("/business/solutionsBase")
+public class SolutionsBaseController extends BaseController {
+
+    @Autowired
+    private SolutionsBaseService solutionsBaseService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:solutionsbase:create")
+    public ApiResponse create(@RequestBody SolutionsBase solutionsBase) {
+        return ApiResponse.success(solutionsBaseService.create(solutionsBase));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:solutionsbase:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        solutionsBaseService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:solutionsbase: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));
+        }
+        solutionsBaseService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:solutionsbase:update")
+    public ApiResponse updateById(@RequestBody SolutionsBase solutionsBase) {
+        solutionsBaseService.updateById(solutionsBase);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:solutionsbase:query")
+    public ApiResponse<PageData<SolutionsBase>> findPage (@RequestBody PageWrap<SolutionsBase> pageWrap) {
+        return ApiResponse.success(solutionsBaseService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:solutionsbase:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<SolutionsBase> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(SolutionsBase.class).export(solutionsBaseService.findPage(pageWrap).getRecords(), "淇濋櫓鏂规淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:solutionsbase:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(solutionsBaseService.findById(id));
+    }
+}
diff --git a/server/company/src/main/resources/application.yml b/server/company/src/main/resources/application.yml
index 2107f6a..dba634a 100644
--- a/server/company/src/main/resources/application.yml
+++ b/server/company/src/main/resources/application.yml
@@ -12,7 +12,7 @@
 #  application:git
 #    name: doumeemes
   profiles:
-    active: pro
+    active: dev
 
   # JSON杩斿洖閰嶇疆
   jackson:
diff --git a/server/platform/src/main/java/com/doumee/api/business/SolutionsBaseController.java b/server/platform/src/main/java/com/doumee/api/business/SolutionsBaseController.java
index 8cb5051..c1f73b4 100644
--- a/server/platform/src/main/java/com/doumee/api/business/SolutionsBaseController.java
+++ b/server/platform/src/main/java/com/doumee/api/business/SolutionsBaseController.java
@@ -20,9 +20,9 @@
 
 /**
  * @author 姹熻箘韫�
- * @date 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
-@Api(tags = "淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�")
+@Api(tags = "淇濋櫓鏂规淇℃伅琛�")
 @RestController
 @RequestMapping("/business/solutionsBase")
 public class SolutionsBaseController extends BaseController {
@@ -78,7 +78,7 @@
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:solutionsbase:exportExcel")
     public void exportExcel (@RequestBody PageWrap<SolutionsBase> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(SolutionsBase.class).export(solutionsBaseService.findPage(pageWrap).getRecords(), "淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�", response);
+        ExcelExporter.build(SolutionsBase.class).export(solutionsBaseService.findPage(pageWrap).getRecords(), "淇濋櫓鏂规淇℃伅琛�", response);
     }
 
     @ApiOperation("鏍规嵁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/CompanyDepartmentMapper.java b/server/service/src/main/java/com/doumee/dao/business/CompanyDepartmentMapper.java
new file mode 100644
index 0000000..c4ac657
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/CompanyDepartmentMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.CompanyDepartment;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface CompanyDepartmentMapper extends BaseMapper<CompanyDepartment> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/CompanyUserApplyMapper.java b/server/service/src/main/java/com/doumee/dao/business/CompanyUserApplyMapper.java
new file mode 100644
index 0000000..febcaf1
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/CompanyUserApplyMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.CompanyUserApply;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface CompanyUserApplyMapper extends BaseMapper<CompanyUserApply> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/ContractMapper.java b/server/service/src/main/java/com/doumee/dao/business/ContractMapper.java
new file mode 100644
index 0000000..cce7f60
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/ContractMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.Contract;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface ContractMapper extends BaseMapper<Contract> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/SolutionsBaseMapper.java b/server/service/src/main/java/com/doumee/dao/business/SolutionsBaseMapper.java
index fb1d8e2..fddbd8a 100644
--- a/server/service/src/main/java/com/doumee/dao/business/SolutionsBaseMapper.java
+++ b/server/service/src/main/java/com/doumee/dao/business/SolutionsBaseMapper.java
@@ -5,7 +5,7 @@
 
 /**
  * @author 姹熻箘韫�
- * @date 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
 public interface SolutionsBaseMapper extends BaseMapper<SolutionsBase> {
 
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CompanyDepartment.java b/server/service/src/main/java/com/doumee/dao/business/model/CompanyDepartment.java
new file mode 100644
index 0000000..833c2ab
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CompanyDepartment.java
@@ -0,0 +1,106 @@
+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 2024/10/28 19:16
+ */
+@Data
+@ApiModel("浼佷笟淇℃伅琛�")
+@TableName("`company_department`")
+public class CompanyDepartment {
+
+    @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 name;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+    @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
+    private Integer status;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+    @ApiModelProperty(value = "鍥炬爣")
+    @ExcelColumn(name="鍥炬爣")
+    private String imgurl;
+
+    @ApiModelProperty(value = "绫诲瀷 0鍔冲姟鍏徃 1鍐呴儴缁勭粐", example = "1")
+    @ExcelColumn(name="绫诲瀷 0鍔冲姟鍏徃 1鍐呴儴缁勭粐")
+    private Integer type;
+
+    @ApiModelProperty(value = "浼佷笟浠g爜", example = "1")
+    @ExcelColumn(name="浼佷笟浠g爜")
+    private Integer code;
+
+    @ApiModelProperty(value = "涓婄骇缁勭粐缂栫爜锛堣嚜鍏宠仈锛�")
+    @ExcelColumn(name="涓婄骇缁勭粐缂栫爜锛堣嚜鍏宠仈锛�")
+    private String parentId;
+
+    @ApiModelProperty(value = "鑱旂郴浜哄鍚�")
+    @ExcelColumn(name="鑱旂郴浜哄鍚�")
+    private String linkName;
+
+    @ApiModelProperty(value = "鑱旂郴鐢佃瘽")
+    @ExcelColumn(name="鑱旂郴鐢佃瘽")
+    private String linkPhone;
+
+    @ApiModelProperty(value = "涓荤璐熻矗浜虹紪鐮侊紙鍏宠仈member)", example = "1")
+    @ExcelColumn(name="涓荤璐熻矗浜虹紪鐮侊紙鍏宠仈member)")
+    private Integer headId;
+
+    @ApiModelProperty(value = "鑷缓閮ㄩ棬缂栫爜璺緞锛�/闅斿紑")
+    @ExcelColumn(name="鑷缓閮ㄩ棬缂栫爜璺緞锛�/闅斿紑")
+    private String idPath;
+
+    @ApiModelProperty(value = "閮ㄩ棬鍚嶇О璺緞锛�/闅斿紑")
+    @ExcelColumn(name="閮ㄩ棬鍚嶇О璺緞锛�/闅斿紑")
+    private String namePath;
+
+    @ApiModelProperty(value = "鎵�灞炰紒涓氱紪鐮�")
+    @ExcelColumn(name="鎵�灞炰紒涓氱紪鐮�")
+    private String companyId;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java b/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
index 0a25a2b..6ebf465 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CompanyPermission.java
@@ -48,6 +48,9 @@
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
     @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
     private Integer isdeleted;
+    @ApiModelProperty(value = "绫诲瀷 0骞冲彴绔紒涓氱鐞嗘潈闄� 1浼佷笟闆嗗洟璐﹀彿", example = "1")
+    @ExcelColumn(name="绫诲瀷 0骞冲彴绔紒涓氱鐞嗘潈闄� 1浼佷笟闆嗗洟璐﹀彿")
+    private Integer type;
 
     @ApiModelProperty(value = "澶囨敞")
     @ExcelColumn(name="澶囨敞")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CompanyUserApply.java b/server/service/src/main/java/com/doumee/dao/business/model/CompanyUserApply.java
new file mode 100644
index 0000000..b150676
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CompanyUserApply.java
@@ -0,0 +1,87 @@
+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 2024/10/28 19:16
+ */
+@Data
+@ApiModel("闆嗗洟鐢宠璁板綍琛�")
+@TableName("`company_user_apply`")
+public class CompanyUserApply {
+
+    @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 = "浼佷笟缂栫爜闆嗗悎锛屽鍊嬩娇鐢ㄨ嫳鏂囬�楀彿闅斿紑")
+    @ExcelColumn(name="浼佷笟缂栫爜闆嗗悎锛屽鍊嬩娇鐢ㄨ嫳鏂囬�楀彿闅斿紑")
+    private String companyIds;
+
+    @ApiModelProperty(value = "鐢ㄦ埛缂栫爜", example = "1")
+    @ExcelColumn(name="鐢ㄦ埛缂栫爜")
+    private Integer userId;
+
+    @ApiModelProperty(value = "鐢宠璇存槑")
+    @ExcelColumn(name="鐢宠璇存槑")
+    private String content;
+
+    @ApiModelProperty(value = "瀹℃牳鐘舵�� 0寰呭鏍� 1瀹℃牳閫氳繃 2瀹℃牳涓嶉�氳繃", example = "1")
+    @ExcelColumn(name="瀹℃牳鐘舵�� 0寰呭鏍� 1瀹℃牳閫氳繃 2瀹℃牳涓嶉�氳繃")
+    private Integer status;
+
+    @ApiModelProperty(value = "浼佷笟鐮佺敵璇峰悕绉�,澶氫釜浣跨敤鑻辨枃閫楀彿闅斿紑")
+    @ExcelColumn(name="浼佷笟鐮佺敵璇峰悕绉�,澶氫釜浣跨敤鑻辨枃閫楀彿闅斿紑")
+    private String companyNames;
+
+    @ApiModelProperty(value = "瀹℃牳浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="瀹℃牳浜虹紪鐮�")
+    private Integer checkorId;
+
+    @ApiModelProperty(value = "瀹℃牳鏃堕棿")
+    @ExcelColumn(name="瀹℃牳鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date checkDate;
+
+    @ApiModelProperty(value = "瀹℃牳澶囨敞")
+    @ExcelColumn(name="瀹℃牳澶囨敞")
+    private String checkInfo;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Contract.java b/server/service/src/main/java/com/doumee/dao/business/model/Contract.java
new file mode 100644
index 0000000..e2d8d0f
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Contract.java
@@ -0,0 +1,143 @@
+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 2024/10/28 19:16
+ */
+@Data
+@ApiModel("鍚堝悓淇℃伅琛�")
+@TableName("`contract`")
+public class Contract {
+
+    @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 = "鍚堝悓鍚嶇О")
+    @ExcelColumn(name="鍚堝悓鍚嶇О")
+    private String name;
+
+    @ApiModelProperty(value = "浼佷笟鎴栬�呭晢鎴风紪鐮�(鍏宠仈company锛�", example = "1")
+    @ExcelColumn(name="浼佷笟鎴栬�呭晢鎴风紪鐮�(鍏宠仈company锛�")
+    private Integer companyId;
+
+    @ApiModelProperty(value = "璇存槑")
+    @ExcelColumn(name="璇存槑")
+    private String content;
+
+    @ApiModelProperty(value = "鐘舵�� 0寰呯绔�  1鎴戞柟宸茬绔�  2浼佷笟鍟嗘埛宸茬绔� 3瀹屾垚 4宸插彇娑� 5宸插叧闂�", example = "1")
+    @ExcelColumn(name="鐘舵�� 0寰呯绔�  1鎴戞柟宸茬绔�  2浼佷笟鍟嗘埛宸茬绔� 3瀹屾垚 4宸插彇娑� 5宸插叧闂�")
+    private Integer status;
+
+    @ApiModelProperty(value = "浼佷笟鍟嗘埛浜哄憳缂栫爜", example = "1")
+    @ExcelColumn(name="浼佷笟鍟嗘埛浜哄憳缂栫爜")
+    private Integer comSignUserId;
+
+    @ApiModelProperty(value = "浼佷笟鍟嗘埛绛剧珷鏃堕棿")
+    @ExcelColumn(name="浼佷笟鍟嗘埛绛剧珷鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date comSignDate;
+
+    @ApiModelProperty(value = "浼佷笟鍟嗘埛绛剧珷澶囨敞")
+    @ExcelColumn(name="浼佷笟鍟嗘埛绛剧珷澶囨敞")
+    private String comSignInfo;
+
+    @ApiModelProperty(value = "绛剧珷绫诲瀷 0鍙屾柟绛剧珷 1浠呮垜鏂圭绔�", example = "1")
+    @ExcelColumn(name="绛剧珷绫诲瀷 0鍙屾柟绛剧珷 1浠呮垜鏂圭绔�")
+    private Integer type;
+
+    @ApiModelProperty(value = "鎴戞柟绛剧珷浜哄憳缂栫爜", example = "1")
+    @ExcelColumn(name="鎴戞柟绛剧珷浜哄憳缂栫爜")
+    private Integer signUserId;
+
+    @ApiModelProperty(value = "鎴戞柟鍟嗘埛绛剧珷鏃堕棿")
+    @ExcelColumn(name="鎴戞柟鍟嗘埛绛剧珷鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date signDate;
+
+    @ApiModelProperty(value = "鎴戞柟鍟嗘埛绛剧珷澶囨敞")
+    @ExcelColumn(name="鎴戞柟鍟嗘埛绛剧珷澶囨敞")
+    private String signInfo;
+
+    @ApiModelProperty(value = "绛剧讲鍓嶆枃浠跺湴鍧�")
+    @ExcelColumn(name="绛剧讲鍓嶆枃浠跺湴鍧�")
+    private String fileUrl;
+
+    @ApiModelProperty(value = "鎴戞柟绛剧珷鍚庢枃浠跺湴鍧�")
+    @ExcelColumn(name="鎴戞柟绛剧珷鍚庢枃浠跺湴鍧�")
+    private String fileSignUrl;
+
+    @ApiModelProperty(value = "鏈�缁堢缃插悗鏂囦欢鍦板潃")
+    @ExcelColumn(name="鏈�缁堢缃插悗鏂囦欢鍦板潃")
+    private String doneFileUrl;
+
+    @ApiModelProperty(value = "鎴戞柟绛剧讲鍚堝悓鍙�")
+    @ExcelColumn(name="鎴戞柟绛剧讲鍚堝悓鍙�")
+    private String appyno;
+
+    @ApiModelProperty(value = "鏈�缁堢缃插悎鍚屽彿")
+    @ExcelColumn(name="鏈�缁堢缃插悎鍚屽彿")
+    private String doneApplyno;
+
+    @ApiModelProperty(value = "鍚堝悓寮�濮嬫椂闂�")
+    @ExcelColumn(name="鍚堝悓寮�濮嬫椂闂�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date startTime;
+
+    @ApiModelProperty(value = "鍚堝悓缁撴潫鏃堕棿")
+    @ExcelColumn(name="鍚堝悓缁撴潫鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endTime;
+
+    @ApiModelProperty(value = "鍙栨秷鏃堕棿")
+    @ExcelColumn(name="鍙栨秷鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date cancelDate;
+
+    @ApiModelProperty(value = "鍙栨秷浜�", example = "1")
+    @ExcelColumn(name="鍙栨秷浜�")
+    private Integer cancelUserId;
+
+    @ApiModelProperty(value = "鍙栨秷澶囨敞")
+    @ExcelColumn(name="鍙栨秷澶囨敞")
+    private String cancelInfo;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Insurance.java b/server/service/src/main/java/com/doumee/dao/business/model/Insurance.java
index 38d50cc..31df4eb 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Insurance.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Insurance.java
@@ -82,5 +82,22 @@
     @ApiModelProperty(value = "宸ョ闆嗗悎", example = "1")
     @TableField(exist = false)
     private List<Worktype> worktypeList;
-
+    @ApiModelProperty(value = "LOGO鍥炬爣", example = "1")
+    @ExcelColumn(name="LOGO鍥炬爣")
+    private String logo;
+    @ApiModelProperty(value = "鑻辨枃鍚嶇О", example = "1")
+    @ExcelColumn(name="鑻辨枃鍚嶇О")
+    private String englishName;
+    @ApiModelProperty(value = "鑱旂郴浜�", example = "1")
+    @ExcelColumn(name="鑱旂郴浜�")
+    private String linkName;
+    @ApiModelProperty(value = "鑱旂郴浜虹數璇�", example = "1")
+    @ExcelColumn(name="鑱旂郴浜虹數璇�")
+    private String linkPhone;
+    @ApiModelProperty(value = "淇濋櫓鏀跨瓥", example = "1")
+    @ExcelColumn(name="淇濋櫓鏀跨瓥")
+    private String policy;
+    @ApiModelProperty(value = "淇濋櫓鏉℃", example = "1")
+    @ExcelColumn(name="淇濋櫓鏉℃")
+    private String agreement;
 }
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
index f9f9f57..18b5dad 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
@@ -88,6 +88,12 @@
     @ApiModelProperty(value = "鏈�楂樺勾榫�", example = "1")
     @ExcelColumn(name="鏈�楂樺勾榫�")
     private Integer maxAge;
+    @ApiModelProperty(value = "鍏宠仈鐖剁骇鏂规缂栫爜锛堝叧鑱攕olutions_base锛�", example = "1")
+    @ExcelColumn(name="鍏宠仈鐖剁骇鏂规缂栫爜锛堝叧鑱攕olutions_base锛�")
+    private Integer parentId;
+    @ApiModelProperty(value = "鏄惁鏈夋淳閬e崟浣� 0鏈� 1鏃�", example = "1")
+    @ExcelColumn(name="鏄惁鏈夋淳閬e崟浣� 0鏈� 1鏃�")
+    private Integer hasDispatchUnit;
 
     @ApiModelProperty(value = "淇濋櫓璐圭敤锛堜汉锛� -- 淇濋櫓璐圭敤(浜�/澶╋級", example = "1")
     @ExcelColumn(name="淇濋櫓璐圭敤(浜�/澶╋級")
@@ -96,6 +102,12 @@
     @ApiModelProperty(value = " 鍛ㄦ湡鍗曚綅 0澶� 2鏈� 3瀛e害  4鍗婂勾 5骞� -- 淇濋櫓鏃堕棿鍗曚綅0澶� 1鍗婃湀 2鏈� 3骞�", example = "1")
     @ExcelColumn(name="淇濋櫓鏃堕棿鍗曚綅0澶� 1鍗婃湀 2鏈� 3骞�")
     private Integer timeUnit;
+    @ApiModelProperty(value = "濮旀墭鏂规绛剧珷鏂瑰紡 0浼佷笟绛剧讲鍟嗘埛涓婁紶鎶曚繚鍗� 1浼佷笟绛炬姇淇濈敵璇� 2浼佷笟鏃犻渶绛剧珷", example = "1")
+    @ExcelColumn(name="濮旀墭鏂规绛剧珷鏂瑰紡 0浼佷笟绛剧讲鍟嗘埛涓婁紶鎶曚繚鍗� 1浼佷笟绛炬姇淇濈敵璇� 2浼佷笟鏃犻渶绛剧珷")
+    private Integer signType;
+    @ApiModelProperty(value = "鏄惁闇�瑕佸瀹� 0涓嶉渶瑕� 1闇�瑕�", example = "1")
+    @ExcelColumn(name="鏄惁闇�瑕佸瀹� 0涓嶉渶瑕� 1闇�瑕�")
+    private Integer retrial;
 
     @ApiModelProperty(value = "鎶曚繚鍛ㄦ湡")
     @ExcelColumn(name="鎶曚繚鍛ㄦ湡")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java b/server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java
index 6812937..2c34cfc 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java
@@ -9,15 +9,14 @@
 import lombok.Data;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import java.util.Date;
-import java.math.BigDecimal;
 
 /**
- * 淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�
+ * 淇濋櫓鏂规淇℃伅琛�
  * @author 姹熻箘韫�
- * @date 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
 @Data
-@ApiModel("淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�")
+@ApiModel("淇濋櫓鏂规淇℃伅琛�")
 @TableName("`solutions_base`")
 public class SolutionsBase {
 
@@ -32,7 +31,7 @@
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @ExcelColumn(name="鍒涘缓鏃堕棿")
-
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -41,7 +40,7 @@
 
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
     @ExcelColumn(name="鏇存柊鏃堕棿")
-
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date editDate;
 
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@@ -72,10 +71,6 @@
     @ExcelColumn(name="鐢熸晥鏃堕棿鏂瑰紡 0鏃ュ悗鐢熸晥 1娆℃湀鐢熸晥")
     private Integer validType;
 
-    @ApiModelProperty(value = "绫诲瀷 0鐩翠繚 1濮旀墭鎶曚繚", example = "1")
-    @ExcelColumn(name="绫诲瀷 0鐩翠繚 1濮旀墭鎶曚繚")
-    private Integer type;
-
     @ApiModelProperty(value = "鏈�浣庡勾榫�", example = "1")
     @ExcelColumn(name="鏈�浣庡勾榫�")
     private Integer minAge;
@@ -84,33 +79,9 @@
     @ExcelColumn(name="鏈�楂樺勾榫�")
     private Integer maxAge;
 
-    @ApiModelProperty(value = "淇濋櫓璐圭敤(浜�/澶╋級", example = "1")
-    @ExcelColumn(name="淇濋櫓璐圭敤(浜�/澶╋級")
-    private BigDecimal price;
-
-    @ApiModelProperty(value = "淇濋櫓鏃堕棿鍗曚綅0澶� 1鍗婃湀 2鏈� 3骞�", example = "1")
-    @ExcelColumn(name="淇濋櫓鏃堕棿鍗曚綅0澶� 1鍗婃湀 2鏈� 3骞�")
-    private Integer timeUnit;
-
-    @ApiModelProperty(value = "寮�鎴疯")
-    @ExcelColumn(name="寮�鎴疯")
-    private String insureCycle;
-
-    @ApiModelProperty(value = "鏈�灏忔姇淇濆懆鏈熸椂闂村崟浣�0澶� 1鍗婃湀 2鏈� 3骞�", example = "1")
-    @ExcelColumn(name="鏈�灏忔姇淇濆懆鏈熸椂闂村崟浣�0澶� 1鍗婃湀 2鏈� 3骞�")
-    private Integer insureCycleUnit;
-
-    @ApiModelProperty(value = "鏈�灏忚璐瑰懆鏈熸椂闂村崟浣� 0澶� 1鍗婃湀 2鏈� 3骞�", example = "1")
-    @ExcelColumn(name="鏈�灏忚璐瑰懆鏈熸椂闂村崟浣� 0澶� 1鍗婃湀 2鏈� 3骞�")
-    private Integer priceCycleUnit;
-
     @ApiModelProperty(value = "鏄惁鍗曠嫭鎸囨淳宸ョ 0鍚� 1鍥�", example = "1")
     @ExcelColumn(name="鏄惁鍗曠嫭鎸囨淳宸ョ 0鍚� 1鍥�")
     private Integer singleWorktype;
-
-    @ApiModelProperty(value = "鎺ユ敹鏂囦欢閭")
-    @ExcelColumn(name="鎺ユ敹鏂囦欢閭")
-    private String email;
 
     @ApiModelProperty(value = "鐗瑰埆绾﹀畾")
     @ExcelColumn(name="鐗瑰埆绾﹀畾")
@@ -128,4 +99,52 @@
     @ExcelColumn(name="鐗堟湰鍙�")
     private String version;
 
+    @ApiModelProperty(value = "璁板綍绫诲瀷 0鍩鸿〃鏁版嵁 1鍘嗗彶鐗堟湰鏁版嵁", example = "1")
+    @ExcelColumn(name="璁板綍绫诲瀷 0鍩鸿〃鏁版嵁 1鍘嗗彶鐗堟湰鏁版嵁")
+    private Integer dataType;
+
+    @ApiModelProperty(value = "鍩鸿〃缂栫爜锛堣嚜鍏宠仈锛�", example = "1")
+    @ExcelColumn(name="鍩鸿〃缂栫爜锛堣嚜鍏宠仈锛�")
+    private Integer baseId;
+
+    @ApiModelProperty(value = "绛剧珷浣嶇疆鍏抽敭瀛�,澶氫釜鑻辨枃閫楀彿闅斿紑")
+    @ExcelColumn(name="绛剧珷浣嶇疆鍏抽敭瀛�,澶氫釜鑻辨枃閫楀彿闅斿紑")
+    private String signKeyword;
+
+    @ApiModelProperty(value = "寤惰繜澶╂暟鐢熸晥锛圴ALID_TYPE锛�0 浣跨敤锛�", example = "1")
+    @ExcelColumn(name="寤惰繜澶╂暟鐢熸晥锛圴ALID_TYPE锛�0 浣跨敤锛�")
+    private Integer validTypeNum;
+
+    @ApiModelProperty(value = "濮旀墭鍟嗘埛缂栫爜锛堝叧鑱攃ompany)", example = "1")
+    @ExcelColumn(name="濮旀墭鍟嗘埛缂栫爜锛堝叧鑱攃ompany)")
+    private Integer shopId;
+
+    @ApiModelProperty(value = "鎵瑰鐢熸晥澶╂暟", example = "1")
+    @ExcelColumn(name="鎵瑰鐢熸晥澶╂暟")
+    private Integer addValidDays;
+
+    @ApiModelProperty(value = "鎵瑰噺鐢熸晥澶╂暟", example = "1")
+    @ExcelColumn(name="鎵瑰噺鐢熸晥澶╂暟")
+    private Integer delValidDays;
+
+    @ApiModelProperty(value = "鏄惁鍙姞淇� 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍙姞淇� 0鍚� 1鏄�")
+    private Integer canAdd;
+
+    @ApiModelProperty(value = "鏄惁鍙噺淇� 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍙噺淇� 0鍚� 1鏄�")
+    private Integer canReduce;
+
+    @ApiModelProperty(value = "鏄惁鍙洿鎹㈡淳閬e崟浣� 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍙洿鎹㈡淳閬e崟浣� 0鍚� 1鏄�")
+    private Integer canChangeUnit;
+
+    @ApiModelProperty(value = "鎵瑰噺鏄惁浠呮敮鎸佹浛鎹� 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鎵瑰噺鏄惁浠呮敮鎸佹浛鎹� 0鍚� 1鏄�")
+    private Integer delOnlyReplace;
+
+    @ApiModelProperty(value = "鎵垮寘鍏徃")
+    @ExcelColumn(name="鎵垮寘鍏徃")
+    private String companyName;
+
 }
diff --git a/server/service/src/main/java/com/doumee/service/business/CompanyDepartmentService.java b/server/service/src/main/java/com/doumee/service/business/CompanyDepartmentService.java
new file mode 100644
index 0000000..9dc83fe
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/CompanyDepartmentService.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.CompanyDepartment;
+import java.util.List;
+
+/**
+ * 浼佷笟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface CompanyDepartmentService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(CompanyDepartment companyDepartment);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     */
+    void delete(CompanyDepartment companyDepartment);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     */
+    void updateById(CompanyDepartment companyDepartment);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param companyDepartments 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<CompanyDepartment> companyDepartments);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return CompanyDepartment
+     */
+    CompanyDepartment findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     * @return CompanyDepartment
+     */
+    CompanyDepartment findOne(CompanyDepartment companyDepartment);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     * @return List<CompanyDepartment>
+     */
+    List<CompanyDepartment> findList(CompanyDepartment companyDepartment);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<CompanyDepartment>
+     */
+    PageData<CompanyDepartment> findPage(PageWrap<CompanyDepartment> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param companyDepartment 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(CompanyDepartment companyDepartment);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/CompanyUserApplyService.java b/server/service/src/main/java/com/doumee/service/business/CompanyUserApplyService.java
new file mode 100644
index 0000000..a52d1d6
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/CompanyUserApplyService.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.CompanyUserApply;
+import java.util.List;
+
+/**
+ * 闆嗗洟鐢宠璁板綍琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface CompanyUserApplyService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(CompanyUserApply companyUserApply);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     */
+    void delete(CompanyUserApply companyUserApply);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     */
+    void updateById(CompanyUserApply companyUserApply);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param companyUserApplys 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<CompanyUserApply> companyUserApplys);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return CompanyUserApply
+     */
+    CompanyUserApply findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     * @return CompanyUserApply
+     */
+    CompanyUserApply findOne(CompanyUserApply companyUserApply);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     * @return List<CompanyUserApply>
+     */
+    List<CompanyUserApply> findList(CompanyUserApply companyUserApply);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<CompanyUserApply>
+     */
+    PageData<CompanyUserApply> findPage(PageWrap<CompanyUserApply> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param companyUserApply 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(CompanyUserApply companyUserApply);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/ContractService.java b/server/service/src/main/java/com/doumee/service/business/ContractService.java
new file mode 100644
index 0000000..66cac37
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/ContractService.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.Contract;
+import java.util.List;
+
+/**
+ * 鍚堝悓淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/10/28 19:16
+ */
+public interface ContractService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param contract 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(Contract contract);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param contract 瀹炰綋瀵硅薄
+     */
+    void delete(Contract contract);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param contract 瀹炰綋瀵硅薄
+     */
+    void updateById(Contract contract);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param contracts 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<Contract> contracts);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return Contract
+     */
+    Contract findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param contract 瀹炰綋瀵硅薄
+     * @return Contract
+     */
+    Contract findOne(Contract contract);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param contract 瀹炰綋瀵硅薄
+     * @return List<Contract>
+     */
+    List<Contract> findList(Contract contract);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<Contract>
+     */
+    PageData<Contract> findPage(PageWrap<Contract> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param contract 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(Contract contract);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/SolutionsBaseService.java b/server/service/src/main/java/com/doumee/service/business/SolutionsBaseService.java
index 90d1a7d..b99c247 100644
--- a/server/service/src/main/java/com/doumee/service/business/SolutionsBaseService.java
+++ b/server/service/src/main/java/com/doumee/service/business/SolutionsBaseService.java
@@ -6,9 +6,9 @@
 import java.util.List;
 
 /**
- * 淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛塖ervice瀹氫箟
+ * 淇濋櫓鏂规淇℃伅琛⊿ervice瀹氫箟
  * @author 姹熻箘韫�
- * @date 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
 public interface SolutionsBaseService {
 
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyDepartmentServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyDepartmentServiceImpl.java
new file mode 100644
index 0000000..86abd9d
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyDepartmentServiceImpl.java
@@ -0,0 +1,169 @@
+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.CompanyDepartmentMapper;
+import com.doumee.dao.business.model.CompanyDepartment;
+import com.doumee.service.business.CompanyDepartmentService;
+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 2024/10/28 19:16
+ */
+@Service
+public class CompanyDepartmentServiceImpl implements CompanyDepartmentService {
+
+    @Autowired
+    private CompanyDepartmentMapper companyDepartmentMapper;
+
+    @Override
+    public Integer create(CompanyDepartment companyDepartment) {
+        companyDepartmentMapper.insert(companyDepartment);
+        return companyDepartment.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        companyDepartmentMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(CompanyDepartment companyDepartment) {
+        UpdateWrapper<CompanyDepartment> deleteWrapper = new UpdateWrapper<>(companyDepartment);
+        companyDepartmentMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        companyDepartmentMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(CompanyDepartment companyDepartment) {
+        companyDepartmentMapper.updateById(companyDepartment);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<CompanyDepartment> companyDepartments) {
+        if (CollectionUtils.isEmpty(companyDepartments)) {
+            return;
+        }
+        for (CompanyDepartment companyDepartment: companyDepartments) {
+            this.updateById(companyDepartment);
+        }
+    }
+
+    @Override
+    public CompanyDepartment findById(Integer id) {
+        return companyDepartmentMapper.selectById(id);
+    }
+
+    @Override
+    public CompanyDepartment findOne(CompanyDepartment companyDepartment) {
+        QueryWrapper<CompanyDepartment> wrapper = new QueryWrapper<>(companyDepartment);
+        return companyDepartmentMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<CompanyDepartment> findList(CompanyDepartment companyDepartment) {
+        QueryWrapper<CompanyDepartment> wrapper = new QueryWrapper<>(companyDepartment);
+        return companyDepartmentMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<CompanyDepartment> findPage(PageWrap<CompanyDepartment> pageWrap) {
+        IPage<CompanyDepartment> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<CompanyDepartment> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(CompanyDepartment::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(CompanyDepartment::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(CompanyDepartment::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(CompanyDepartment::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getImgurl() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getImgurl, pageWrap.getModel().getImgurl());
+        }
+        if (pageWrap.getModel().getType() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getType, pageWrap.getModel().getType());
+        }
+        if (pageWrap.getModel().getCode() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getCode, pageWrap.getModel().getCode());
+        }
+        if (pageWrap.getModel().getParentId() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getParentId, pageWrap.getModel().getParentId());
+        }
+        if (pageWrap.getModel().getLinkName() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getLinkName, pageWrap.getModel().getLinkName());
+        }
+        if (pageWrap.getModel().getLinkPhone() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getLinkPhone, pageWrap.getModel().getLinkPhone());
+        }
+        if (pageWrap.getModel().getHeadId() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getHeadId, pageWrap.getModel().getHeadId());
+        }
+        if (pageWrap.getModel().getIdPath() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getIdPath, pageWrap.getModel().getIdPath());
+        }
+        if (pageWrap.getModel().getNamePath() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getNamePath, pageWrap.getModel().getNamePath());
+        }
+        if (pageWrap.getModel().getCompanyId() != null) {
+            queryWrapper.lambda().eq(CompanyDepartment::getCompanyId, pageWrap.getModel().getCompanyId());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(companyDepartmentMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(CompanyDepartment companyDepartment) {
+        QueryWrapper<CompanyDepartment> wrapper = new QueryWrapper<>(companyDepartment);
+        return companyDepartmentMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserApplyServiceImpl.java
new file mode 100644
index 0000000..fcfbb13
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserApplyServiceImpl.java
@@ -0,0 +1,155 @@
+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.CompanyUserApplyMapper;
+import com.doumee.dao.business.model.CompanyUserApply;
+import com.doumee.service.business.CompanyUserApplyService;
+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 2024/10/28 19:16
+ */
+@Service
+public class CompanyUserApplyServiceImpl implements CompanyUserApplyService {
+
+    @Autowired
+    private CompanyUserApplyMapper companyUserApplyMapper;
+
+    @Override
+    public Integer create(CompanyUserApply companyUserApply) {
+        companyUserApplyMapper.insert(companyUserApply);
+        return companyUserApply.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        companyUserApplyMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(CompanyUserApply companyUserApply) {
+        UpdateWrapper<CompanyUserApply> deleteWrapper = new UpdateWrapper<>(companyUserApply);
+        companyUserApplyMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        companyUserApplyMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(CompanyUserApply companyUserApply) {
+        companyUserApplyMapper.updateById(companyUserApply);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<CompanyUserApply> companyUserApplys) {
+        if (CollectionUtils.isEmpty(companyUserApplys)) {
+            return;
+        }
+        for (CompanyUserApply companyUserApply: companyUserApplys) {
+            this.updateById(companyUserApply);
+        }
+    }
+
+    @Override
+    public CompanyUserApply findById(Integer id) {
+        return companyUserApplyMapper.selectById(id);
+    }
+
+    @Override
+    public CompanyUserApply findOne(CompanyUserApply companyUserApply) {
+        QueryWrapper<CompanyUserApply> wrapper = new QueryWrapper<>(companyUserApply);
+        return companyUserApplyMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<CompanyUserApply> findList(CompanyUserApply companyUserApply) {
+        QueryWrapper<CompanyUserApply> wrapper = new QueryWrapper<>(companyUserApply);
+        return companyUserApplyMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<CompanyUserApply> findPage(PageWrap<CompanyUserApply> pageWrap) {
+        IPage<CompanyUserApply> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<CompanyUserApply> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(CompanyUserApply::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(CompanyUserApply::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(CompanyUserApply::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(CompanyUserApply::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getCompanyIds() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getCompanyIds, pageWrap.getModel().getCompanyIds());
+        }
+        if (pageWrap.getModel().getUserId() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getUserId, pageWrap.getModel().getUserId());
+        }
+        if (pageWrap.getModel().getContent() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getContent, pageWrap.getModel().getContent());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getCompanyNames() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getCompanyNames, pageWrap.getModel().getCompanyNames());
+        }
+        if (pageWrap.getModel().getCheckorId() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getCheckorId, pageWrap.getModel().getCheckorId());
+        }
+        if (pageWrap.getModel().getCheckDate() != null) {
+            queryWrapper.lambda().ge(CompanyUserApply::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate()));
+            queryWrapper.lambda().le(CompanyUserApply::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()));
+        }
+        if (pageWrap.getModel().getCheckInfo() != null) {
+            queryWrapper.lambda().eq(CompanyUserApply::getCheckInfo, pageWrap.getModel().getCheckInfo());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(companyUserApplyMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(CompanyUserApply companyUserApply) {
+        QueryWrapper<CompanyUserApply> wrapper = new QueryWrapper<>(companyUserApply);
+        return companyUserApplyMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ContractServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ContractServiceImpl.java
new file mode 100644
index 0000000..655bfe3
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ContractServiceImpl.java
@@ -0,0 +1,198 @@
+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.ContractMapper;
+import com.doumee.dao.business.model.Contract;
+import com.doumee.service.business.ContractService;
+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 2024/10/28 19:16
+ */
+@Service
+public class ContractServiceImpl implements ContractService {
+
+    @Autowired
+    private ContractMapper contractMapper;
+
+    @Override
+    public Integer create(Contract contract) {
+        contractMapper.insert(contract);
+        return contract.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        contractMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(Contract contract) {
+        UpdateWrapper<Contract> deleteWrapper = new UpdateWrapper<>(contract);
+        contractMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        contractMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(Contract contract) {
+        contractMapper.updateById(contract);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<Contract> contracts) {
+        if (CollectionUtils.isEmpty(contracts)) {
+            return;
+        }
+        for (Contract contract: contracts) {
+            this.updateById(contract);
+        }
+    }
+
+    @Override
+    public Contract findById(Integer id) {
+        return contractMapper.selectById(id);
+    }
+
+    @Override
+    public Contract findOne(Contract contract) {
+        QueryWrapper<Contract> wrapper = new QueryWrapper<>(contract);
+        return contractMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<Contract> findList(Contract contract) {
+        QueryWrapper<Contract> wrapper = new QueryWrapper<>(contract);
+        return contractMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<Contract> findPage(PageWrap<Contract> pageWrap) {
+        IPage<Contract> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<Contract> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(Contract::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(Contract::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(Contract::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(Contract::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(Contract::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(Contract::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(Contract::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(Contract::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(Contract::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(Contract::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getCompanyId() != null) {
+            queryWrapper.lambda().eq(Contract::getCompanyId, pageWrap.getModel().getCompanyId());
+        }
+        if (pageWrap.getModel().getContent() != null) {
+            queryWrapper.lambda().eq(Contract::getContent, pageWrap.getModel().getContent());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(Contract::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getComSignUserId() != null) {
+            queryWrapper.lambda().eq(Contract::getComSignUserId, pageWrap.getModel().getComSignUserId());
+        }
+        if (pageWrap.getModel().getComSignDate() != null) {
+            queryWrapper.lambda().ge(Contract::getComSignDate, Utils.Date.getStart(pageWrap.getModel().getComSignDate()));
+            queryWrapper.lambda().le(Contract::getComSignDate, Utils.Date.getEnd(pageWrap.getModel().getComSignDate()));
+        }
+        if (pageWrap.getModel().getComSignInfo() != null) {
+            queryWrapper.lambda().eq(Contract::getComSignInfo, pageWrap.getModel().getComSignInfo());
+        }
+        if (pageWrap.getModel().getType() != null) {
+            queryWrapper.lambda().eq(Contract::getType, pageWrap.getModel().getType());
+        }
+        if (pageWrap.getModel().getSignUserId() != null) {
+            queryWrapper.lambda().eq(Contract::getSignUserId, pageWrap.getModel().getSignUserId());
+        }
+        if (pageWrap.getModel().getSignDate() != null) {
+            queryWrapper.lambda().ge(Contract::getSignDate, Utils.Date.getStart(pageWrap.getModel().getSignDate()));
+            queryWrapper.lambda().le(Contract::getSignDate, Utils.Date.getEnd(pageWrap.getModel().getSignDate()));
+        }
+        if (pageWrap.getModel().getSignInfo() != null) {
+            queryWrapper.lambda().eq(Contract::getSignInfo, pageWrap.getModel().getSignInfo());
+        }
+        if (pageWrap.getModel().getFileUrl() != null) {
+            queryWrapper.lambda().eq(Contract::getFileUrl, pageWrap.getModel().getFileUrl());
+        }
+        if (pageWrap.getModel().getFileSignUrl() != null) {
+            queryWrapper.lambda().eq(Contract::getFileSignUrl, pageWrap.getModel().getFileSignUrl());
+        }
+        if (pageWrap.getModel().getDoneFileUrl() != null) {
+            queryWrapper.lambda().eq(Contract::getDoneFileUrl, pageWrap.getModel().getDoneFileUrl());
+        }
+        if (pageWrap.getModel().getAppyno() != null) {
+            queryWrapper.lambda().eq(Contract::getAppyno, pageWrap.getModel().getAppyno());
+        }
+        if (pageWrap.getModel().getDoneApplyno() != null) {
+            queryWrapper.lambda().eq(Contract::getDoneApplyno, pageWrap.getModel().getDoneApplyno());
+        }
+        if (pageWrap.getModel().getStartTime() != null) {
+            queryWrapper.lambda().ge(Contract::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime()));
+            queryWrapper.lambda().le(Contract::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime()));
+        }
+        if (pageWrap.getModel().getEndTime() != null) {
+            queryWrapper.lambda().ge(Contract::getEndTime, Utils.Date.getStart(pageWrap.getModel().getEndTime()));
+            queryWrapper.lambda().le(Contract::getEndTime, Utils.Date.getEnd(pageWrap.getModel().getEndTime()));
+        }
+        if (pageWrap.getModel().getCancelDate() != null) {
+            queryWrapper.lambda().ge(Contract::getCancelDate, Utils.Date.getStart(pageWrap.getModel().getCancelDate()));
+            queryWrapper.lambda().le(Contract::getCancelDate, Utils.Date.getEnd(pageWrap.getModel().getCancelDate()));
+        }
+        if (pageWrap.getModel().getCancelUserId() != null) {
+            queryWrapper.lambda().eq(Contract::getCancelUserId, pageWrap.getModel().getCancelUserId());
+        }
+        if (pageWrap.getModel().getCancelInfo() != null) {
+            queryWrapper.lambda().eq(Contract::getCancelInfo, pageWrap.getModel().getCancelInfo());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(contractMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(Contract contract) {
+        QueryWrapper<Contract> wrapper = new QueryWrapper<>(contract);
+        return contractMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java
index 3ac4eef..8e5ea03 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java
@@ -17,9 +17,9 @@
 import java.util.List;
 
 /**
- * 淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛塖ervice瀹炵幇
+ * 淇濋櫓鏂规淇℃伅琛⊿ervice瀹炵幇
  * @author 姹熻箘韫�
- * @date 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
 @Service
 public class SolutionsBaseServiceImpl implements SolutionsBaseService {
@@ -127,35 +127,14 @@
         if (pageWrap.getModel().getValidType() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getValidType, pageWrap.getModel().getValidType());
         }
-        if (pageWrap.getModel().getType() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getType, pageWrap.getModel().getType());
-        }
         if (pageWrap.getModel().getMinAge() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getMinAge, pageWrap.getModel().getMinAge());
         }
         if (pageWrap.getModel().getMaxAge() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getMaxAge, pageWrap.getModel().getMaxAge());
         }
-        if (pageWrap.getModel().getPrice() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getPrice, pageWrap.getModel().getPrice());
-        }
-        if (pageWrap.getModel().getTimeUnit() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getTimeUnit, pageWrap.getModel().getTimeUnit());
-        }
-        if (pageWrap.getModel().getInsureCycle() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getInsureCycle, pageWrap.getModel().getInsureCycle());
-        }
-        if (pageWrap.getModel().getInsureCycleUnit() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getInsureCycleUnit, pageWrap.getModel().getInsureCycleUnit());
-        }
-        if (pageWrap.getModel().getPriceCycleUnit() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getPriceCycleUnit, pageWrap.getModel().getPriceCycleUnit());
-        }
         if (pageWrap.getModel().getSingleWorktype() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getSingleWorktype, pageWrap.getModel().getSingleWorktype());
-        }
-        if (pageWrap.getModel().getEmail() != null) {
-            queryWrapper.lambda().eq(SolutionsBase::getEmail, pageWrap.getModel().getEmail());
         }
         if (pageWrap.getModel().getSpecialAgreement() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getSpecialAgreement, pageWrap.getModel().getSpecialAgreement());
@@ -169,6 +148,42 @@
         if (pageWrap.getModel().getVersion() != null) {
             queryWrapper.lambda().eq(SolutionsBase::getVersion, pageWrap.getModel().getVersion());
         }
+        if (pageWrap.getModel().getDataType() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getDataType, pageWrap.getModel().getDataType());
+        }
+        if (pageWrap.getModel().getBaseId() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getBaseId, pageWrap.getModel().getBaseId());
+        }
+        if (pageWrap.getModel().getSignKeyword() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getSignKeyword, pageWrap.getModel().getSignKeyword());
+        }
+        if (pageWrap.getModel().getValidTypeNum() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getValidTypeNum, pageWrap.getModel().getValidTypeNum());
+        }
+        if (pageWrap.getModel().getShopId() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getShopId, pageWrap.getModel().getShopId());
+        }
+        if (pageWrap.getModel().getAddValidDays() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getAddValidDays, pageWrap.getModel().getAddValidDays());
+        }
+        if (pageWrap.getModel().getDelValidDays() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getDelValidDays, pageWrap.getModel().getDelValidDays());
+        }
+        if (pageWrap.getModel().getCanAdd() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getCanAdd, pageWrap.getModel().getCanAdd());
+        }
+        if (pageWrap.getModel().getCanReduce() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getCanReduce, pageWrap.getModel().getCanReduce());
+        }
+        if (pageWrap.getModel().getCanChangeUnit() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getCanChangeUnit, pageWrap.getModel().getCanChangeUnit());
+        }
+        if (pageWrap.getModel().getDelOnlyReplace() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getDelOnlyReplace, pageWrap.getModel().getDelOnlyReplace());
+        }
+        if (pageWrap.getModel().getCompanyName() != null) {
+            queryWrapper.lambda().eq(SolutionsBase::getCompanyName, pageWrap.getModel().getCompanyName());
+        }
         for(PageWrap.SortData sortData: pageWrap.getSorts()) {
             if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                 queryWrapper.orderByDesc(sortData.getProperty());
diff --git a/server/shop/src/main/java/com/doumee/api/business/CompanyDepartmentController.java b/server/shop/src/main/java/com/doumee/api/business/CompanyDepartmentController.java
new file mode 100644
index 0000000..35a4621
--- /dev/null
+++ b/server/shop/src/main/java/com/doumee/api/business/CompanyDepartmentController.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.CompanyDepartment;
+import com.doumee.service.business.CompanyDepartmentService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "浼佷笟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/companyDepartment")
+public class CompanyDepartmentController extends BaseController {
+
+    @Autowired
+    private CompanyDepartmentService companyDepartmentService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:companydepartment:create")
+    public ApiResponse create(@RequestBody CompanyDepartment companyDepartment) {
+        return ApiResponse.success(companyDepartmentService.create(companyDepartment));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:companydepartment:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        companyDepartmentService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:companydepartment: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));
+        }
+        companyDepartmentService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:companydepartment:update")
+    public ApiResponse updateById(@RequestBody CompanyDepartment companyDepartment) {
+        companyDepartmentService.updateById(companyDepartment);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:companydepartment:query")
+    public ApiResponse<PageData<CompanyDepartment>> findPage (@RequestBody PageWrap<CompanyDepartment> pageWrap) {
+        return ApiResponse.success(companyDepartmentService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:companydepartment:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<CompanyDepartment> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(CompanyDepartment.class).export(companyDepartmentService.findPage(pageWrap).getRecords(), "浼佷笟淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:companydepartment:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(companyDepartmentService.findById(id));
+    }
+}
diff --git a/server/shop/src/main/java/com/doumee/api/business/CompanyUserApplyController.java b/server/shop/src/main/java/com/doumee/api/business/CompanyUserApplyController.java
new file mode 100644
index 0000000..c869c85
--- /dev/null
+++ b/server/shop/src/main/java/com/doumee/api/business/CompanyUserApplyController.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.CompanyUserApply;
+import com.doumee.service.business.CompanyUserApplyService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "闆嗗洟鐢宠璁板綍琛�")
+@RestController
+@RequestMapping("/business/companyUserApply")
+public class CompanyUserApplyController extends BaseController {
+
+    @Autowired
+    private CompanyUserApplyService companyUserApplyService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:companyuserapply:create")
+    public ApiResponse create(@RequestBody CompanyUserApply companyUserApply) {
+        return ApiResponse.success(companyUserApplyService.create(companyUserApply));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:companyuserapply:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        companyUserApplyService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:companyuserapply: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));
+        }
+        companyUserApplyService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:companyuserapply:update")
+    public ApiResponse updateById(@RequestBody CompanyUserApply companyUserApply) {
+        companyUserApplyService.updateById(companyUserApply);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:companyuserapply:query")
+    public ApiResponse<PageData<CompanyUserApply>> findPage (@RequestBody PageWrap<CompanyUserApply> pageWrap) {
+        return ApiResponse.success(companyUserApplyService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:companyuserapply:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<CompanyUserApply> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(CompanyUserApply.class).export(companyUserApplyService.findPage(pageWrap).getRecords(), "闆嗗洟鐢宠璁板綍琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:companyuserapply:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(companyUserApplyService.findById(id));
+    }
+}
diff --git a/server/shop/src/main/java/com/doumee/api/business/ContractController.java b/server/shop/src/main/java/com/doumee/api/business/ContractController.java
new file mode 100644
index 0000000..d392fce
--- /dev/null
+++ b/server/shop/src/main/java/com/doumee/api/business/ContractController.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.Contract;
+import com.doumee.service.business.ContractService;
+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 2024/10/28 19:16
+ */
+@Api(tags = "鍚堝悓淇℃伅琛�")
+@RestController
+@RequestMapping("/business/contract")
+public class ContractController extends BaseController {
+
+    @Autowired
+    private ContractService contractService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:contract:create")
+    public ApiResponse create(@RequestBody Contract contract) {
+        return ApiResponse.success(contractService.create(contract));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:contract:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        contractService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:contract: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));
+        }
+        contractService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:contract:update")
+    public ApiResponse updateById(@RequestBody Contract contract) {
+        contractService.updateById(contract);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:contract:query")
+    public ApiResponse<PageData<Contract>> findPage (@RequestBody PageWrap<Contract> pageWrap) {
+        return ApiResponse.success(contractService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:contract:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<Contract> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(Contract.class).export(contractService.findPage(pageWrap).getRecords(), "鍚堝悓淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:contract:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(contractService.findById(id));
+    }
+}
diff --git a/server/shop/src/main/java/com/doumee/api/business/SolutionsBaseController.java b/server/shop/src/main/java/com/doumee/api/business/SolutionsBaseController.java
index 0d8b61a..c1f73b4 100644
--- a/server/shop/src/main/java/com/doumee/api/business/SolutionsBaseController.java
+++ b/server/shop/src/main/java/com/doumee/api/business/SolutionsBaseController.java
@@ -4,25 +4,25 @@
 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.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
 import com.doumee.dao.business.model.SolutionsBase;
 import com.doumee.service.business.SolutionsBaseService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
+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 2024/01/16 10:03
+ * @date 2024/10/28 19:16
  */
-@Api(tags = "淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�")
+@Api(tags = "淇濋櫓鏂规淇℃伅琛�")
 @RestController
 @RequestMapping("/business/solutionsBase")
 public class SolutionsBaseController extends BaseController {
@@ -78,7 +78,7 @@
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:solutionsbase:exportExcel")
     public void exportExcel (@RequestBody PageWrap<SolutionsBase> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(SolutionsBase.class).export(solutionsBaseService.findPage(pageWrap).getRecords(), "淇濋櫓鏂规淇℃伅琛�(鍩鸿〃锛�", response);
+        ExcelExporter.build(SolutionsBase.class).export(solutionsBaseService.findPage(pageWrap).getRecords(), "淇濋櫓鏂规淇℃伅琛�", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
diff --git a/server/shop/src/main/resources/application.yml b/server/shop/src/main/resources/application.yml
index b5c9b1e..0252e02 100644
--- a/server/shop/src/main/resources/application.yml
+++ b/server/shop/src/main/resources/application.yml
@@ -12,7 +12,7 @@
 #  application:git
 #    name: doumeemes
   profiles:
-    active: pro
+    active: dev
 
   # JSON杩斿洖閰嶇疆
   jackson:

--
Gitblit v1.9.3