From e3a2245265516fef78b4737d6fffc939e7c5e0af Mon Sep 17 00:00:00 2001
From: huliguo <2023611923@qq.com>
Date: 星期四, 03 七月 2025 17:56:07 +0800
Subject: [PATCH] bug修改

---
 pt-admin/src/main/java/com/ruoyi/web/controller/errand/AgreementController.java |   93 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 85 insertions(+), 8 deletions(-)

diff --git a/pt-admin/src/main/java/com/ruoyi/web/controller/errand/AgreementController.java b/pt-admin/src/main/java/com/ruoyi/web/controller/errand/AgreementController.java
index e643253..4fc9e30 100644
--- a/pt-admin/src/main/java/com/ruoyi/web/controller/errand/AgreementController.java
+++ b/pt-admin/src/main/java/com/ruoyi/web/controller/errand/AgreementController.java
@@ -4,15 +4,23 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.errand.domain.Agreement;
+import com.ruoyi.errand.mapper.AgreementMapper;
 import com.ruoyi.errand.object.dto.app.AgreementDTO;
+import com.ruoyi.errand.object.dto.sys.AgreementContentDTO;
 import com.ruoyi.errand.service.AgreementService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cglib.core.Local;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 @RestController
 @RequestMapping(value = "/app/agreement")
@@ -21,9 +29,11 @@
 
     @Autowired
     private AgreementService agreementService;
+    @Autowired
+    private AgreementMapper agreementMapper;
 
     /**
-     * 协议 类型(1=用户协议,2=隐私协议,3=下单须知,4=注销协议,5=首页介绍,6=快递代拿下单说明,7=商品代买下单说明)
+     * 协议 类型(1=用户协议,2=隐私协议,3=下单须知,4=注销协议,5=首页介绍,6=快递代拿下单说明,7=商品代买下单说明,8=会员协议)
      */
     @GetMapping("/getAgreementByType")
     @ApiOperation(value = "根据类型获取不同协议",tags = "app用户端-协议")
@@ -35,16 +45,83 @@
     @PreAuthorize("@ss.hasPermi('system:agreement:list')")
     @ApiOperation(value = "协议管理-添加", tags = {"管理后台-系统管理"})
     public R<Void> addAgreement(@RequestBody AgreementDTO agreementDTO){
-        //先删除启动页的数据
         Agreement one = agreementService.getOne(new LambdaQueryWrapper<Agreement>().eq(Agreement::getType, agreementDTO.getType()));
-        if (one!=null){
-            agreementService.removeById(one);
-        }
-        Agreement agreement = new Agreement();
-        BeanUtils.copyProperties(agreementDTO,agreement);
-        agreementService.save(agreement);
+        one.setContent(agreementDTO.getContent());
+        agreementService.updateById(one);
         return R.ok();
     }
 
+    @PostMapping("/addAgreement/content")
+    @PreAuthorize("@ss.hasPermi('system:agreement:list')")
+    @ApiOperation(value = "协议管理-内容管理", tags = {"管理后台-系统管理"})
+    public R<Void> addAgreementContent(@RequestBody AgreementContentDTO dto){
+        //修改
+        List<Agreement> agreementList = agreementMapper.selectList(new LambdaQueryWrapper<Agreement>().in(Agreement::getType, Arrays.asList(5, 6, 7)));
+        ArrayList<Integer> types = new ArrayList<>();
+        types.add(5);
+        types.add(6);
+        types.add(7);
+        if (agreementList!=null&& !agreementList.isEmpty()){
+            agreementList.forEach(agreement -> {
+                if (agreement.getType()==5){
+                    agreement.setContent(dto.getContent());
+                    types.remove(agreement.getType());
+                    this.agreementMapper.updateById(agreement);
+                }
+                if (agreement.getType()==6){
+                    agreement.setContent(dto.getTakeContent());
+                    types.remove(agreement.getType());
+                    this.agreementMapper.updateById(agreement);
+                }
+                if (agreement.getType()==7){
+                    agreement.setContent(dto.getBuyContent());
+                    types.remove(agreement.getType());
+                    this.agreementMapper.updateById(agreement);
+                }
+            });
+        }
+       if (!types.isEmpty()){
+           types.forEach(type -> {
+               if (type==5){
+                   Agreement agreement = new Agreement();
+                   agreement.setContent(dto.getContent());
+                   agreement.setType(type);
+                   agreement.setCreateTime(LocalDateTime.now());
+                   this.agreementMapper.insert(agreement);
+               }
+               if (type==6){
+                   Agreement agreement = new Agreement();
+                   agreement.setContent(dto.getTakeContent());
+                   agreement.setType(type);
+                   agreement.setCreateTime(LocalDateTime.now());
+                   this.agreementMapper.insert(agreement);
+               }
+               if (type==7){
+                   Agreement agreement = new Agreement();
+                   agreement.setContent(dto.getBuyContent());
+                   agreement.setType(type);
+                   agreement.setCreateTime(LocalDateTime.now());
+                   this.agreementMapper.insert(agreement);
+               }
+           });
+       }
+       return R.ok();
+    }
+
+    @GetMapping("/getAgreement/content")
+    @PreAuthorize("@ss.hasPermi('system:agreement:list')")
+    @ApiOperation(value = "协议管理-内容管理-查看详情", tags = {"管理后台-系统管理"})
+    public R<AgreementContentDTO> getAgreementContent(){
+        AgreementContentDTO vo = new AgreementContentDTO();
+        List<Agreement> agreementList = agreementMapper.selectList(new LambdaQueryWrapper<Agreement>().in(Agreement::getType, Arrays.asList(5, 6, 7)));
+        if (agreementList!=null&& !agreementList.isEmpty()){
+            agreementList.forEach(agreement -> {
+                if (agreement.getType()==5) vo.setContent(agreement.getContent());
+                if (agreement.getType()==6) vo.setTakeContent(agreement.getContent());
+                if (agreement.getType()==7) vo.setBuyContent(agreement.getContent());
+            });
+        }
+        return R.ok(vo);
+    }
 
 }
\ No newline at end of file

--
Gitblit v1.7.1