Procházet zdrojové kódy

feat(base): 添加位置信息管理和留言功能

- 添加了位置信息(LocationInfor)实体类、控制器、服务层和数据访问层
- 添加了留言(MessageData)实体类、控制器、服务层和数据访问层
- 在网站控制器中添加获取位置信息和保存留言的外部接口
- 更新新闻更新实体类,增加作者、描述和分类字段
- 更新产品中心实体类,增加型号、介绍、场景和核心产品标识字段
- 在各个控制器中添加创建时间和创建人、更新时间更新人的自动设置
- 优化文件管理服务中的批量删除逻辑,添加详细的成功失败统计
- 更新网站服务层实现,添加位置信息查询和留言保存功能
- 修改banner显示效果,替换为新的图案设计
林仔 před 1 měsícem
rodič
revize
5b13b2a810
30 změnil soubory, kde provedl 676 přidání a 41 odebrání
  1. 4 0
      zksy-admin/src/main/java/com/zksy/web/controller/base/AboutDevelopmentHistoryController.java
  2. 4 1
      zksy-admin/src/main/java/com/zksy/web/controller/base/BasicInfoController.java
  3. 68 0
      zksy-admin/src/main/java/com/zksy/web/controller/base/LocationInforController.java
  4. 110 0
      zksy-admin/src/main/java/com/zksy/web/controller/base/MessageDataController.java
  5. 4 1
      zksy-admin/src/main/java/com/zksy/web/controller/base/NewsUpdatesController.java
  6. 7 0
      zksy-admin/src/main/java/com/zksy/web/controller/base/ProductCenterController.java
  7. 4 1
      zksy-admin/src/main/java/com/zksy/web/controller/base/QualificationCertificateController.java
  8. 4 1
      zksy-admin/src/main/java/com/zksy/web/controller/base/SmartEmploymentController.java
  9. 7 1
      zksy-admin/src/main/java/com/zksy/web/controller/base/SolutionController.java
  10. 13 0
      zksy-admin/src/main/java/com/zksy/web/controller/base/WebSiteController.java
  11. 23 20
      zksy-admin/src/main/resources/banner.txt
  12. 82 0
      zksy-system/src/main/java/com/zksy/base/domain/LocationInfor.java
  13. 63 0
      zksy-system/src/main/java/com/zksy/base/domain/MessageData.java
  14. 16 0
      zksy-system/src/main/java/com/zksy/base/domain/NewsUpdates.java
  15. 22 0
      zksy-system/src/main/java/com/zksy/base/domain/ProductCenter.java
  16. 4 1
      zksy-system/src/main/java/com/zksy/base/domain/vo/ProductCenterVo.java
  17. 18 0
      zksy-system/src/main/java/com/zksy/base/mapper/LocationInforMapper.java
  18. 18 0
      zksy-system/src/main/java/com/zksy/base/mapper/MessageDataMapper.java
  19. 13 0
      zksy-system/src/main/java/com/zksy/base/service/LocationInforService.java
  20. 13 0
      zksy-system/src/main/java/com/zksy/base/service/MessageDataService.java
  21. 4 0
      zksy-system/src/main/java/com/zksy/base/service/WebSiteService.java
  22. 37 3
      zksy-system/src/main/java/com/zksy/base/service/impl/FileManageServiceImpl.java
  23. 22 0
      zksy-system/src/main/java/com/zksy/base/service/impl/LocationInforServiceImpl.java
  24. 22 0
      zksy-system/src/main/java/com/zksy/base/service/impl/MessageDataServiceImpl.java
  25. 2 1
      zksy-system/src/main/java/com/zksy/base/service/impl/QualificationCertificateServiceImpl.java
  26. 34 7
      zksy-system/src/main/java/com/zksy/base/service/impl/WebSiteServiceImpl.java
  27. 26 0
      zksy-system/src/main/resources/mapper/base/LocationInforMapper.xml
  28. 21 0
      zksy-system/src/main/resources/mapper/base/MessageDataMapper.xml
  29. 5 2
      zksy-system/src/main/resources/mapper/base/NewsUpdatesMapper.xml
  30. 6 2
      zksy-system/src/main/resources/mapper/base/ProductCenterMapper.xml

+ 4 - 0
zksy-admin/src/main/java/com/zksy/web/controller/base/AboutDevelopmentHistoryController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zksy.base.domain.AboutDevelopmentHistory;
 import com.zksy.base.service.AboutDevelopmentHistoryService;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -48,11 +49,14 @@ public class AboutDevelopmentHistoryController {
     @PostMapping("/save")
     @ApiOperation(value = "发展历程保存")
     public AjaxResult save(@RequestBody AboutDevelopmentHistory entity) {
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         return service.save(entity) ? AjaxResult.success(entity): AjaxResult.error("保存失败");
     }
     @PostMapping("/update")
     @ApiOperation(value = "发展历程修改")
     public AjaxResult update(@RequestBody AboutDevelopmentHistory entity) {
+        entity.setUpdateBy(SecurityUtils.getUsername());
         entity.setUpdateTime(LocalDateTime.now());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }

+ 4 - 1
zksy-admin/src/main/java/com/zksy/web/controller/base/BasicInfoController.java

@@ -7,6 +7,7 @@ import com.zksy.base.domain.FileManage;
 import com.zksy.base.service.BasicInfoService;
 import com.zksy.base.service.FileManageService;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -66,7 +67,8 @@ public class BasicInfoController {
             cover2 = (FileManage) result.get("data");
             entity.setQrCodeUrl(cover2.getFileUrl());
         }
-
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         service.save(entity);
         if (cover1 != null ) {
             LambdaUpdateWrapper<FileManage> updateWrapper = new LambdaUpdateWrapper<>();
@@ -96,6 +98,7 @@ public class BasicInfoController {
             FileManage data = (FileManage) result.get("data");
             entity.setQrCodeUrl(data.getFileUrl());
         }
+        entity.setUpdateBy(SecurityUtils.getUsername());
         entity.setUpdateTime(LocalDateTime.now());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }

+ 68 - 0
zksy-admin/src/main/java/com/zksy/web/controller/base/LocationInforController.java

@@ -0,0 +1,68 @@
+package com.zksy.web.controller.base;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zksy.base.domain.LocationInfor;
+import com.zksy.base.service.LocationInforService;
+import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.time.LocalDateTime;
+import java.util.Arrays;
+
+/**
+ * @author Administrator
+ * @version 1.0
+ * @project zksy-website-service
+ * @description 位置信息
+ * @date 2025/12/19 09:24:07
+ */
+@RestController
+@RequestMapping("/locationInfor")
+@Api(tags = "位置信息",description = "位置信息desc")
+public class LocationInforController {
+    @Autowired
+    private LocationInforService service;
+
+    @GetMapping("/findByPage")
+    @ApiOperation(value = "位置信息查询分页")
+    public AjaxResult findByPage(@ApiParam(value = "页码", required = true)long pageNum,
+                                 @ApiParam(value = "页数", required = true)long pageSize){
+        Page<LocationInfor> page = new Page<>(pageNum, pageSize);
+        return AjaxResult.success(service.page(page,new LambdaQueryWrapper<LocationInfor>().orderByAsc(LocationInfor::getCreateTime)));
+    }
+    @GetMapping("/getLocationInforList")
+    @ApiOperation(value = "位置信息查询")
+    public AjaxResult getLocationInforList(){
+        return AjaxResult.success(service.list());
+    }
+    @GetMapping("/getById/{id}")
+    @ApiOperation(value = "根据Id查询位置信息")
+    public AjaxResult getById(@PathVariable String id){
+        return AjaxResult.success(service.getById(id));
+    }
+    @PostMapping("/save")
+    @ApiOperation(value = "位置信息保存")
+    public AjaxResult save(@RequestBody LocationInfor entity) {
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
+        return service.save(entity) ? AjaxResult.success(entity): AjaxResult.error("保存失败");
+    }
+    @PostMapping("/update")
+    @ApiOperation(value = "位置信息修改")
+    public AjaxResult update(@RequestBody LocationInfor entity) {
+        entity.setUpdateBy(SecurityUtils.getUsername());
+        entity.setUpdateTime(LocalDateTime.now());
+        return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
+    }
+    @PostMapping("/deleteBatch")
+    @ApiOperation(value = "位置信息删除")
+    public AjaxResult delete(@RequestBody String[] ids) {
+        return service.removeByIds(Arrays.asList(ids)) ? AjaxResult.success("删除成功") : AjaxResult.error("删除失败");
+    }
+}

+ 110 - 0
zksy-admin/src/main/java/com/zksy/web/controller/base/MessageDataController.java

@@ -0,0 +1,110 @@
+package com.zksy.web.controller.base;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zksy.base.domain.MessageData;
+import com.zksy.base.service.MessageDataService;
+import com.zksy.common.annotation.Log;
+import com.zksy.common.core.controller.BaseController;
+import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.enums.BusinessType;
+import com.zksy.common.utils.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 留言Controller
+ *
+ * @author sy
+ * @date 2024-06-27
+ */
+@RestController
+@RequestMapping("/messageData")
+@Api(tags = "留言", description = "留言desc")
+public class MessageDataController extends BaseController{
+
+    @Autowired
+    private MessageDataService service;
+
+    @GetMapping("/getById/{borrowId}")
+    @ApiOperation(value = "留言搜索getById")
+    public MessageData getById(@PathVariable String borrowId) {
+        return service.getById(borrowId);
+    }
+
+    @GetMapping("/findByPage")
+    @ApiOperation(value = "留言分页")
+    public AjaxResult findByPage(@ApiParam(value = "页码", required = true)long pageNum,
+                                 @ApiParam(value = "页数", required = true)long pageSize,
+                                 @ApiParam(value = "联系人", required = false)String name,
+                                 @ApiParam(value = "联系方式", required = false)String  phone){
+        Page<MessageData> page = new Page<>(pageNum, pageSize);
+        LambdaQueryWrapper<MessageData> queryWrapper = new LambdaQueryWrapper<>();
+        if (StringUtils.isNotEmpty( name)) {
+            queryWrapper.like(MessageData::getName, name);
+        }
+        if(StringUtils.isNotEmpty(phone)) {
+            queryWrapper.like(MessageData::getPhone, phone);
+        }
+        queryWrapper.orderByDesc(MessageData::getCreateTime);
+        return AjaxResult.success(service.page(page,queryWrapper));
+    }
+
+    @GetMapping("/getList")
+    @ApiOperation(value = "留言查询所有")
+    public AjaxResult getList(@ApiParam(value = "联系人", required = false)String name,
+                                     @ApiParam(value = "联系方式", required = false)String  phone) throws Exception {
+        LambdaQueryWrapper<MessageData> queryWrapper = new LambdaQueryWrapper<>();
+        if(StringUtils.isNotEmpty( name)){
+            queryWrapper.like(MessageData::getName, name);
+        }
+        if(StringUtils.isNotEmpty(phone)) {
+            queryWrapper.like(MessageData::getPhone, phone);
+        }
+        queryWrapper.orderByDesc(MessageData::getCreateTime);
+        List<MessageData> list = service.list(queryWrapper);
+        return AjaxResult.success(list);
+    }
+
+    /**
+     * 新增留言
+     */
+/*    @PostMapping("/save")
+    @ApiOperation(value = "留言新增")
+    @Log(title = "新增留言", businessType = BusinessType.INSERT)
+    public AjaxResult save(@RequestBody MessageData owLeavingMessage) {
+        owLeavingMessage.setCreateTime(LocalDateTime.now());
+        Boolean flag = service.save(owLeavingMessage);
+        if(flag){
+            return AjaxResult.success("留言成功");
+        }else {
+            return AjaxResult.success("留言失败");
+        }
+    }*/
+
+    /**
+     * 修改留言
+     */
+    @PostMapping("/updateById")
+    @ApiOperation(value = "留言修改")
+    @Log(title = "修改留言", businessType = BusinessType.UPDATE)
+    public AjaxResult updateById(@RequestBody MessageData owLeavingMessage) {
+        owLeavingMessage.setUpdateTime(LocalDateTime.now());
+        return AjaxResult.success(service.updateById(owLeavingMessage));
+    }
+
+    @Log(title = "留言", businessType = BusinessType.DELETE)
+    @PostMapping("/delete")
+    @ApiOperation(value = "删除留言", notes = "删除留言")
+    public AjaxResult delete(@RequestBody List<String> ids)
+    {
+        return toAjax(service.removeByIds(ids));
+    }
+}
+

+ 4 - 1
zksy-admin/src/main/java/com/zksy/web/controller/base/NewsUpdatesController.java

@@ -1,7 +1,6 @@
 package com.zksy.web.controller.base;
 
 import com.alibaba.fastjson2.JSON;
-import com.alibaba.fastjson2.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -11,6 +10,7 @@ import com.zksy.base.domain.dto.NewsUpdatesDto;
 import com.zksy.base.service.FileManageService;
 import com.zksy.base.service.NewsUpdatesService;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -69,6 +69,8 @@ public class NewsUpdatesController {
             cover = (FileManage) result.get("data");
             entity.setNewsUrl(cover.getFileUrl());
         }
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         service.save(entity);
         if (cover != null) {
             LambdaUpdateWrapper<FileManage> updateWrapper = new LambdaUpdateWrapper<>();
@@ -138,6 +140,7 @@ public class NewsUpdatesController {
             });
         }
         entity.setUpdateTime(LocalDateTime.now());
+        entity.setUpdateBy(SecurityUtils.getUsername());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }
     @PostMapping("/deleteBatch")

+ 7 - 0
zksy-admin/src/main/java/com/zksy/web/controller/base/ProductCenterController.java

@@ -9,7 +9,9 @@ import com.zksy.base.domain.ProductCenter;
 import com.zksy.base.domain.dto.ProductCenterDto;
 import com.zksy.base.service.FileManageService;
 import com.zksy.base.service.ProductCenterService;
+import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -40,6 +42,7 @@ public class ProductCenterController {
 
     @GetMapping("/findByPage")
     @ApiOperation(value = "产品中心查询分页")
+    @Anonymous
     public AjaxResult findByPage(@ApiParam(value = "页码", required = true)long pageNum,
                                  @ApiParam(value = "页数", required = true)long pageSize,
                                  @ApiParam(value = "产品分类", required = false)String productCategory,
@@ -50,6 +53,7 @@ public class ProductCenterController {
         queryWrapper.like(productCategory != null, ProductCenter::getProductCategory, productCategory);
         queryWrapper.like(productType != null, ProductCenter::getProductType, productType);
         queryWrapper.like(productName != null, ProductCenter::getProductName, productName);
+        queryWrapper.orderByDesc(ProductCenter::getCreateTime);
         return AjaxResult.success(service.page(page, queryWrapper));
     }
     @GetMapping("/getProductCenterList")
@@ -72,6 +76,8 @@ public class ProductCenterController {
             cover = (FileManage) result.get("data");
             entity.setProductUrl(cover.getFileUrl());
         }
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         service.save(entity);
         if (cover != null) {
             LambdaUpdateWrapper<FileManage> updateWrapper = new LambdaUpdateWrapper<>();
@@ -141,6 +147,7 @@ public class ProductCenterController {
             });
         }
         entity.setUpdateTime(LocalDateTime.now());
+        entity.setUpdateBy(SecurityUtils.getUsername());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }
     @PostMapping("/deleteBatch")

+ 4 - 1
zksy-admin/src/main/java/com/zksy/web/controller/base/QualificationCertificateController.java

@@ -4,14 +4,15 @@ import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.zksy.base.domain.QualificationCertificate;
 import com.zksy.base.service.QualificationCertificateService;
-import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.time.LocalDateTime;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -50,6 +51,8 @@ public class QualificationCertificateController {
     @PostMapping("/save")
     @ApiOperation(value = "荣誉资质保存")
     public AjaxResult save(@ModelAttribute QualificationCertificate entity) {
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         return AjaxResult.success(service.saveQualificationCertificate( entity));
     }
     @PostMapping("/update")

+ 4 - 1
zksy-admin/src/main/java/com/zksy/web/controller/base/SmartEmploymentController.java

@@ -3,8 +3,8 @@ package com.zksy.web.controller.base;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zksy.base.domain.SmartEmployment;
 import com.zksy.base.service.SmartEmploymentService;
-import com.zksy.common.annotation.Anonymous;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -49,12 +49,15 @@ public class SmartEmploymentController {
     @PostMapping("/save")
     @ApiOperation(value = "招聘保存")
     public AjaxResult save(@RequestBody SmartEmployment entity) {
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         return service.save(entity) ? AjaxResult.success(entity): AjaxResult.error("保存失败");
     }
     @PostMapping("/update")
     @ApiOperation(value = "招聘修改")
     public AjaxResult update(@RequestBody SmartEmployment entity) {
         entity.setUpdateTime(LocalDateTime.now());
+        entity.setUpdateBy(SecurityUtils.getUsername());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }
     @PostMapping("/deleteBatch")

+ 7 - 1
zksy-admin/src/main/java/com/zksy/web/controller/base/SolutionController.java

@@ -9,6 +9,7 @@ import com.zksy.base.domain.dto.SolutionDto;
 import com.zksy.base.service.FileManageService;
 import com.zksy.base.service.SolutionService;
 import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -42,7 +43,9 @@ public class SolutionController {
     public AjaxResult findByPage(@ApiParam(value = "页码", required = true)long pageNum,
                                  @ApiParam(value = "页数", required = true)long pageSize){
         Page<Solution> page = new Page<>(pageNum, pageSize);
-        return AjaxResult.success(service.page(page));
+        LambdaUpdateWrapper<Solution> updateWrapper = new LambdaUpdateWrapper<>();
+        updateWrapper.orderByAsc(Solution::getReleaseTime);
+        return AjaxResult.success(service.page(page, updateWrapper));
     }
     @GetMapping("/getSolutionList")
     @ApiOperation(value = "解决方案查询")
@@ -64,6 +67,8 @@ public class SolutionController {
             cover = (FileManage) result.get("data");
             entity.setProductUrl(cover.getFileUrl());
         }
+        entity.setCreateTime(LocalDateTime.now());
+        entity.setCreateBy(SecurityUtils.getUsername());
         service.save(entity);
         if (cover != null) {
             LambdaUpdateWrapper<FileManage> updateWrapper = new LambdaUpdateWrapper<>();
@@ -133,6 +138,7 @@ public class SolutionController {
             });
         }
         entity.setUpdateTime(LocalDateTime.now());
+        entity.setUpdateBy(SecurityUtils.getUsername());
         return service.updateById(entity) ? AjaxResult.success(entity): AjaxResult.error("修改失败");
     }
     @PostMapping("/deleteBatch")

+ 13 - 0
zksy-admin/src/main/java/com/zksy/web/controller/base/WebSiteController.java

@@ -1,5 +1,6 @@
 package com.zksy.web.controller.base;
 
+import com.zksy.base.domain.MessageData;
 import com.zksy.base.domain.request.PageRequest;
 import com.zksy.base.service.WebSiteService;
 import com.zksy.common.annotation.Anonymous;
@@ -128,4 +129,16 @@ public class WebSiteController {
     ) {
         return AjaxResult.success(webSiteService.getProductById(id));
     }
+    @GetMapping("/getLocationInforList")
+    @ApiOperation("获取地址信息")
+    @Anonymous
+    public AjaxResult getLocationInforList() {
+        return AjaxResult.success(webSiteService.getLocationInforList());
+    }
+    @PostMapping("/save")
+    @ApiOperation(value = "留言新增")
+    @Anonymous
+    public AjaxResult save(@RequestBody MessageData owLeavingMessage) {
+        return AjaxResult.success(webSiteService.saveMessage(owLeavingMessage));
+    }
 }

+ 23 - 20
zksy-admin/src/main/resources/banner.txt

@@ -1,21 +1,24 @@
-Application Version: ${ruoyi.version}
+Application Version: ${zksy.version}
 Spring Boot Version: ${spring-boot.version}
-//////////////////////////////////////////////////////////////////////////
-//     #     #          #                #########           #          //
-//     #     #          #                #       #           #          //
-//     #  #  #          #        #       #########           #          //
-//     #  #  #  #       ###########      #       #           #     #    //
-//   # ## ########      #                #########      #############   //
-//   # # #   #          #                  #   #             #     #    //
-//   # # #   #          #        #     #############         #     #    //
-//  #  ##    #          ###########        #   #             #     #    //
-//     #     # #                 #    ###############        #     #    //
-//     #  #######                #         #   #             #     #    //
-//     #     #                #  #        #  #  #            #     #    //
-//     #     #       ########### #      ## # # # ####       #      #    //
-//     #     #                   #    ##    ###    #        #      #    //
-//     #     #   #               #        #  #  #          #   #   #    //
-//     ############           # #        #   #   #         #    # #     //
-//     #                       #            ##          ###      #      //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////
+//                          _ooOoo_                               //
+//                         o8888888o                              //
+//                         88" . "88                              //
+//                         (| ^_^ |)                              //
+//                         O\  =  /O                              //
+//                      ____/`---'\____                           //
+//                    .'  \\|     |//  `.                         //
+//                   /  \\|||  :  |||//  \                        //
+//                  /  _||||| -:- |||||-  \                       //
+//                  |   | \\\  -  /// |   |                       //
+//                  | \_|  ''\---/''  |   |                       //
+//                  \  .-\__  `-`  ___/-. /                       //
+//                ___`. .'  /--.--\  `. . ___                     //
+//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
+//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
+//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
+//      ========`-.____`-.___\_____/___.-`____.-'========         //
+//                           `=---='                              //
+//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
+//             佛祖保佑       永不宕机      永无BUG               //
+////////////////////////////////////////////////////////////////////

+ 82 - 0
zksy-system/src/main/java/com/zksy/base/domain/LocationInfor.java

@@ -0,0 +1,82 @@
+package com.zksy.base.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 位置信息
+ * @TableName location_infor
+ */
+@TableName(value ="location_infor")
+@Data
+public class LocationInfor implements Serializable {
+    /**
+     * 位置id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_UUID)
+    private String id;
+
+    /**
+     * 名称
+     */
+    @TableField(value = "name")
+    private String name;
+
+    /**
+     * 联系方式
+     */
+    @TableField(value = "phone")
+    private String phone;
+
+    /**
+     * 经度
+     */
+    @TableField(value = "longitude")
+    private BigDecimal longitude;
+
+    /**
+     * 纬度
+     */
+    @TableField(value = "latitude")
+    private BigDecimal latitude;
+
+    /**
+     * 标记
+     */
+    @TableField(value = "marker")
+    private String marker;
+
+    /**
+     * 创建人
+     */
+    @TableField(value = "create_by")
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    private LocalDateTime createTime;
+
+    /**
+     * 修改人
+     */
+    @TableField(value = "update_by")
+    private String updateBy;
+
+    /**
+     * 修改时间
+     */
+    @TableField(value = "update_time")
+    private LocalDateTime updateTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 63 - 0
zksy-system/src/main/java/com/zksy/base/domain/MessageData.java

@@ -0,0 +1,63 @@
+package com.zksy.base.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 留言
+ * @TableName message_data
+ */
+@TableName(value ="message_data")
+@Data
+public class MessageData implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 设备名称
+     */
+    @TableField(value = "name")
+    private String name;
+
+    /**
+     * 联系人
+     */
+    @TableField(value = "device_name")
+    private String deviceName;
+
+    /**
+     * 联系方式
+     */
+    @TableField(value = "phone")
+    private String phone;
+
+    /**
+     * 留言内容
+     */
+    @TableField(value = "content")
+    private String content;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    @TableField(value = "update_time")
+    private LocalDateTime updateTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 16 - 0
zksy-system/src/main/java/com/zksy/base/domain/NewsUpdates.java

@@ -31,6 +31,22 @@ public class NewsUpdates implements Serializable {
      */
     @TableField(value = "news_name")
     private String newsName;
+    /**
+     * 新闻作者
+     */
+    @TableField(value = "news_author")
+    private String newsAuthor;
+    /**
+     * 新闻描述
+     */
+    @TableField(value = "news_desc")
+    private String newsDesc;
+
+    /**
+     * 新闻分类
+     */
+    @TableField(value = "news_category")
+    private String newsCategory;
 
     /**
      * 新闻详情

+ 22 - 0
zksy-system/src/main/java/com/zksy/base/domain/ProductCenter.java

@@ -41,6 +41,22 @@ public class ProductCenter implements Serializable {
      */
     @TableField(value = "product_name")
     private String productName;
+    /**
+     * 产品型号
+     */
+    @TableField(value = "product_model")
+    private String productModel;
+
+    /**
+     * 产品介绍
+     */
+    @TableField(value = "product_introduction")
+    private String productIntroduction;
+    /**
+     * 场景
+     */
+    @TableField(value = "product_scene")
+    private String productScene;
 
     /**
      * 产品详情
@@ -58,6 +74,12 @@ public class ProductCenter implements Serializable {
     @JsonIgnore
     private MultipartFile productMultipartFile;
 
+    /**
+     * 是否核心产品
+     */
+    @TableField(value = "is_core")
+    private String isCore;
+
     /**
      * 创建人
      */

+ 4 - 1
zksy-system/src/main/java/com/zksy/base/domain/vo/ProductCenterVo.java

@@ -1,6 +1,5 @@
 package com.zksy.base.domain.vo;
 
-import com.zksy.base.domain.ProductCenter;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
@@ -30,7 +29,11 @@ public class ProductCenterVo {
         private String productCategory;
         private String productType;
         private String productName;
+        private String productModel;
+        private String productIntroduction;
+        private String productScene;
         private String productUrl;
+        private String isCore;
     }
 }
 

+ 18 - 0
zksy-system/src/main/java/com/zksy/base/mapper/LocationInforMapper.java

@@ -0,0 +1,18 @@
+package com.zksy.base.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zksy.base.domain.LocationInfor;
+
+/**
+* @author Administrator
+* @description 针对表【location_infor(位置信息)】的数据库操作Mapper
+* @createDate 2025-12-19 10:57:19
+* @Entity com.zksy.base.domain.LocationInfor
+*/
+public interface LocationInforMapper extends BaseMapper<LocationInfor> {
+
+}
+
+
+
+

+ 18 - 0
zksy-system/src/main/java/com/zksy/base/mapper/MessageDataMapper.java

@@ -0,0 +1,18 @@
+package com.zksy.base.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zksy.base.domain.MessageData;
+
+/**
+* @author Administrator
+* @description 针对表【message_data(留言)】的数据库操作Mapper
+* @createDate 2026-01-16 11:36:28
+* @Entity com.zksy.base.domain.MessageData
+*/
+public interface MessageDataMapper extends BaseMapper<MessageData> {
+
+}
+
+
+
+

+ 13 - 0
zksy-system/src/main/java/com/zksy/base/service/LocationInforService.java

@@ -0,0 +1,13 @@
+package com.zksy.base.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zksy.base.domain.LocationInfor;
+
+/**
+* @author Administrator
+* @description 针对表【location_infor(位置信息)】的数据库操作Service
+* @createDate 2025-12-19 10:57:19
+*/
+public interface LocationInforService extends IService<LocationInfor> {
+
+}

+ 13 - 0
zksy-system/src/main/java/com/zksy/base/service/MessageDataService.java

@@ -0,0 +1,13 @@
+package com.zksy.base.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zksy.base.domain.MessageData;
+
+/**
+* @author Administrator
+* @description 针对表【message_data(留言)】的数据库操作Service
+* @createDate 2026-01-16 11:36:28
+*/
+public interface MessageDataService extends IService<MessageData> {
+
+}

+ 4 - 0
zksy-system/src/main/java/com/zksy/base/service/WebSiteService.java

@@ -33,4 +33,8 @@ public interface WebSiteService {
     ProductCenter getProductById(String id);
 
     Page<ProductCenter> getProductByPage(Integer pageNum, Integer pageSize);
+
+    List<LocationInfor> getLocationInforList();
+
+    Boolean saveMessage(MessageData messageData);
 }

+ 37 - 3
zksy-system/src/main/java/com/zksy/base/service/impl/FileManageServiceImpl.java

@@ -7,6 +7,7 @@ import com.zksy.base.mapper.FileManageMapper;
 import com.zksy.base.service.FileManageService;
 import com.zksy.common.core.domain.AjaxResult;
 import com.zksy.common.exception.ServiceException;
+import com.zksy.common.utils.StringUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.exception.ExceptionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -19,7 +20,6 @@ import java.io.File;
 import java.io.IOException;
 import java.time.LocalDateTime;
 import java.util.*;
-import java.util.stream.Collectors;
 
 /**
 * @author Administrator
@@ -199,6 +199,9 @@ public class FileManageServiceImpl extends ServiceImpl<FileManageMapper, FileMan
     @Override
     public AjaxResult deleteFile(String id) {
         FileManage fileUpload = mapper.selectById(id);
+        if(fileUpload == null){
+            return AjaxResult.error("指定的文件不存在");
+        }
         String filePath = localFileServerUploadDir+fileUpload.getFileName();
         File file = new File(filePath);
         if (file.exists()) {
@@ -219,12 +222,43 @@ public class FileManageServiceImpl extends ServiceImpl<FileManageMapper, FileMan
     @Transactional
     public String deleteFiles(List<String> ids) {
         if (ids == null || ids.isEmpty()) {
+            log.warn("文件批量删除失败:传入的文件ID集合为空");
             return "删除失败:文件ID集合不能为空";
         }
+
+        List<String> successIds = new ArrayList<>();
+        List<String> failIds = new ArrayList<>();
+
         for (String id : ids) {
-            deleteFile(id);
+            // 先校验单个ID是否为空
+            if (!StringUtils.hasText(id)) {
+                log.warn("文件删除失败:文件ID为空");
+                failIds.add("空ID");
+                continue;
+            }
+
+            try {
+                AjaxResult deleteResult = deleteFile(id);
+                if (deleteResult.isSuccess()) {
+                    successIds.add(id);
+                    log.info("文件删除成功,ID:{}", id);
+                } else {
+                    failIds.add(id);
+                    log.warn("文件删除失败,ID:{},原因:deleteFile方法返回失败", id);
+                }
+            } catch (Exception e) {
+                failIds.add(id);
+                log.error("文件删除异常,ID:{}", id, e);
+            }
+        }
+        if (failIds.isEmpty()) {
+            return String.format("删除成功:共删除 %d 个文件,ID列表:%s", successIds.size(), successIds);
+        } else if (successIds.isEmpty()) {
+            return String.format("删除失败:所有文件均删除失败,失败ID列表:%s", failIds);
+        } else {
+            return String.format("部分删除成功:成功 %d 个(ID:%s),失败 %d 个(ID:%s)",
+                    successIds.size(), successIds, failIds.size(), failIds);
         }
-        return "删除成功";
     }
 
     @Override

+ 22 - 0
zksy-system/src/main/java/com/zksy/base/service/impl/LocationInforServiceImpl.java

@@ -0,0 +1,22 @@
+package com.zksy.base.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zksy.base.domain.LocationInfor;
+import com.zksy.base.mapper.LocationInforMapper;
+import com.zksy.base.service.LocationInforService;
+import org.springframework.stereotype.Service;
+
+/**
+* @author Administrator
+* @description 针对表【location_infor(位置信息)】的数据库操作Service实现
+* @createDate 2025-12-19 10:57:19
+*/
+@Service
+public class LocationInforServiceImpl extends ServiceImpl<LocationInforMapper, LocationInfor>
+    implements LocationInforService{
+
+}
+
+
+
+

+ 22 - 0
zksy-system/src/main/java/com/zksy/base/service/impl/MessageDataServiceImpl.java

@@ -0,0 +1,22 @@
+package com.zksy.base.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zksy.base.domain.MessageData;
+import com.zksy.base.mapper.MessageDataMapper;
+import com.zksy.base.service.MessageDataService;
+import org.springframework.stereotype.Service;
+
+/**
+* @author Administrator
+* @description 针对表【message_data(留言)】的数据库操作Service实现
+* @createDate 2026-01-16 11:36:28
+*/
+@Service
+public class MessageDataServiceImpl extends ServiceImpl<MessageDataMapper, MessageData>
+    implements MessageDataService{
+
+}
+
+
+
+

+ 2 - 1
zksy-system/src/main/java/com/zksy/base/service/impl/QualificationCertificateServiceImpl.java

@@ -8,7 +8,7 @@ import com.zksy.base.domain.QualificationCertificate;
 import com.zksy.base.mapper.QualificationCertificateMapper;
 import com.zksy.base.service.FileManageService;
 import com.zksy.base.service.QualificationCertificateService;
-import com.zksy.common.core.domain.AjaxResult;
+import com.zksy.common.utils.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -127,6 +127,7 @@ public class QualificationCertificateServiceImpl extends ServiceImpl<Qualificati
             }
         }
         entity.setUpdateTime(LocalDateTime.now());
+        entity.setUpdateBy(SecurityUtils.getUsername());
         updateById(entity);
         if (entity.getMultipartFile() != null) {
             fileManageService.uploadListFile(Arrays.asList(entity.getMultipartFile()), entity.getId(), "荣誉资质");

+ 34 - 7
zksy-system/src/main/java/com/zksy/base/service/impl/WebSiteServiceImpl.java

@@ -1,20 +1,20 @@
 package com.zksy.base.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zksy.base.domain.*;
 import com.zksy.base.domain.vo.ProductCenterVo;
 import com.zksy.base.mapper.*;
 import com.zksy.base.service.BasicInfoService;
+import com.zksy.base.service.MessageDataService;
 import com.zksy.base.service.QualificationCertificateService;
 import com.zksy.base.service.WebSiteService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
 import java.util.List;
-import java.util.Map;
 import java.util.stream.Collectors;
 
 @Service
@@ -33,6 +33,10 @@ public class WebSiteServiceImpl implements WebSiteService {
     private SolutionMapper solutionMapper;
     @Autowired
     private ProductCenterMapper productCenterMapper;
+    @Autowired
+    private LocationInforMapper locationInforMapper;
+    @Autowired
+    private MessageDataService messageDataService;
 
     @Override
     public Page<SmartEmployment> getRecruitmentInfoByPage(Integer pageNum, Integer pageSize) {
@@ -64,12 +68,12 @@ public class WebSiteServiceImpl implements WebSiteService {
 
     @Override
     public Page<NewsUpdates> getNewsUpdatesListWithoutSpecialNews(Integer pageNum, Integer pageSize) {
-        return newsUpdatesMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.lambdaQuery(NewsUpdates.class).eq(NewsUpdates::getIsSpecial, false));
+        return newsUpdatesMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.lambdaQuery(NewsUpdates.class).eq(NewsUpdates::getIsSpecial, false).orderByDesc(NewsUpdates::getCreateTime));
     }
 
     @Override
     public Page<NewsUpdates> getSpecialNewsUpdatesList(Integer pageNum, Integer pageSize) {
-        return newsUpdatesMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.lambdaQuery(NewsUpdates.class).eq(NewsUpdates::getIsSpecial, true));
+        return newsUpdatesMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.lambdaQuery(NewsUpdates.class).eq(NewsUpdates::getIsSpecial, true).orderByDesc(NewsUpdates::getCreateTime));
     }
 
     @Override
@@ -84,7 +88,10 @@ public class WebSiteServiceImpl implements WebSiteService {
 
     @Override
     public Page<Solution> getSolution(Integer pageNum, Integer pageSize) {
-        return solutionMapper.selectPage(new Page<>(pageNum, pageSize), Wrappers.emptyWrapper());
+        Page<Solution> page = new Page<>(pageNum, pageSize);
+        LambdaQueryWrapper<Solution> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.orderByDesc(Solution::getReleaseTime);
+        return solutionMapper.selectPage(page, queryWrapper);
     }
 
     @Override
@@ -109,7 +116,11 @@ public class WebSiteServiceImpl implements WebSiteService {
                                                                 productCenter.getProductCategory(),
                                                                 productCenter.getProductType(),
                                                                 productCenter.getProductName(),
-                                                                productCenter.getProductUrl()
+                                                                productCenter.getProductModel(),
+                                                                productCenter.getProductIntroduction(),
+                                                                productCenter.getProductScene(),
+                                                                productCenter.getProductUrl(),
+                                                                productCenter.getIsCore()
                                                         )
                                                 ).collect(Collectors.toList())
                                         )
@@ -126,7 +137,23 @@ public class WebSiteServiceImpl implements WebSiteService {
     @Override
     public Page<ProductCenter> getProductByPage(Integer pageNum, Integer pageSize) {
         Page<ProductCenter> page = new Page<>(pageNum, pageSize);
-        return productCenterMapper.selectPage(page, Wrappers.emptyWrapper());
+        LambdaQueryWrapper<ProductCenter> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.orderByDesc(ProductCenter::getCreateTime);
+        return productCenterMapper.selectPage(page, queryWrapper);
+    }
+
+    @Override
+    public List<LocationInfor> getLocationInforList() {
+        LambdaQueryWrapper<LocationInfor> wrapper = new LambdaQueryWrapper<>();
+        wrapper.orderByAsc(LocationInfor::getCreateTime);
+        return locationInforMapper.selectList(wrapper);
+    }
+
+    @Override
+    public Boolean saveMessage(MessageData messageData) {
+        messageData.setCreateTime(LocalDateTime.now());
+        messageData.setUpdateTime(LocalDateTime.now());
+        return messageDataService.save(messageData);
     }
 
 }

+ 26 - 0
zksy-system/src/main/resources/mapper/base/LocationInforMapper.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zksy.base.mapper.LocationInforMapper">
+
+    <resultMap id="BaseResultMap" type="com.zksy.base.domain.LocationInfor">
+            <id property="id" column="id" jdbcType="VARCHAR"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="phone" column="phone" jdbcType="VARCHAR"/>
+            <result property="longitude" column="longitude" jdbcType="DECIMAL"/>
+            <result property="latitude" column="latitude" jdbcType="DECIMAL"/>
+            <result property="marker" column="marker" jdbcType="VARCHAR"/>
+            <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,name,phone,
+        longitude,latitude,marker,
+        create_by,create_time,update_by,
+        update_time
+    </sql>
+</mapper>

+ 21 - 0
zksy-system/src/main/resources/mapper/base/MessageDataMapper.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zksy.base.mapper.MessageDataMapper">
+
+    <resultMap id="BaseResultMap" type="com.zksy.base.domain.MessageData">
+            <id property="id" column="id" jdbcType="BIGINT"/>
+            <result property="deviceName" column="device_name" jdbcType="VARCHAR"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="phone" column="phone" jdbcType="CHAR"/>
+            <result property="content" column="content" jdbcType="VARCHAR"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,device_name,name,phone,
+        content,create_time,update_time
+    </sql>
+</mapper>

+ 5 - 2
zksy-system/src/main/resources/mapper/base/NewsUpdatesMapper.xml

@@ -7,9 +7,12 @@
     <resultMap id="BaseResultMap" type="com.zksy.base.domain.NewsUpdates">
             <id property="id" column="id" jdbcType="VARCHAR"/>
             <result property="newsName" column="news_name" jdbcType="VARCHAR"/>
+            <result property="newsDesc" column="news_desc" jdbcType="VARCHAR"/>
+            <result property="newsCategory" column="news_category" jdbcType="VARCHAR"/>
             <result property="newsDetails" column="news_details" jdbcType="VARCHAR"/>
             <result property="newsUrl" column="news_url" jdbcType="VARCHAR"/>
             <result property="isSpecial" column="is_special" jdbcType="BOOLEAN"/>
+            <result property="newsAuthor" column="news_author" jdbcType="VARCHAR"/>
             <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
             <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
             <result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
@@ -18,8 +21,8 @@
     </resultMap>
 
     <sql id="Base_Column_List">
-        id,news_name,news_details,
-        news_url,is_special,create_by,create_time,
+        id,news_name,news_desc,news_category,news_details,
+        news_url,is_special,news_author,create_by,create_time,
         release_time,
         update_by,update_time
     </sql>

+ 6 - 2
zksy-system/src/main/resources/mapper/base/ProductCenterMapper.xml

@@ -9,8 +9,12 @@
             <result property="productCategory" column="product_category" jdbcType="VARCHAR"/>
             <result property="productType" column="product_type" jdbcType="VARCHAR"/>
             <result property="productName" column="product_name" jdbcType="VARCHAR"/>
+            <result property="productModel" column="product_model" jdbcType="VARCHAR"/>
+            <result property="productIntroduction" column="product_introduction" jdbcType="VARCHAR"/>
+            <result property="productScene" column="product_scene" jdbcType="VARCHAR"/>
             <result property="productDetails" column="product_details" jdbcType="VARCHAR"/>
             <result property="productUrl" column="product_url" jdbcType="VARCHAR"/>
+            <result property="isCore" column="is_core" jdbcType="VARCHAR"/>
             <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
             <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
             <result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
@@ -19,8 +23,8 @@
 
     <sql id="Base_Column_List">
         id,product_category,product_type,
-        product_name,product_details,product_url,
-        create_by,create_time,update_by,
+        product_name,product_model,product_introduction,product_scene,product_details,product_url,
+        is_core,create_by,create_time,update_by,
         update_time
     </sql>
 </mapper>