From bb32acfe7b46f4353007233755dd417fce7f952e Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期二, 12 三月 2024 11:57:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 db/business.union_apply.permissions.sql                                                   |    6 
 server/service/src/main/java/com/doumee/dao/business/model/Company.java                   |    4 
 server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java                |  106 ++++++
 server/company/src/main/java/com/doumee/api/business/UnionChangeController.java           |   90 +++++
 server/service/src/main/java/com/doumee/dao/business/UnionApplyMapper.java                |   12 
 server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java         |    3 
 server/service/src/main/java/com/doumee/service/business/UnionChangeService.java          |   97 +++++
 server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java  |  169 +++++++++
 server/service/src/main/java/com/doumee/dao/business/UnionChangeMapper.java               |   12 
 db/business.union_change.permissions.sql                                                  |    6 
 server/company/src/main/java/com/doumee/api/business/UnionApplyController.java            |   90 +++++
 server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java               |    4 
 server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java               |   92 +++++
 server/service/src/main/java/com/doumee/service/business/UnionApplyService.java           |   97 +++++
 server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java |  159 +++++++++
 server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java           |   10 
 server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java            |    3 
 server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java                  |    5 
 server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java               |    3 
 server/service/src/main/java/com/doumee/dao/business/model/Insurance.java                 |    3 
 20 files changed, 959 insertions(+), 12 deletions(-)

diff --git a/db/business.union_apply.permissions.sql b/db/business.union_apply.permissions.sql
new file mode 100644
index 0000000..6a3d7c9
--- /dev/null
+++ b/db/business.union_apply.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionapply:create', '鏂板缓鍚堝苟鎶曚繚鍗曚俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionapply:delete', '鍒犻櫎鍚堝苟鎶曚繚鍗曚俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionapply:update', '淇敼鍚堝苟鎶曚繚鍗曚俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionapply:query', '鏌ヨ鍚堝苟鎶曚繚鍗曚俊鎭〃', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionapply:exportExcel', '瀵煎嚭鍚堝苟鎶曚繚鍗曚俊鎭〃(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/db/business.union_change.permissions.sql b/db/business.union_change.permissions.sql
new file mode 100644
index 0000000..5272af2
--- /dev/null
+++ b/db/business.union_change.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionchange:create', '鏂板缓鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionchange:delete', '鍒犻櫎鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionchange:update', '淇敼鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionchange:query', '鏌ヨ鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:unionchange:exportExcel', '瀵煎嚭鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java b/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java
new file mode 100644
index 0000000..d3e1152
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/UnionApplyController.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.UnionApply;
+import com.doumee.service.business.UnionApplyService;
+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/03/12 11:34
+ */
+@Api(tags = "鍚堝苟鎶曚繚鍗曚俊鎭〃")
+@RestController
+@RequestMapping("/business/unionApply")
+public class UnionApplyController extends BaseController {
+
+    @Autowired
+    private UnionApplyService unionApplyService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:unionapply:create")
+    public ApiResponse create(@RequestBody UnionApply unionApply) {
+        return ApiResponse.success(unionApplyService.create(unionApply));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:unionapply:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        unionApplyService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:unionapply: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));
+        }
+        unionApplyService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:unionapply:update")
+    public ApiResponse updateById(@RequestBody UnionApply unionApply) {
+        unionApplyService.updateById(unionApply);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:unionapply:query")
+    public ApiResponse<PageData<UnionApply>> findPage (@RequestBody PageWrap<UnionApply> pageWrap) {
+        return ApiResponse.success(unionApplyService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:unionapply:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<UnionApply> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(UnionApply.class).export(unionApplyService.findPage(pageWrap).getRecords(), "鍚堝苟鎶曚繚鍗曚俊鎭〃", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:unionapply:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(unionApplyService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java b/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java
new file mode 100644
index 0000000..1f3017d
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/UnionChangeController.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.UnionChange;
+import com.doumee.service.business.UnionChangeService;
+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/03/12 11:34
+ */
+@Api(tags = "鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/unionChange")
+public class UnionChangeController extends BaseController {
+
+    @Autowired
+    private UnionChangeService unionChangeService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:unionchange:create")
+    public ApiResponse create(@RequestBody UnionChange unionChange) {
+        return ApiResponse.success(unionChangeService.create(unionChange));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:unionchange:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        unionChangeService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:unionchange: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));
+        }
+        unionChangeService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:unionchange:update")
+    public ApiResponse updateById(@RequestBody UnionChange unionChange) {
+        unionChangeService.updateById(unionChange);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:unionchange:query")
+    public ApiResponse<PageData<UnionChange>> findPage (@RequestBody PageWrap<UnionChange> pageWrap) {
+        return ApiResponse.success(unionChangeService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:unionchange:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<UnionChange> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(UnionChange.class).export(unionChangeService.findPage(pageWrap).getRecords(), "鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:unionchange:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(unionChangeService.findById(id));
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/UnionApplyMapper.java b/server/service/src/main/java/com/doumee/dao/business/UnionApplyMapper.java
new file mode 100644
index 0000000..a225e3d
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/UnionApplyMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.UnionApply;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+public interface UnionApplyMapper extends BaseMapper<UnionApply> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/UnionChangeMapper.java b/server/service/src/main/java/com/doumee/dao/business/UnionChangeMapper.java
new file mode 100644
index 0000000..0b99447
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/UnionChangeMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.UnionChange;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+public interface UnionChangeMapper extends BaseMapper<UnionChange> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
index 2f2369a..0a023a4 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
@@ -58,6 +58,9 @@
     @ApiModelProperty(value = "鍔犲噺淇濈敵璇风紪鐮侊紙鍏宠仈apply_change)", example = "1")
     @ExcelColumn(name="鍔犲噺淇濈敵璇风紪鐮侊紙鍏宠仈apply_change)")
     private Integer applyChangeId;
+    @ApiModelProperty(value = "鍔犲噺淇濆悎骞跺崟缂栫爜锛堝叧鑱攗nion_change)", example = "1")
+    @ExcelColumn(name="鍔犲噺淇濆悎骞跺崟缂栫爜锛堝叧鑱攗nion_change)")
+    private Integer unionChangeId;
 
     @ApiModelProperty(value = "浼佷笟缂栫爜锛堝叧鑱攎emeber锛�", example = "1")
     @ExcelColumn(name="浼佷笟缂栫爜锛堝叧鑱攎emeber锛�")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
index a9025e9..61deb0b 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
@@ -89,7 +89,9 @@
     @ApiModelProperty(value = "鐘舵�� 0寰呯缃� 1宸茬绔� 2宸蹭笂浼犳壒鍗� 3閫�鍥炵敵璇� (寰呯缃�) 4閫�鍥炵敵璇� (宸茬绔�)  5骞冲彴鍚屾剰锛堝凡閫�鍥烇級 6宸插叧闂� ")
     @ExcelColumn(name="鐘舵�� 0寰呯缃� 1宸茬绔� 2宸蹭笂浼犳壒鍗� 3閫�鍥炵敵璇� (寰呯缃�) 4閫�鍥炵敵璇� (宸茬绔�)  5骞冲彴鍚屾剰锛堝凡閫�鍥烇級 6宸插叧闂� ")
     private Integer status;
-
+    @ApiModelProperty(value = "鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_change)", example = "1")
+    @ExcelColumn(name="鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_change)")
+    private Integer unionChange;
     @ApiModelProperty(value = "鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
     private String signApplyNo;
     @ApiModelProperty(value = "鏈熸湜淇濋櫓鐢熸晥璧锋湡")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
index ac38edf..f52f696 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
@@ -72,7 +72,8 @@
     @ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥璧锋湡")
     @ExcelColumn(name="淇濋櫓鐢熸晥璧锋湡",index =8,width = 12,dateFormat="yyyy-MM-dd HH:mm:ss")
     private Date startTime;
-
+    @ApiModelProperty(value = "鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_apply)", example = "1")
+    private Integer unionApplyId;
     @ApiModelProperty(value = "韬唤璇佸彿鐮�")
     @ExcelColumn(name="韬唤璇佸彿鐮�",index = 5,width = 12)
     private String idcardNo;
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Company.java b/server/service/src/main/java/com/doumee/dao/business/model/Company.java
index c39b7f9..691b1b8 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Company.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Company.java
@@ -70,8 +70,8 @@
     @ExcelColumn(name="鎺掑簭鐮�")
     private Integer sortnum;
 
-    @ApiModelProperty(value = "绫诲瀷 ", example = "1")
-    @ExcelColumn(name="绫诲瀷 ")
+    @ApiModelProperty(value = "绫诲瀷 0浼佷笟 1鍟嗘埛 ", example = "1")
+    @ExcelColumn(name="绫诲瀷 0浼佷笟 1鍟嗘埛 ")
     private Integer type;
 
     @ApiModelProperty(value = "缁熶竴淇$敤浠g爜")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java b/server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java
index 55a59c9..962ef21 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java
@@ -35,7 +35,6 @@
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @ExcelColumn(name="鍒涘缓鏃堕棿")
-
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -44,7 +43,6 @@
 
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
     @ExcelColumn(name="鏇存柊鏃堕棿")
-
     private Date editDate;
 
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@@ -81,16 +79,14 @@
     @ApiModelProperty(value = "鏂规鍚嶇О" )
     @TableField(exist = false)
     private String solutionName  ;
-
-
     @ApiModelProperty(value = "鏂规涓婚敭锛堝叧鑱攕olutions锛�", example = "1")
     @ExcelColumn(name="鏂规涓婚敭锛堝叧鑱攕olutions锛�")
     private Integer solutionId;
-
-
+    @ApiModelProperty(value = "鍟嗘埛涓婚敭锛堝叧鑱攃ompany锛�", example = "1")
+    @ExcelColumn(name="鍟嗘埛涓婚敭锛堝叧鑱攃ompany锛�")
+    private Integer shopId;
     @ApiModelProperty(value = "鏂规瀵硅薄", example = "1")
     @TableField(exist = false)
     private Solutions solution;
-
 
 }
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 fa99d57..38d50cc 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
@@ -76,6 +76,9 @@
     @ApiModelProperty(value = "鍩鸿〃缂栫爜锛堣嚜鍏宠仈锛�", example = "1")
     @ExcelColumn(name="鍩鸿〃缂栫爜锛堣嚜鍏宠仈锛�")
     private Integer baseId;
+    @ApiModelProperty(value = "濮旀墭鍟嗘埛缂栫爜锛堝叧鑱攃ompany锛�", example = "1")
+    @ExcelColumn(name="濮旀墭鍟嗘埛缂栫爜锛堝叧鑱攃ompany锛�")
+    private Integer shopId;
     @ApiModelProperty(value = "宸ョ闆嗗悎", example = "1")
     @TableField(exist = false)
     private List<Worktype> worktypeList;
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java b/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
index 8732783..d739927 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
@@ -104,6 +104,9 @@
     @ApiModelProperty(value = "鏈�杩戞搷浣滀汉缂栫爜锛堝叧鑱攕ystem_user)", example = "1")
     @ExcelColumn(name="鏈�杩戞搷浣滀汉缂栫爜锛堝叧鑱攕ystem_user)")
     private Integer checkUserId;
+    @ApiModelProperty(value = "鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_apply)", example = "1")
+    @ExcelColumn(name="鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_apply)")
+    private Integer unionApplyId;
 
     @ApiModelProperty(value = "鍗曞彿")
     @ExcelColumn(name="鍗曞彿")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java b/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java
new file mode 100644
index 0000000..0ec7761
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.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;
+import java.math.BigDecimal;
+
+/**
+ * 鍚堝苟鎶曚繚鍗曚俊鎭〃
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+@Data
+@ApiModel("鍚堝苟鎶曚繚鍗曚俊鎭〃")
+@TableName("`union_apply`")
+public class UnionApply {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+    @ApiModelProperty(value = "鍟嗘埛缂栫爜锛堝叧鑱攃ompany锛�", example = "1")
+    @ExcelColumn(name="鍟嗘埛缂栫爜锛堝叧鑱攃ompany锛�")
+    private Integer companyId;
+
+    @ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥姝㈡湡")
+    @ExcelColumn(name="瀹為檯淇濋櫓鐢熸晥姝㈡湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endTime;
+
+    @ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥璧锋湡")
+    @ExcelColumn(name="瀹為檯淇濋櫓鐢熸晥璧锋湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date startTime;
+
+    @ApiModelProperty(value = "鏈�杩戞搷浣滄椂闂�")
+    @ExcelColumn(name="鏈�杩戞搷浣滄椂闂�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date checkDate;
+
+    @ApiModelProperty(value = "鏈�杩戞搷浣滃娉�")
+    @ExcelColumn(name="鏈�杩戞搷浣滃娉�")
+    private String checkInfo;
+
+    @ApiModelProperty(value = "鏈�杩戞搷浣滀汉缂栫爜锛堝叧鑱攕ystem_user)", example = "1")
+    @ExcelColumn(name="鏈�杩戞搷浣滀汉缂栫爜锛堝叧鑱攕ystem_user)")
+    private Integer checkUserId;
+
+    @ApiModelProperty(value = "鍗曞彿")
+    @ExcelColumn(name="鍗曞彿")
+    private String code;
+
+    @ApiModelProperty(value = "鐘舵�� 0寰呬笂浼犳姇淇濆崟 1寰呯缃叉姇淇濆崟 2寰呬笂浼犱繚鍗� 3宸蹭笂浼犳壒鍗� 4宸查��鍥�", example = "1")
+    @ExcelColumn(name="鐘舵�� 0寰呬笂浼犳姇淇濆崟 1寰呯缃叉姇淇濆崟 2寰呬笂浼犱繚鍗� 3宸蹭笂浼犳壒鍗� 4宸查��鍥�")
+    private Integer status;
+
+    @ApiModelProperty(value = "褰撳墠浜х敓璐圭敤", example = "1")
+    @ExcelColumn(name="褰撳墠浜х敓璐圭敤")
+    private BigDecimal currentFee;
+
+    @ApiModelProperty(value = "鎬昏垂鐢�", example = "1")
+    @ExcelColumn(name="鎬昏垂鐢�")
+    private BigDecimal fee;
+
+    @ApiModelProperty(value = "鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
+    @ExcelColumn(name="鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
+    private String signApplyNo;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java b/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java
new file mode 100644
index 0000000..4929fc4
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java
@@ -0,0 +1,92 @@
+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/03/12 11:34
+ */
+@Data
+@ApiModel("鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�")
+@TableName("`union_change`")
+public class UnionChange {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+    @ApiModelProperty(value = "鍟嗘埛缂栫爜锛堝叧鑱攃ompany)", example = "1")
+    @ExcelColumn(name="鍟嗘埛缂栫爜锛堝叧鑱攃ompany)")
+    private Integer shopId;
+
+    @ApiModelProperty(value = "鍗曞彿")
+    @ExcelColumn(name="鍗曞彿")
+    private String code;
+
+    @ApiModelProperty(value = "鎵瑰崟鐢熸晥鏃堕棿")
+    @ExcelColumn(name="鎵瑰崟鐢熸晥鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date applyStartTime;
+
+    @ApiModelProperty(value = "鐘舵�� 0寰呯缃茬敵璇峰崟 1寰呬笂浼犳壒鍗� 2宸蹭笂浼犳壒鍗� 3閫�鍥�")
+    @ExcelColumn(name="鐘舵�� 0寰呯缃茬敵璇峰崟 1寰呬笂浼犳壒鍗� 2宸蹭笂浼犳壒鍗� 3閫�鍥�")
+    private String status;
+
+    @ApiModelProperty(value = "鏈熸湜淇濋櫓鐢熸晥璧锋湡")
+    @ExcelColumn(name="鏈熸湜淇濋櫓鐢熸晥璧锋湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date validTime;
+
+    @ApiModelProperty(value = "鎵瑰崟鍙�")
+    @ExcelColumn(name="鎵瑰崟鍙�")
+    private String validCode;
+
+    @ApiModelProperty(value = "鎿嶄綔绫诲瀷 0鍔犲噺淇� 1鎹㈠巶", example = "1")
+    @ExcelColumn(name="鎿嶄綔绫诲瀷 0鍔犲噺淇� 1鎹㈠巶")
+    private Integer type;
+
+    @ApiModelProperty(value = "鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
+    @ExcelColumn(name="鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
+    private String signApplyNo;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java b/server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java
index 0053dce..76f617f 100644
--- a/server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java
+++ b/server/service/src/main/java/com/doumee/dao/system/model/SystemUser.java
@@ -67,12 +67,15 @@
 
     @ApiModelProperty(value = "浼佷笟缂栫爜")
     private Integer companyId;
-    @ApiModelProperty(value = "绫诲瀷 0骞冲彴鐢ㄦ埛 1浼佷笟鐢ㄦ埛")
+    @ApiModelProperty(value = "绫诲瀷 0骞冲彴鐢ㄦ埛 1浼佷笟鐢ㄦ埛 2鍟嗘埛鐢ㄦ埛")
     private Integer type;
 
     @ApiModelProperty(value = "瀵嗙爜")
     @NotBlank(message = "鍒濆瀵嗙爜涓嶈兘涓虹┖")
     private String password;
+    @ApiModelProperty(value = "openid")
+    @NotBlank(message = "openid")
+    private String openid;
 
     @ApiModelProperty(value = "鐩�")
     private String salt;
diff --git a/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java b/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java
new file mode 100644
index 0000000..b5346b2
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/UnionApplyService.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.UnionApply;
+import java.util.List;
+
+/**
+ * 鍚堝苟鎶曚繚鍗曚俊鎭〃Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+public interface UnionApplyService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param unionApply 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(UnionApply unionApply);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param unionApply 瀹炰綋瀵硅薄
+     */
+    void delete(UnionApply unionApply);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param unionApply 瀹炰綋瀵硅薄
+     */
+    void updateById(UnionApply unionApply);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param unionApplys 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<UnionApply> unionApplys);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return UnionApply
+     */
+    UnionApply findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param unionApply 瀹炰綋瀵硅薄
+     * @return UnionApply
+     */
+    UnionApply findOne(UnionApply unionApply);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param unionApply 瀹炰綋瀵硅薄
+     * @return List<UnionApply>
+     */
+    List<UnionApply> findList(UnionApply unionApply);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<UnionApply>
+     */
+    PageData<UnionApply> findPage(PageWrap<UnionApply> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param unionApply 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(UnionApply unionApply);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java b/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java
new file mode 100644
index 0000000..0e724e7
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/UnionChangeService.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.UnionChange;
+import java.util.List;
+
+/**
+ * 鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+public interface UnionChangeService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param unionChange 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(UnionChange unionChange);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param unionChange 瀹炰綋瀵硅薄
+     */
+    void delete(UnionChange unionChange);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param unionChange 瀹炰綋瀵硅薄
+     */
+    void updateById(UnionChange unionChange);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param unionChanges 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<UnionChange> unionChanges);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return UnionChange
+     */
+    UnionChange findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param unionChange 瀹炰綋瀵硅薄
+     * @return UnionChange
+     */
+    UnionChange findOne(UnionChange unionChange);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param unionChange 瀹炰綋瀵硅薄
+     * @return List<UnionChange>
+     */
+    List<UnionChange> findList(UnionChange unionChange);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<UnionChange>
+     */
+    PageData<UnionChange> findPage(PageWrap<UnionChange> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param unionChange 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(UnionChange unionChange);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java
new file mode 100644
index 0000000..2acd28e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.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.UnionApplyMapper;
+import com.doumee.dao.business.model.UnionApply;
+import com.doumee.service.business.UnionApplyService;
+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;
+
+/**
+ * 鍚堝苟鎶曚繚鍗曚俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+@Service
+public class UnionApplyServiceImpl implements UnionApplyService {
+
+    @Autowired
+    private UnionApplyMapper unionApplyMapper;
+
+    @Override
+    public Integer create(UnionApply unionApply) {
+        unionApplyMapper.insert(unionApply);
+        return unionApply.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        unionApplyMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(UnionApply unionApply) {
+        UpdateWrapper<UnionApply> deleteWrapper = new UpdateWrapper<>(unionApply);
+        unionApplyMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        unionApplyMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(UnionApply unionApply) {
+        unionApplyMapper.updateById(unionApply);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<UnionApply> unionApplys) {
+        if (CollectionUtils.isEmpty(unionApplys)) {
+            return;
+        }
+        for (UnionApply unionApply: unionApplys) {
+            this.updateById(unionApply);
+        }
+    }
+
+    @Override
+    public UnionApply findById(Integer id) {
+        return unionApplyMapper.selectById(id);
+    }
+
+    @Override
+    public UnionApply findOne(UnionApply unionApply) {
+        QueryWrapper<UnionApply> wrapper = new QueryWrapper<>(unionApply);
+        return unionApplyMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<UnionApply> findList(UnionApply unionApply) {
+        QueryWrapper<UnionApply> wrapper = new QueryWrapper<>(unionApply);
+        return unionApplyMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<UnionApply> findPage(PageWrap<UnionApply> pageWrap) {
+        IPage<UnionApply> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<UnionApply> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(UnionApply::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(UnionApply::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(UnionApply::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(UnionApply::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(UnionApply::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(UnionApply::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(UnionApply::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(UnionApply::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(UnionApply::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getCompanyId() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCompanyId, pageWrap.getModel().getCompanyId());
+        }
+        if (pageWrap.getModel().getEndTime() != null) {
+            queryWrapper.lambda().ge(UnionApply::getEndTime, Utils.Date.getStart(pageWrap.getModel().getEndTime()));
+            queryWrapper.lambda().le(UnionApply::getEndTime, Utils.Date.getEnd(pageWrap.getModel().getEndTime()));
+        }
+        if (pageWrap.getModel().getStartTime() != null) {
+            queryWrapper.lambda().ge(UnionApply::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime()));
+            queryWrapper.lambda().le(UnionApply::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime()));
+        }
+        if (pageWrap.getModel().getCheckDate() != null) {
+            queryWrapper.lambda().ge(UnionApply::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate()));
+            queryWrapper.lambda().le(UnionApply::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()));
+        }
+        if (pageWrap.getModel().getCheckInfo() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCheckInfo, pageWrap.getModel().getCheckInfo());
+        }
+        if (pageWrap.getModel().getCheckUserId() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCheckUserId, pageWrap.getModel().getCheckUserId());
+        }
+        if (pageWrap.getModel().getCode() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCode, pageWrap.getModel().getCode());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(UnionApply::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getCurrentFee() != null) {
+            queryWrapper.lambda().eq(UnionApply::getCurrentFee, pageWrap.getModel().getCurrentFee());
+        }
+        if (pageWrap.getModel().getFee() != null) {
+            queryWrapper.lambda().eq(UnionApply::getFee, pageWrap.getModel().getFee());
+        }
+        if (pageWrap.getModel().getSignApplyNo() != null) {
+            queryWrapper.lambda().eq(UnionApply::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(unionApplyMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(UnionApply unionApply) {
+        QueryWrapper<UnionApply> wrapper = new QueryWrapper<>(unionApply);
+        return unionApplyMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
new file mode 100644
index 0000000..56819cd
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
@@ -0,0 +1,159 @@
+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.UnionChangeMapper;
+import com.doumee.dao.business.model.UnionChange;
+import com.doumee.service.business.UnionChangeService;
+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/03/12 11:34
+ */
+@Service
+public class UnionChangeServiceImpl implements UnionChangeService {
+
+    @Autowired
+    private UnionChangeMapper unionChangeMapper;
+
+    @Override
+    public Integer create(UnionChange unionChange) {
+        unionChangeMapper.insert(unionChange);
+        return unionChange.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        unionChangeMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(UnionChange unionChange) {
+        UpdateWrapper<UnionChange> deleteWrapper = new UpdateWrapper<>(unionChange);
+        unionChangeMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        unionChangeMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(UnionChange unionChange) {
+        unionChangeMapper.updateById(unionChange);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<UnionChange> unionChanges) {
+        if (CollectionUtils.isEmpty(unionChanges)) {
+            return;
+        }
+        for (UnionChange unionChange: unionChanges) {
+            this.updateById(unionChange);
+        }
+    }
+
+    @Override
+    public UnionChange findById(Integer id) {
+        return unionChangeMapper.selectById(id);
+    }
+
+    @Override
+    public UnionChange findOne(UnionChange unionChange) {
+        QueryWrapper<UnionChange> wrapper = new QueryWrapper<>(unionChange);
+        return unionChangeMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<UnionChange> findList(UnionChange unionChange) {
+        QueryWrapper<UnionChange> wrapper = new QueryWrapper<>(unionChange);
+        return unionChangeMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<UnionChange> findPage(PageWrap<UnionChange> pageWrap) {
+        IPage<UnionChange> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<UnionChange> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(UnionChange::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(UnionChange::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(UnionChange::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(UnionChange::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(UnionChange::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(UnionChange::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(UnionChange::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(UnionChange::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(UnionChange::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(UnionChange::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getShopId() != null) {
+            queryWrapper.lambda().eq(UnionChange::getShopId, pageWrap.getModel().getShopId());
+        }
+        if (pageWrap.getModel().getCode() != null) {
+            queryWrapper.lambda().eq(UnionChange::getCode, pageWrap.getModel().getCode());
+        }
+        if (pageWrap.getModel().getApplyStartTime() != null) {
+            queryWrapper.lambda().ge(UnionChange::getApplyStartTime, Utils.Date.getStart(pageWrap.getModel().getApplyStartTime()));
+            queryWrapper.lambda().le(UnionChange::getApplyStartTime, Utils.Date.getEnd(pageWrap.getModel().getApplyStartTime()));
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(UnionChange::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getValidTime() != null) {
+            queryWrapper.lambda().ge(UnionChange::getValidTime, Utils.Date.getStart(pageWrap.getModel().getValidTime()));
+            queryWrapper.lambda().le(UnionChange::getValidTime, Utils.Date.getEnd(pageWrap.getModel().getValidTime()));
+        }
+        if (pageWrap.getModel().getValidCode() != null) {
+            queryWrapper.lambda().eq(UnionChange::getValidCode, pageWrap.getModel().getValidCode());
+        }
+        if (pageWrap.getModel().getType() != null) {
+            queryWrapper.lambda().eq(UnionChange::getType, pageWrap.getModel().getType());
+        }
+        if (pageWrap.getModel().getSignApplyNo() != null) {
+            queryWrapper.lambda().eq(UnionChange::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(unionChangeMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(UnionChange unionChange) {
+        QueryWrapper<UnionChange> wrapper = new QueryWrapper<>(unionChange);
+        return unionChangeMapper.selectCount(wrapper);
+    }
+}

--
Gitblit v1.9.3