From a0ab257929e9a28c7fe61841bf86ac95027970cd Mon Sep 17 00:00:00 2001 From: wxy Date: Wed, 3 Apr 2024 11:34:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../muyu/product/controller/TypeController.java | 15 +++++++++++---- .../java/com/muyu/product/mapper/TypeMapper.java | 1 + .../com/muyu/product/service/TypeService.java | 2 ++ .../product/service/impl/ProductServiceImpl.java | 16 +++++++++++++--- .../product/service/impl/TypeServiceImpl.java | 5 +++++ .../main/resources/mapper/product/TypeMapper.xml | 4 ++++ 6 files changed, 36 insertions(+), 7 deletions(-) diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/TypeController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/TypeController.java index 63e0c76..a380fd2 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/TypeController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/TypeController.java @@ -5,11 +5,9 @@ import com.muyu.product.domain.DTO.ProductTypeAttr; import com.muyu.product.domain.Resp.ProductTypeResp; import com.muyu.product.service.TypeService; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -37,12 +35,21 @@ public class TypeController { * @return */ @GetMapping("/queryTypeAttr/{flag}/{id}") + @ApiOperation("属性/参数类型查询") public AjaxResult queryType(@PathVariable Integer flag,@PathVariable Integer id){ List list =typeService.queryType(flag,id); return AjaxResult.success(list); } + @DeleteMapping("/{typeId}") + @ApiOperation("类型删除") + public AjaxResult deleteType(@PathVariable Integer typeId){ + Integer res = typeService.deleteType(typeId); + return AjaxResult.success(res==1?"删除成功":"删除失败"); + } + + } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/TypeMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/TypeMapper.java index f63b4b4..990507f 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/TypeMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/TypeMapper.java @@ -19,4 +19,5 @@ public interface TypeMapper { List queryType(@Param("flag") Integer flag, @Param("id") Integer id); + Integer deleteType(Integer typeId); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/TypeService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/TypeService.java index b31d4cf..fc5fc6d 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/TypeService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/TypeService.java @@ -15,4 +15,6 @@ public interface TypeService { List queryTypeAll(); List queryType(Integer flag, Integer id); + + Integer deleteType(Integer typeId); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProductServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProductServiceImpl.java index 1f2828c..65fdb75 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProductServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProductServiceImpl.java @@ -2,6 +2,7 @@ package com.muyu.product.service.impl; import com.alibaba.fastjson.JSONObject; // 导入 FastJSON 的 JSONObject 类 import com.github.pagehelper.PageHelper; // 导入 PageHelper 类 import com.github.pagehelper.PageInfo; // 导入 PageInfo 类 +import com.muyu.common.security.utils.SecurityUtils; import com.muyu.product.domain.DTO.ProductSkuAttr; // 导入 ProductSkuAttr 类 @@ -25,6 +26,8 @@ import java.time.LocalDateTime; import java.time.ZoneId; import java.util.*; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; @Service @@ -47,14 +50,16 @@ public class ProductServiceImpl implements ProductService { @Autowired private ProductSkuMapper productSkuMapper; + private ExecutorService executor = Executors.newFixedThreadPool(3); + public void checkProductParams(ProductReq productReq){ CompletableFuturemethodTypeFuture = - CompletableFuture.supplyAsync(() -> checkMethodType(productReq)); + CompletableFuture.supplyAsync(() -> checkMethodType(productReq),executor); CompletableFutureskuIdFuture = - CompletableFuture.supplyAsync(() -> findSkuId(productReq)); + CompletableFuture.supplyAsync(() -> findSkuId(productReq),executor); CompletableFutureproductNumberFuture = - CompletableFuture.supplyAsync(() -> checkProductNumber(productReq)); + CompletableFuture.supplyAsync(() -> checkProductNumber(productReq),executor); CompletableFutureallValidFuture = methodTypeFuture.thenCombine(skuIdFuture, (methodTypeResult,skuIdResult)-> @@ -103,6 +108,8 @@ public class ProductServiceImpl implements ProductService { public void productInsert(ProductReq productReq) { long start =System.currentTimeMillis(); + checkProductParams(productReq); + insertProduct(productReq.getProduct()); insertProductService(productReq.getProduct().getId(),productReq.getServiceIds()); @@ -112,6 +119,8 @@ public class ProductServiceImpl implements ProductService { insertProductSku(productReq); + log.info("耗时:{}",(System.currentTimeMillis()-start)); + } @@ -196,6 +205,7 @@ public class ProductServiceImpl implements ProductService { } private void insertProduct(Product product) { + product.setCreateBy(SecurityUtils.getUsername()); productMapper.insertProduct(product); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/TypeServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/TypeServiceImpl.java index 3300a7a..e979294 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/TypeServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/TypeServiceImpl.java @@ -29,4 +29,9 @@ public class TypeServiceImpl implements TypeService { public List queryType(Integer flag, Integer id) { return typeMapper.queryType(flag,id); } + + @Override + public Integer deleteType(Integer typeId) { + return typeMapper.deleteType(typeId); + } } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/TypeMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/TypeMapper.xml index 586983b..0dd3058 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/TypeMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/TypeMapper.xml @@ -4,6 +4,10 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + update t_product_type set id_delete = 0 where id = #{id} + +