From 0f4c2247d1da7ef731a58e3d30f4b7b68627a99d Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 07 九月 2023 11:45:34 +0800
Subject: [PATCH] 代码生成

---
 server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java               |   90 ++
 server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java      |  163 ++++
 server/company/src/main/java/com/doumee/CompanyApplication.java                              |    1 
 server/service/src/main/java/com/doumee/dao/business/BaseGoodsParamMapper.java               |   12 
 server/service/src/main/java/com/doumee/dao/business/BaseGoodsMapper.java                    |   12 
 server/service/src/main/java/com/doumee/dao/business/BaseCateParamMapper.java                |   12 
 server/service/src/main/java/com/doumee/service/business/BaseCateParamService.java           |   97 ++
 server/service/src/main/java/com/doumee/dao/business/model/BaseCateParam.java                |   70 +
 server/service/src/main/java/com/doumee/dao/business/BaseCategoryMapper.java                 |   12 
 server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsParamServiceImpl.java |  148 ++++
 server/company/src/main/java/com/doumee/api/business/BaseGoodsParamController.java           |   90 ++
 server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java   |  154 ++++
 server/service/src/main/java/com/doumee/service/business/BaseCategoryService.java            |   97 ++
 server/platform/src/main/java/com/doumee/api/business/BaseCateParamController.java           |   90 ++
 server/service/src/main/java/com/doumee/dao/business/model/CateParam.java                    |    6 
 server/service/src/main/java/com/doumee/dao/business/model/BaseGoodsParam.java               |   78 ++
 server/platform/src/main/java/com/doumee/api/business/BaseGoodsParamController.java          |   90 ++
 server/company/src/main/java/com/doumee/api/business/BaseCateParamController.java            |   90 ++
 server/company/src/main/java/com/doumee/api/business/BaseCategoryController.java             |   90 ++
 server/service/src/main/java/com/doumee/service/business/impl/BaseCateParamServiceImpl.java  |  142 +++
 server/company/src/main/resources/application.yml                                            |    2 
 server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java               |   97 ++
 server/platform/src/main/java/com/doumee/api/business/BaseCategoryController.java            |   90 ++
 server/service/src/main/java/com/doumee/service/business/BaseGoodsParamService.java          |   97 ++
 server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java                    |   99 ++
 server/service/src/main/java/com/doumee/dao/business/model/BaseCategory.java                 |   86 ++
 server/service/src/main/java/com/doumee/dao/business/model/Category.java                     |    6 
 server/company/src/main/java/com/doumee/api/business/BaseGoodsController.java                |   90 ++
 28 files changed, 2,108 insertions(+), 3 deletions(-)

diff --git a/server/company/src/main/java/com/doumee/CompanyApplication.java b/server/company/src/main/java/com/doumee/CompanyApplication.java
index 884105a..3e9fae0 100644
--- a/server/company/src/main/java/com/doumee/CompanyApplication.java
+++ b/server/company/src/main/java/com/doumee/CompanyApplication.java
@@ -15,7 +15,6 @@
 @SpringBootApplication
 @MapperScan("com.doumee.dao")
 public class CompanyApplication {
-
     public static void main(String[] args) {
         ApplicationContext context = SpringApplication.run(CompanyApplication.class);
         context.getEnvironment();
diff --git a/server/company/src/main/java/com/doumee/api/business/BaseCateParamController.java b/server/company/src/main/java/com/doumee/api/business/BaseCateParamController.java
new file mode 100644
index 0000000..69d01c5
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/BaseCateParamController.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.BaseCateParam;
+import com.doumee.service.business.BaseCateParamService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseCateParam")
+public class BaseCateParamController extends BaseController {
+
+    @Autowired
+    private BaseCateParamService baseCateParamService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basecateparam:create")
+    public ApiResponse create(@RequestBody BaseCateParam baseCateParam) {
+        return ApiResponse.success(baseCateParamService.create(baseCateParam));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basecateparam:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseCateParamService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basecateparam: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));
+        }
+        baseCateParamService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basecateparam:update")
+    public ApiResponse updateById(@RequestBody BaseCateParam baseCateParam) {
+        baseCateParamService.updateById(baseCateParam);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basecateparam:query")
+    public ApiResponse<PageData<BaseCateParam>> findPage (@RequestBody PageWrap<BaseCateParam> pageWrap) {
+        return ApiResponse.success(baseCateParamService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basecateparam:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseCateParam> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseCateParam.class).export(baseCateParamService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basecateparam:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseCateParamService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/BaseCategoryController.java b/server/company/src/main/java/com/doumee/api/business/BaseCategoryController.java
new file mode 100644
index 0000000..1b2d62b
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/BaseCategoryController.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.BaseCategory;
+import com.doumee.service.business.BaseCategoryService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍝佺被淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseCategory")
+public class BaseCategoryController extends BaseController {
+
+    @Autowired
+    private BaseCategoryService baseCategoryService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basecategory:create")
+    public ApiResponse create(@RequestBody BaseCategory baseCategory) {
+        return ApiResponse.success(baseCategoryService.create(baseCategory));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basecategory:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseCategoryService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basecategory: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));
+        }
+        baseCategoryService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basecategory:update")
+    public ApiResponse updateById(@RequestBody BaseCategory baseCategory) {
+        baseCategoryService.updateById(baseCategory);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basecategory:query")
+    public ApiResponse<PageData<BaseCategory>> findPage (@RequestBody PageWrap<BaseCategory> pageWrap) {
+        return ApiResponse.success(baseCategoryService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basecategory:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseCategory> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseCategory.class).export(baseCategoryService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍝佺被淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basecategory:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseCategoryService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/BaseGoodsController.java b/server/company/src/main/java/com/doumee/api/business/BaseGoodsController.java
new file mode 100644
index 0000000..61818e1
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/BaseGoodsController.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.BaseGoods;
+import com.doumee.service.business.BaseGoodsService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍟嗗搧淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseGoods")
+public class BaseGoodsController extends BaseController {
+
+    @Autowired
+    private BaseGoodsService baseGoodsService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basegoods:create")
+    public ApiResponse create(@RequestBody BaseGoods baseGoods) {
+        return ApiResponse.success(baseGoodsService.create(baseGoods));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basegoods:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseGoodsService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basegoods: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));
+        }
+        baseGoodsService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basegoods:update")
+    public ApiResponse updateById(@RequestBody BaseGoods baseGoods) {
+        baseGoodsService.updateById(baseGoods);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basegoods:query")
+    public ApiResponse<PageData<BaseGoods>> findPage (@RequestBody PageWrap<BaseGoods> pageWrap) {
+        return ApiResponse.success(baseGoodsService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basegoods:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseGoods> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseGoods.class).export(baseGoodsService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍟嗗搧淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basegoods:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseGoodsService.findById(id));
+    }
+}
diff --git a/server/company/src/main/java/com/doumee/api/business/BaseGoodsParamController.java b/server/company/src/main/java/com/doumee/api/business/BaseGoodsParamController.java
new file mode 100644
index 0000000..7b230bf
--- /dev/null
+++ b/server/company/src/main/java/com/doumee/api/business/BaseGoodsParamController.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.BaseGoodsParam;
+import com.doumee.service.business.BaseGoodsParamService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛�")
+@RestController
+@RequestMapping("/business/baseGoodsParam")
+public class BaseGoodsParamController extends BaseController {
+
+    @Autowired
+    private BaseGoodsParamService baseGoodsParamService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basegoodsparam:create")
+    public ApiResponse create(@RequestBody BaseGoodsParam baseGoodsParam) {
+        return ApiResponse.success(baseGoodsParamService.create(baseGoodsParam));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basegoodsparam:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseGoodsParamService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basegoodsparam: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));
+        }
+        baseGoodsParamService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basegoodsparam:update")
+    public ApiResponse updateById(@RequestBody BaseGoodsParam baseGoodsParam) {
+        baseGoodsParamService.updateById(baseGoodsParam);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basegoodsparam:query")
+    public ApiResponse<PageData<BaseGoodsParam>> findPage (@RequestBody PageWrap<BaseGoodsParam> pageWrap) {
+        return ApiResponse.success(baseGoodsParamService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basegoodsparam:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseGoodsParam> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseGoodsParam.class).export(baseGoodsParamService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basegoodsparam:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseGoodsParamService.findById(id));
+    }
+}
diff --git a/server/company/src/main/resources/application.yml b/server/company/src/main/resources/application.yml
index ee9d370..fc2ec48 100644
--- a/server/company/src/main/resources/application.yml
+++ b/server/company/src/main/resources/application.yml
@@ -31,7 +31,6 @@
     map-underscore-to-camel-case: true
     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
 
-
 # 缂撳瓨鍐呭璁剧疆
 cache:
   session:
@@ -47,7 +46,6 @@
   smart: true
   # 鎺掗櫎璺熻釜鐨刄RL姝e垯
   exclude-patterns: .+/list[a-zA-Z0-9\-\_]*$, .+/tree[a-zA-Z0-9\-\_]*$, .+/page[a-zA-Z0-9\-\_]*$, .+/all[a-zA-Z0-9\-\_]*$, /swagger-resources.*
-
 
 # 鏃ュ織閰嶇疆
 logback:
diff --git a/server/platform/src/main/java/com/doumee/api/business/BaseCateParamController.java b/server/platform/src/main/java/com/doumee/api/business/BaseCateParamController.java
new file mode 100644
index 0000000..69d01c5
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/BaseCateParamController.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.BaseCateParam;
+import com.doumee.service.business.BaseCateParamService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseCateParam")
+public class BaseCateParamController extends BaseController {
+
+    @Autowired
+    private BaseCateParamService baseCateParamService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basecateparam:create")
+    public ApiResponse create(@RequestBody BaseCateParam baseCateParam) {
+        return ApiResponse.success(baseCateParamService.create(baseCateParam));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basecateparam:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseCateParamService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basecateparam: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));
+        }
+        baseCateParamService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basecateparam:update")
+    public ApiResponse updateById(@RequestBody BaseCateParam baseCateParam) {
+        baseCateParamService.updateById(baseCateParam);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basecateparam:query")
+    public ApiResponse<PageData<BaseCateParam>> findPage (@RequestBody PageWrap<BaseCateParam> pageWrap) {
+        return ApiResponse.success(baseCateParamService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basecateparam:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseCateParam> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseCateParam.class).export(baseCateParamService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basecateparam:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseCateParamService.findById(id));
+    }
+}
diff --git a/server/platform/src/main/java/com/doumee/api/business/BaseCategoryController.java b/server/platform/src/main/java/com/doumee/api/business/BaseCategoryController.java
new file mode 100644
index 0000000..1b2d62b
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/BaseCategoryController.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.BaseCategory;
+import com.doumee.service.business.BaseCategoryService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍝佺被淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseCategory")
+public class BaseCategoryController extends BaseController {
+
+    @Autowired
+    private BaseCategoryService baseCategoryService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basecategory:create")
+    public ApiResponse create(@RequestBody BaseCategory baseCategory) {
+        return ApiResponse.success(baseCategoryService.create(baseCategory));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basecategory:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseCategoryService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basecategory: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));
+        }
+        baseCategoryService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basecategory:update")
+    public ApiResponse updateById(@RequestBody BaseCategory baseCategory) {
+        baseCategoryService.updateById(baseCategory);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basecategory:query")
+    public ApiResponse<PageData<BaseCategory>> findPage (@RequestBody PageWrap<BaseCategory> pageWrap) {
+        return ApiResponse.success(baseCategoryService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basecategory:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseCategory> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseCategory.class).export(baseCategoryService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍝佺被淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basecategory:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseCategoryService.findById(id));
+    }
+}
diff --git a/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java
new file mode 100644
index 0000000..61818e1
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.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.BaseGoods;
+import com.doumee.service.business.BaseGoodsService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍟嗗搧淇℃伅琛�")
+@RestController
+@RequestMapping("/business/baseGoods")
+public class BaseGoodsController extends BaseController {
+
+    @Autowired
+    private BaseGoodsService baseGoodsService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basegoods:create")
+    public ApiResponse create(@RequestBody BaseGoods baseGoods) {
+        return ApiResponse.success(baseGoodsService.create(baseGoods));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basegoods:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseGoodsService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basegoods: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));
+        }
+        baseGoodsService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basegoods:update")
+    public ApiResponse updateById(@RequestBody BaseGoods baseGoods) {
+        baseGoodsService.updateById(baseGoods);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basegoods:query")
+    public ApiResponse<PageData<BaseGoods>> findPage (@RequestBody PageWrap<BaseGoods> pageWrap) {
+        return ApiResponse.success(baseGoodsService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basegoods:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseGoods> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseGoods.class).export(baseGoodsService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍟嗗搧淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basegoods:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseGoodsService.findById(id));
+    }
+}
diff --git a/server/platform/src/main/java/com/doumee/api/business/BaseGoodsParamController.java b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsParamController.java
new file mode 100644
index 0000000..7b230bf
--- /dev/null
+++ b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsParamController.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.BaseGoodsParam;
+import com.doumee.service.business.BaseGoodsParamService;
+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 2023/09/07 11:41
+ */
+@Api(tags = "绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛�")
+@RestController
+@RequestMapping("/business/baseGoodsParam")
+public class BaseGoodsParamController extends BaseController {
+
+    @Autowired
+    private BaseGoodsParamService baseGoodsParamService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:basegoodsparam:create")
+    public ApiResponse create(@RequestBody BaseGoodsParam baseGoodsParam) {
+        return ApiResponse.success(baseGoodsParamService.create(baseGoodsParam));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:basegoodsparam:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        baseGoodsParamService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:basegoodsparam: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));
+        }
+        baseGoodsParamService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:basegoodsparam:update")
+    public ApiResponse updateById(@RequestBody BaseGoodsParam baseGoodsParam) {
+        baseGoodsParamService.updateById(baseGoodsParam);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:basegoodsparam:query")
+    public ApiResponse<PageData<BaseGoodsParam>> findPage (@RequestBody PageWrap<BaseGoodsParam> pageWrap) {
+        return ApiResponse.success(baseGoodsParamService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:basegoodsparam:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<BaseGoodsParam> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(BaseGoodsParam.class).export(baseGoodsParamService.findPage(pageWrap).getRecords(), "绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:basegoodsparam:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(baseGoodsParamService.findById(id));
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/BaseCateParamMapper.java b/server/service/src/main/java/com/doumee/dao/business/BaseCateParamMapper.java
new file mode 100644
index 0000000..610b927
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/BaseCateParamMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.BaseCateParam;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseCateParamMapper extends BaseMapper<BaseCateParam> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/BaseCategoryMapper.java b/server/service/src/main/java/com/doumee/dao/business/BaseCategoryMapper.java
new file mode 100644
index 0000000..f296bcf
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/BaseCategoryMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.BaseCategory;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseCategoryMapper extends BaseMapper<BaseCategory> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/BaseGoodsMapper.java b/server/service/src/main/java/com/doumee/dao/business/BaseGoodsMapper.java
new file mode 100644
index 0000000..d934a1e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/BaseGoodsMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.BaseGoods;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseGoodsMapper extends BaseMapper<BaseGoods> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/BaseGoodsParamMapper.java b/server/service/src/main/java/com/doumee/dao/business/BaseGoodsParamMapper.java
new file mode 100644
index 0000000..8fb2939
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/BaseGoodsParamMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.BaseGoodsParam;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseGoodsParamMapper extends BaseMapper<BaseGoodsParam> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/BaseCateParam.java b/server/service/src/main/java/com/doumee/dao/business/model/BaseCateParam.java
new file mode 100644
index 0000000..c831685
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/BaseCateParam.java
@@ -0,0 +1,70 @@
+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 2023/09/07 11:41
+ */
+@Data
+@ApiModel("绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛�")
+@TableName("`base_cate_param`")
+public class BaseCateParam {
+
+    @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 = "鎵�灞炲搧绫荤紪鐮�(鍏宠仈category琛�)", example = "1")
+    @ExcelColumn(name="鎵�灞炲搧绫荤紪鐮�(鍏宠仈category琛�)")
+    private Integer categoryId;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/BaseCategory.java b/server/service/src/main/java/com/doumee/dao/business/model/BaseCategory.java
new file mode 100644
index 0000000..bec2415
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/BaseCategory.java
@@ -0,0 +1,86 @@
+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 2023/09/07 11:41
+ */
+@Data
+@ApiModel("绱犳潗搴�-鍝佺被淇℃伅琛�")
+@TableName("`base_category`")
+public class BaseCategory {
+
+    @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 = "灞炴��1鍚嶇О")
+    @ExcelColumn(name="灞炴��1鍚嶇О")
+    private String attrFirst;
+
+    @ApiModelProperty(value = "灞炴��2鍚嶇О")
+    @ExcelColumn(name="灞炴��2鍚嶇О")
+    private String attrSecond;
+
+    @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 = "鍚嶇О鎷奸煶")
+    @ExcelColumn(name="鍚嶇О鎷奸煶")
+    private String pinyin;
+
+    @ApiModelProperty(value = "鍚嶇О鎷奸煶棣栧瓧姣�")
+    @ExcelColumn(name="鍚嶇О鎷奸煶棣栧瓧姣�")
+    private String shortPinyin;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java
new file mode 100644
index 0000000..29b5ed0
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java
@@ -0,0 +1,99 @@
+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 2023/09/07 11:41
+ */
+@Data
+@ApiModel("绱犳潗搴�-鍟嗗搧淇℃伅琛�")
+@TableName("`base_goods`")
+public class BaseGoods {
+
+    @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 = "鐘舵�� 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 = "鎵�灞炲搧绫荤紪鐮�(base_category)", example = "1")
+    @ExcelColumn(name="鎵�灞炲搧绫荤紪鐮�(base_category)")
+    private Integer categoryId;
+
+    @ApiModelProperty(value = "鎵�灞炲搧鐗岀紪鐮�(base_brand)", example = "1")
+    @ExcelColumn(name="鎵�灞炲搧鐗岀紪鐮�(base_brand)")
+    private Integer brandId;
+
+    @ApiModelProperty(value = "鎸囧浠凤紙鍏冿級", example = "1")
+    @ExcelColumn(name="鎸囧浠凤紙鍏冿級")
+    private BigDecimal zdPrice;
+
+    @ApiModelProperty(value = "鍏ユ墜浠锋牸锛堝厓锛�", example = "1")
+    @ExcelColumn(name="鍏ユ墜浠锋牸锛堝厓锛�")
+    private BigDecimal price;
+
+    @ApiModelProperty(value = "鍟嗗搧璇︽儏")
+    @ExcelColumn(name="鍟嗗搧璇︽儏")
+    private String content;
+
+    @ApiModelProperty(value = "鍚嶇О鎷奸煶")
+    @ExcelColumn(name="鍚嶇О鎷奸煶")
+    private String pinyin;
+
+    @ApiModelProperty(value = "鍚嶇О鎷奸煶棣栧瓧姣�")
+    @ExcelColumn(name="鍚嶇О鎷奸煶棣栧瓧姣�")
+    private String shortPinyin;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/BaseGoodsParam.java b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoodsParam.java
new file mode 100644
index 0000000..88e4368
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoodsParam.java
@@ -0,0 +1,78 @@
+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 2023/09/07 11:41
+ */
+@Data
+@ApiModel("绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛�")
+@TableName("`base_goods_param`")
+public class BaseGoodsParam {
+
+    @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 = "鍏宠仈鍝佺被鍙傛暟缂栫爜锛堝叧鑱攂ase_cate_param琛級", example = "1")
+    @ExcelColumn(name="鍏宠仈鍝佺被鍙傛暟缂栫爜锛堝叧鑱攂ase_cate_param琛級")
+    private Integer pramaId;
+
+    @ApiModelProperty(value = "鍙傛暟鍊�")
+    @ExcelColumn(name="鍙傛暟鍊�")
+    private String val;
+
+    @ApiModelProperty(value = "鍟嗗搧缂栫爜锛堝叧鑱攂ase_goods琛級", example = "1")
+    @ExcelColumn(name="鍟嗗搧缂栫爜锛堝叧鑱攂ase_goods琛級")
+    private Integer goodsId;
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/CateParam.java b/server/service/src/main/java/com/doumee/dao/business/model/CateParam.java
index 29c36f8..423b765 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/CateParam.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/CateParam.java
@@ -63,6 +63,12 @@
     @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
     @ExcelColumn(name="鐘舵�� 0鍚敤 1绂佺敤")
     private Integer status;
+    @ApiModelProperty(value = "鏄惁閫夐」 0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁閫夐」 0鍚� 1鏄�")
+    private Integer isselect;
+    @ApiModelProperty(value = "鏄惁鏄剧ず  0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鏄剧ず 0鍚� 1鏄�")
+    private Integer isshow;
 
     @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
     @ExcelColumn(name="鎺掑簭鐮�")
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Category.java b/server/service/src/main/java/com/doumee/dao/business/model/Category.java
index d178550..0c67dbb 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Category.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Category.java
@@ -91,6 +91,12 @@
     @ApiModelProperty(value = "浼佷笟缂栫爜")
     @ExcelColumn(name="浼佷笟缂栫爜")
     private Integer companyId;
+    @ApiModelProperty(value = "骞冲彴鍒嗙被缂栫爜")
+    @ExcelColumn(name="骞冲彴鍒嗙被缂栫爜")
+    private Integer platCateId;
+    @ApiModelProperty(value = "绫诲瀷 0鑷缓 1骞冲彴鍏宠仈")
+    @ExcelColumn(name="绫诲瀷")
+    private Integer type;
 
 
     @ApiModelProperty(value = "鍙傛暟鍚嶇О 鍒楄〃鍊�")
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseCateParamService.java b/server/service/src/main/java/com/doumee/service/business/BaseCateParamService.java
new file mode 100644
index 0000000..e78ffce
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/BaseCateParamService.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.BaseCateParam;
+import java.util.List;
+
+/**
+ * 绱犳潗搴�-鍝佺被鍙傛暟淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseCateParamService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(BaseCateParam baseCateParam);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     */
+    void delete(BaseCateParam baseCateParam);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     */
+    void updateById(BaseCateParam baseCateParam);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param baseCateParams 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<BaseCateParam> baseCateParams);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return BaseCateParam
+     */
+    BaseCateParam findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     * @return BaseCateParam
+     */
+    BaseCateParam findOne(BaseCateParam baseCateParam);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     * @return List<BaseCateParam>
+     */
+    List<BaseCateParam> findList(BaseCateParam baseCateParam);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<BaseCateParam>
+     */
+    PageData<BaseCateParam> findPage(PageWrap<BaseCateParam> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param baseCateParam 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(BaseCateParam baseCateParam);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseCategoryService.java b/server/service/src/main/java/com/doumee/service/business/BaseCategoryService.java
new file mode 100644
index 0000000..deb600e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/BaseCategoryService.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.BaseCategory;
+import java.util.List;
+
+/**
+ * 绱犳潗搴�-鍝佺被淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseCategoryService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param baseCategory 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(BaseCategory baseCategory);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param baseCategory 瀹炰綋瀵硅薄
+     */
+    void delete(BaseCategory baseCategory);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param baseCategory 瀹炰綋瀵硅薄
+     */
+    void updateById(BaseCategory baseCategory);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param baseCategorys 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<BaseCategory> baseCategorys);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return BaseCategory
+     */
+    BaseCategory findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param baseCategory 瀹炰綋瀵硅薄
+     * @return BaseCategory
+     */
+    BaseCategory findOne(BaseCategory baseCategory);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param baseCategory 瀹炰綋瀵硅薄
+     * @return List<BaseCategory>
+     */
+    List<BaseCategory> findList(BaseCategory baseCategory);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<BaseCategory>
+     */
+    PageData<BaseCategory> findPage(PageWrap<BaseCategory> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param baseCategory 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(BaseCategory baseCategory);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseGoodsParamService.java b/server/service/src/main/java/com/doumee/service/business/BaseGoodsParamService.java
new file mode 100644
index 0000000..846277e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/BaseGoodsParamService.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.BaseGoodsParam;
+import java.util.List;
+
+/**
+ * 绱犳潗搴�-鍟嗗搧鍝佺被鍙傛暟閰嶇疆琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseGoodsParamService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(BaseGoodsParam baseGoodsParam);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     */
+    void delete(BaseGoodsParam baseGoodsParam);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     */
+    void updateById(BaseGoodsParam baseGoodsParam);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param baseGoodsParams 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<BaseGoodsParam> baseGoodsParams);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return BaseGoodsParam
+     */
+    BaseGoodsParam findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     * @return BaseGoodsParam
+     */
+    BaseGoodsParam findOne(BaseGoodsParam baseGoodsParam);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     * @return List<BaseGoodsParam>
+     */
+    List<BaseGoodsParam> findList(BaseGoodsParam baseGoodsParam);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<BaseGoodsParam>
+     */
+    PageData<BaseGoodsParam> findPage(PageWrap<BaseGoodsParam> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param baseGoodsParam 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(BaseGoodsParam baseGoodsParam);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java b/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java
new file mode 100644
index 0000000..200e8cf
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.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.BaseGoods;
+import java.util.List;
+
+/**
+ * 绱犳潗搴�-鍟嗗搧淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2023/09/07 11:41
+ */
+public interface BaseGoodsService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param baseGoods 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(BaseGoods baseGoods);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param baseGoods 瀹炰綋瀵硅薄
+     */
+    void delete(BaseGoods baseGoods);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param baseGoods 瀹炰綋瀵硅薄
+     */
+    void updateById(BaseGoods baseGoods);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param baseGoodss 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<BaseGoods> baseGoodss);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return BaseGoods
+     */
+    BaseGoods findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param baseGoods 瀹炰綋瀵硅薄
+     * @return BaseGoods
+     */
+    BaseGoods findOne(BaseGoods baseGoods);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param baseGoods 瀹炰綋瀵硅薄
+     * @return List<BaseGoods>
+     */
+    List<BaseGoods> findList(BaseGoods baseGoods);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<BaseGoods>
+     */
+    PageData<BaseGoods> findPage(PageWrap<BaseGoods> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param baseGoods 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(BaseGoods baseGoods);
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseCateParamServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseCateParamServiceImpl.java
new file mode 100644
index 0000000..18bdff6
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseCateParamServiceImpl.java
@@ -0,0 +1,142 @@
+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.BaseCateParamMapper;
+import com.doumee.dao.business.model.BaseCateParam;
+import com.doumee.service.business.BaseCateParamService;
+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 2023/09/07 11:41
+ */
+@Service
+public class BaseCateParamServiceImpl implements BaseCateParamService {
+
+    @Autowired
+    private BaseCateParamMapper baseCateParamMapper;
+
+    @Override
+    public Integer create(BaseCateParam baseCateParam) {
+        baseCateParamMapper.insert(baseCateParam);
+        return baseCateParam.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        baseCateParamMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(BaseCateParam baseCateParam) {
+        UpdateWrapper<BaseCateParam> deleteWrapper = new UpdateWrapper<>(baseCateParam);
+        baseCateParamMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        baseCateParamMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(BaseCateParam baseCateParam) {
+        baseCateParamMapper.updateById(baseCateParam);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<BaseCateParam> baseCateParams) {
+        if (CollectionUtils.isEmpty(baseCateParams)) {
+            return;
+        }
+        for (BaseCateParam baseCateParam: baseCateParams) {
+            this.updateById(baseCateParam);
+        }
+    }
+
+    @Override
+    public BaseCateParam findById(Integer id) {
+        return baseCateParamMapper.selectById(id);
+    }
+
+    @Override
+    public BaseCateParam findOne(BaseCateParam baseCateParam) {
+        QueryWrapper<BaseCateParam> wrapper = new QueryWrapper<>(baseCateParam);
+        return baseCateParamMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<BaseCateParam> findList(BaseCateParam baseCateParam) {
+        QueryWrapper<BaseCateParam> wrapper = new QueryWrapper<>(baseCateParam);
+        return baseCateParamMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<BaseCateParam> findPage(PageWrap<BaseCateParam> pageWrap) {
+        IPage<BaseCateParam> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<BaseCateParam> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(BaseCateParam::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(BaseCateParam::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(BaseCateParam::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(BaseCateParam::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getCategoryId() != null) {
+            queryWrapper.lambda().eq(BaseCateParam::getCategoryId, pageWrap.getModel().getCategoryId());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(baseCateParamMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(BaseCateParam baseCateParam) {
+        QueryWrapper<BaseCateParam> wrapper = new QueryWrapper<>(baseCateParam);
+        return baseCateParamMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
new file mode 100644
index 0000000..efab03d
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
@@ -0,0 +1,154 @@
+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.BaseCategoryMapper;
+import com.doumee.dao.business.model.BaseCategory;
+import com.doumee.service.business.BaseCategoryService;
+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 2023/09/07 11:41
+ */
+@Service
+public class BaseCategoryServiceImpl implements BaseCategoryService {
+
+    @Autowired
+    private BaseCategoryMapper baseCategoryMapper;
+
+    @Override
+    public Integer create(BaseCategory baseCategory) {
+        baseCategoryMapper.insert(baseCategory);
+        return baseCategory.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        baseCategoryMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(BaseCategory baseCategory) {
+        UpdateWrapper<BaseCategory> deleteWrapper = new UpdateWrapper<>(baseCategory);
+        baseCategoryMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        baseCategoryMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(BaseCategory baseCategory) {
+        baseCategoryMapper.updateById(baseCategory);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<BaseCategory> baseCategorys) {
+        if (CollectionUtils.isEmpty(baseCategorys)) {
+            return;
+        }
+        for (BaseCategory baseCategory: baseCategorys) {
+            this.updateById(baseCategory);
+        }
+    }
+
+    @Override
+    public BaseCategory findById(Integer id) {
+        return baseCategoryMapper.selectById(id);
+    }
+
+    @Override
+    public BaseCategory findOne(BaseCategory baseCategory) {
+        QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(baseCategory);
+        return baseCategoryMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<BaseCategory> findList(BaseCategory baseCategory) {
+        QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(baseCategory);
+        return baseCategoryMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<BaseCategory> findPage(PageWrap<BaseCategory> pageWrap) {
+        IPage<BaseCategory> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<BaseCategory> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(BaseCategory::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(BaseCategory::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(BaseCategory::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(BaseCategory::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getAttrFirst() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getAttrFirst, pageWrap.getModel().getAttrFirst());
+        }
+        if (pageWrap.getModel().getAttrSecond() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getAttrSecond, pageWrap.getModel().getAttrSecond());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getImgurl() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getImgurl, pageWrap.getModel().getImgurl());
+        }
+        if (pageWrap.getModel().getPinyin() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getPinyin, pageWrap.getModel().getPinyin());
+        }
+        if (pageWrap.getModel().getShortPinyin() != null) {
+            queryWrapper.lambda().eq(BaseCategory::getShortPinyin, pageWrap.getModel().getShortPinyin());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(baseCategoryMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(BaseCategory baseCategory) {
+        QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(baseCategory);
+        return baseCategoryMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsParamServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsParamServiceImpl.java
new file mode 100644
index 0000000..ac93f4f
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsParamServiceImpl.java
@@ -0,0 +1,148 @@
+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.BaseGoodsParamMapper;
+import com.doumee.dao.business.model.BaseGoodsParam;
+import com.doumee.service.business.BaseGoodsParamService;
+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 2023/09/07 11:41
+ */
+@Service
+public class BaseGoodsParamServiceImpl implements BaseGoodsParamService {
+
+    @Autowired
+    private BaseGoodsParamMapper baseGoodsParamMapper;
+
+    @Override
+    public Integer create(BaseGoodsParam baseGoodsParam) {
+        baseGoodsParamMapper.insert(baseGoodsParam);
+        return baseGoodsParam.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        baseGoodsParamMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(BaseGoodsParam baseGoodsParam) {
+        UpdateWrapper<BaseGoodsParam> deleteWrapper = new UpdateWrapper<>(baseGoodsParam);
+        baseGoodsParamMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        baseGoodsParamMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(BaseGoodsParam baseGoodsParam) {
+        baseGoodsParamMapper.updateById(baseGoodsParam);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<BaseGoodsParam> baseGoodsParams) {
+        if (CollectionUtils.isEmpty(baseGoodsParams)) {
+            return;
+        }
+        for (BaseGoodsParam baseGoodsParam: baseGoodsParams) {
+            this.updateById(baseGoodsParam);
+        }
+    }
+
+    @Override
+    public BaseGoodsParam findById(Integer id) {
+        return baseGoodsParamMapper.selectById(id);
+    }
+
+    @Override
+    public BaseGoodsParam findOne(BaseGoodsParam baseGoodsParam) {
+        QueryWrapper<BaseGoodsParam> wrapper = new QueryWrapper<>(baseGoodsParam);
+        return baseGoodsParamMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<BaseGoodsParam> findList(BaseGoodsParam baseGoodsParam) {
+        QueryWrapper<BaseGoodsParam> wrapper = new QueryWrapper<>(baseGoodsParam);
+        return baseGoodsParamMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<BaseGoodsParam> findPage(PageWrap<BaseGoodsParam> pageWrap) {
+        IPage<BaseGoodsParam> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<BaseGoodsParam> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(BaseGoodsParam::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(BaseGoodsParam::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(BaseGoodsParam::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(BaseGoodsParam::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getPramaId() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getPramaId, pageWrap.getModel().getPramaId());
+        }
+        if (pageWrap.getModel().getVal() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getVal, pageWrap.getModel().getVal());
+        }
+        if (pageWrap.getModel().getGoodsId() != null) {
+            queryWrapper.lambda().eq(BaseGoodsParam::getGoodsId, pageWrap.getModel().getGoodsId());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(baseGoodsParamMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(BaseGoodsParam baseGoodsParam) {
+        QueryWrapper<BaseGoodsParam> wrapper = new QueryWrapper<>(baseGoodsParam);
+        return baseGoodsParamMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
new file mode 100644
index 0000000..37150f6
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
@@ -0,0 +1,163 @@
+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.BaseGoodsMapper;
+import com.doumee.dao.business.model.BaseGoods;
+import com.doumee.service.business.BaseGoodsService;
+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 2023/09/07 11:41
+ */
+@Service
+public class BaseGoodsServiceImpl implements BaseGoodsService {
+
+    @Autowired
+    private BaseGoodsMapper baseGoodsMapper;
+
+    @Override
+    public Integer create(BaseGoods baseGoods) {
+        baseGoodsMapper.insert(baseGoods);
+        return baseGoods.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        baseGoodsMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(BaseGoods baseGoods) {
+        UpdateWrapper<BaseGoods> deleteWrapper = new UpdateWrapper<>(baseGoods);
+        baseGoodsMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        baseGoodsMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(BaseGoods baseGoods) {
+        baseGoodsMapper.updateById(baseGoods);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<BaseGoods> baseGoodss) {
+        if (CollectionUtils.isEmpty(baseGoodss)) {
+            return;
+        }
+        for (BaseGoods baseGoods: baseGoodss) {
+            this.updateById(baseGoods);
+        }
+    }
+
+    @Override
+    public BaseGoods findById(Integer id) {
+        return baseGoodsMapper.selectById(id);
+    }
+
+    @Override
+    public BaseGoods findOne(BaseGoods baseGoods) {
+        QueryWrapper<BaseGoods> wrapper = new QueryWrapper<>(baseGoods);
+        return baseGoodsMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<BaseGoods> findList(BaseGoods baseGoods) {
+        QueryWrapper<BaseGoods> wrapper = new QueryWrapper<>(baseGoods);
+        return baseGoodsMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<BaseGoods> findPage(PageWrap<BaseGoods> pageWrap) {
+        IPage<BaseGoods> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<BaseGoods> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(BaseGoods::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(BaseGoods::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(BaseGoods::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(BaseGoods::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        if (pageWrap.getModel().getImgurl() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getImgurl, pageWrap.getModel().getImgurl());
+        }
+        if (pageWrap.getModel().getCategoryId() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getCategoryId, pageWrap.getModel().getCategoryId());
+        }
+        if (pageWrap.getModel().getBrandId() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getBrandId, pageWrap.getModel().getBrandId());
+        }
+        if (pageWrap.getModel().getZdPrice() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getZdPrice, pageWrap.getModel().getZdPrice());
+        }
+        if (pageWrap.getModel().getPrice() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getPrice, pageWrap.getModel().getPrice());
+        }
+        if (pageWrap.getModel().getContent() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getContent, pageWrap.getModel().getContent());
+        }
+        if (pageWrap.getModel().getPinyin() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getPinyin, pageWrap.getModel().getPinyin());
+        }
+        if (pageWrap.getModel().getShortPinyin() != null) {
+            queryWrapper.lambda().eq(BaseGoods::getShortPinyin, pageWrap.getModel().getShortPinyin());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(baseGoodsMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(BaseGoods baseGoods) {
+        QueryWrapper<BaseGoods> wrapper = new QueryWrapper<>(baseGoods);
+        return baseGoodsMapper.selectCount(wrapper);
+    }
+}

--
Gitblit v1.9.3