From 11f1aaac4aee848dff5d1743baa1ff061da26c58 Mon Sep 17 00:00:00 2001
From: zepengdev <lzpsmith@outlook.com>
Date: Mon, 04 Aug 2025 22:12:06 +0800
Subject: [PATCH] feat: 增加支持@PostMapping方式的店铺资质删除接口

---
 oying-system/src/main/java/com/oying/modules/pc/store/rest/StoreQualificationMerchantController.java |   41 +++++++++++++++++++++++------------------
 1 files changed, 23 insertions(+), 18 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/rest/StoreQualificationMerchantController.java b/oying-system/src/main/java/com/oying/modules/pc/store/rest/StoreQualificationMerchantController.java
index fe4d46e..c1eafde 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/store/rest/StoreQualificationMerchantController.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/rest/StoreQualificationMerchantController.java
@@ -1,14 +1,17 @@
 package com.oying.modules.pc.store.rest;
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.copier.CopyOptions;
 import cn.hutool.core.collection.ListUtil;
 import com.oying.annotation.Log;
-import com.oying.modules.pc.common.core.domain.R;
+import com.oying.modules.pc.store.converter.StoreQualificationAssembler;
 import com.oying.modules.pc.store.domain.StoreQualification;
 import com.oying.modules.pc.store.domain.dto.StoreQualificationCreateRequest;
 import com.oying.modules.pc.store.domain.dto.StoreQualificationQueryCriteria;
 import com.oying.modules.pc.store.domain.dto.StoreQualificationUpdateRequest;
 import com.oying.modules.pc.store.service.StoreQualificationService;
 import com.oying.modules.pc.store.view.StoreQualificationMerchantView;
+import com.oying.utils.R;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -44,10 +47,11 @@
         List<StoreQualification> storeQualificationList = storeQualificationService.queryAll(criteria);
         List<StoreQualificationMerchantView> viewList = Optional.ofNullable(storeQualificationList).orElse(ListUtil.empty()).stream().map(i -> {
             StoreQualificationMerchantView view = new StoreQualificationMerchantView();
+            BeanUtil.copyProperties(i, view, CopyOptions.create().setIgnoreNullValue(true));
             view.setId(i.getQualificationId());
             view.setType(i.getQualificationType());
             view.setName(i.getQualificationName());
-            view.setImageUrl("");
+            view.setImageUrl(i.getQualificationImageUrl());
             return view;
         }).collect(Collectors.toList());
 
@@ -60,13 +64,9 @@
     //@PreAuthorize("@el.check('merchant:storeQualification:add') " +
     //        "and @storeMerchantOwnershipService.check(#storeId)")
     public ResponseEntity<?> create(@PathVariable Long storeId,
-                                         @Validated @RequestBody StoreQualificationCreateRequest request) {
-
-        StoreQualification resources = new StoreQualification();
-        resources.setStoreId(storeId);
-        resources.setQualificationType(request.getType());
-        resources.setQualificationImageId(request.getImageUploadFileId());
-        storeQualificationService.create(resources);
+                                    @Validated @RequestBody StoreQualificationCreateRequest request) {
+        request.setStoreId(Optional.ofNullable(request.getStoreId()).orElse(storeId));
+        storeQualificationService.create(StoreQualificationAssembler.to(request));
         return ResponseEntity.status(HttpStatus.CREATED).build();
     }
 
@@ -76,15 +76,10 @@
     //@PreAuthorize("@el.check('merchant:storeQualification:edit') " +
     //        "and @storeMerchantOwnershipService.check(#storeId)")
     public ResponseEntity<?> update(@PathVariable Long storeId,
-                                         @PathVariable Long qualificationId,
-                                         @Validated @RequestBody StoreQualificationUpdateRequest request) {
-
-        StoreQualification resources = new StoreQualification();
-        resources.setQualificationId(qualificationId);
-        resources.setStoreId(storeId);
-        resources.setQualificationType(request.getType());
-        resources.setQualificationImageId(request.getImageUploadFileId());
-        storeQualificationService.update(resources);
+                                    @PathVariable Long qualificationId,
+                                    @Validated @RequestBody StoreQualificationUpdateRequest request) {
+        request.setQualificationId(Optional.ofNullable(request.getQualificationId()).orElse(qualificationId));
+        storeQualificationService.update(request);
         return ResponseEntity.noContent().build();
     }
 
@@ -97,4 +92,14 @@
         storeQualificationService.deleteAll(ids);
         return ResponseEntity.noContent().build();
     }
+
+    @PostMapping(value = "/delete")
+    @Log("删除店铺资质")
+    @ApiOperation("删除店铺资质")
+    //@PreAuthorize("@el.check('merchant:storeQualification:batchDel') " +
+    //        "and @storeMerchantOwnershipService.check(#storeId)")
+    public ResponseEntity<?> batchDelete(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) {
+        storeQualificationService.deleteAll(ids);
+        return ResponseEntity.noContent().build();
+    }
 }

--
Gitblit v1.9.3