Преглед на файлове

feat:后端项目,在业务模块中新增一个修改SKU状态的接口;修复雪花ID传递到前端精度丢失的问题;

yang yi преди 8 месеца
родител
ревизия
43a0a787df

+ 25 - 0
open-api-commom/src/main/java/space/anyi/openAPI/comom/model/interfaceInvokeSku/dto/RequestUpdateStatusOfInterFaceInvokeSku.java

@@ -0,0 +1,25 @@
+package space.anyi.openAPI.comom.model.interfaceInvokeSku.dto;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @ProjectName: yangyi-open-api-platform
+ * @FileName: RequestUpdateStatusOfInterFaceInvokeSku
+ * @Author: 杨逸
+ * @Data:2025/12/30 22:03
+ * @Description:
+ */
+@Data
+public class RequestUpdateStatusOfInterFaceInvokeSku {
+    /**
+     * 主键
+     */
+    private String id;
+
+    /**
+     * 状态;0:未上架,1:上架,2:下架
+     */
+    private Integer status;
+}

+ 5 - 1
open-api-commom/src/main/java/space/anyi/openAPI/comom/model/interfaceInvokeSku/vo/InterfaceInvokeSkuVo.java

@@ -16,8 +16,12 @@ public class InterfaceInvokeSkuVo {
     /**
      * 主键
      */
-    private Long id;
+    private String id;
 
+    /**
+     * 接口Id
+     */
+    private Long interfaceInfoId;
 
     /**
      * 商品标题

+ 3 - 0
open-api-commom/src/main/java/space/anyi/openAPI/comom/service/InterfaceInvokeSkuService.java

@@ -6,6 +6,7 @@ import space.anyi.openAPI.comom.model.interfaceInvokeSku.InterfaceInvokeSku;
 import com.baomidou.mybatisplus.extension.service.IService;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestAddInterFaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestPageInterfaceInvokeSku;
+import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestUpdateStatusOfInterFaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.vo.InterfaceInvokeSkuVo;
 
 /**
@@ -18,4 +19,6 @@ public interface InterfaceInvokeSkuService extends IService<InterfaceInvokeSku>
     PageVO<InterfaceInvokeSkuVo> listPage(RequestPageInterfaceInvokeSku requestPageInterfaceInvokeSku);
 
     ResponseResult add(RequestAddInterFaceInvokeSku requestAddInterFaceInvokeSku);
+
+    boolean updateStatus(RequestUpdateStatusOfInterFaceInvokeSku requestUpdateStatusOfInterFaceInvokeSku);
 }

+ 6 - 0
src/main/java/space/anyi/openAPI/controller/InterfaceInvokeSkuController.java

@@ -7,6 +7,7 @@ import space.anyi.openAPI.comom.model.interfaceInvokeSku.InterfaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestAddInterFaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestPageInterfaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestUpdateInterFaceInvokeSku;
+import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestUpdateStatusOfInterFaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.vo.InterfaceInvokeSkuVo;
 import space.anyi.openAPI.comom.service.InterfaceInvokeSkuService;
 import space.anyi.openAPI.util.BeanCopyUtil;
@@ -86,6 +87,11 @@ public class InterfaceInvokeSkuController {
         return ResponseResult.okResult();
     }
 
+    @PutMapping("/status")
+    public ResponseResult updateStatus(@RequestBody RequestUpdateStatusOfInterFaceInvokeSku requestUpdateStatusOfInterFaceInvokeSku){
+        interfaceInvokeSkuService.updateStatus(requestUpdateStatusOfInterFaceInvokeSku);
+        return ResponseResult.okResult();
+    }
     /**
      * @param ids List of InterfaceInvokeSKU IDs
      * @return {@code ResponseResult }

+ 1 - 0
src/main/java/space/anyi/openAPI/mapper/InterfaceInvokeSkuMapper.java

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 */
 public interface InterfaceInvokeSkuMapper extends BaseMapper<InterfaceInvokeSku> {
 
+    boolean updateStatus(String id, Integer status);
 }
 
 

+ 19 - 1
src/main/java/space/anyi/openAPI/service/impl/InterfaceInvokeSkuServiceImpl.java

@@ -8,12 +8,16 @@ import space.anyi.openAPI.comom.model.commom.ResponseResult;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.InterfaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestAddInterFaceInvokeSku;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestPageInterfaceInvokeSku;
+import space.anyi.openAPI.comom.model.interfaceInvokeSku.dto.RequestUpdateStatusOfInterFaceInvokeSku;
 import space.anyi.openAPI.comom.service.InterfaceInvokeSkuService;
 import space.anyi.openAPI.comom.model.interfaceInvokeSku.vo.InterfaceInvokeSkuVo;
 import space.anyi.openAPI.mapper.InterfaceInvokeSkuMapper;
 import org.springframework.stereotype.Service;
 import space.anyi.openAPI.util.BeanCopyUtil;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 /**
 * @author 杨逸
 * @description 针对表【interface_invoke_sku】的数据库操作Service实现
@@ -26,7 +30,13 @@ public class InterfaceInvokeSkuServiceImpl extends ServiceImpl<InterfaceInvokeSk
     @Override
     public PageVO<InterfaceInvokeSkuVo> listPage(RequestPageInterfaceInvokeSku requestPageInterfaceInvokeSku) {
         Page<InterfaceInvokeSku> page = page(Page.of(requestPageInterfaceInvokeSku.getCurrent(), requestPageInterfaceInvokeSku.getSize()));
-        PageVO<InterfaceInvokeSkuVo> pageVO = new PageVO<InterfaceInvokeSkuVo>(BeanCopyUtil.copyBean(page.getRecords(),InterfaceInvokeSkuVo.class), page.getTotal());
+        List<InterfaceInvokeSkuVo> list = page.getRecords().stream().map(sku -> {
+            InterfaceInvokeSkuVo interfaceInvokeSkuVo = BeanCopyUtil.copyBean(sku, InterfaceInvokeSkuVo.class);
+            //手动映射雪花ID,因为雪花ID是Long类型,而前端需要的是String类型,js精度低
+            interfaceInvokeSkuVo.setId(sku.getId().toString());
+            return interfaceInvokeSkuVo;
+        }).collect(Collectors.toList());
+        PageVO<InterfaceInvokeSkuVo> pageVO = new PageVO<InterfaceInvokeSkuVo>(list, page.getTotal());
         return pageVO;
     }
 
@@ -38,6 +48,14 @@ public class InterfaceInvokeSkuServiceImpl extends ServiceImpl<InterfaceInvokeSk
         save(interfaceInvokeSku);
         return ResponseResult.okResult();
     }
+
+    @Override
+    public boolean updateStatus(RequestUpdateStatusOfInterFaceInvokeSku requestUpdateStatusOfInterFaceInvokeSku) {
+        //todo;check
+        String id = requestUpdateStatusOfInterFaceInvokeSku.getId();
+        Integer status = requestUpdateStatusOfInterFaceInvokeSku.getStatus();
+        return getBaseMapper().updateStatus(id,status);
+    }
 }
 
 

+ 3 - 0
src/main/resources/mapper/InterfaceInvokeSkuMapper.xml

@@ -24,4 +24,7 @@
         info,status,create_time,
         update_time,delete_flag
     </sql>
+    <update id="updateStatus">
+        update interface_invoke_sku set status = #{status} where id = #{id}
+    </update>
 </mapper>