From 87ad5132196c8c33df792679e79bc122c63e1625 Mon Sep 17 00:00:00 2001 From: Tom Li Date: Tue, 2 Dec 2025 19:17:44 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E8=B0=83=E5=90=8C=E6=AD=A5=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jinchao/constant/ContactConst.java | 4 +- .../jinchao/constant/ProductConst.java | 2 +- .../jinchao/controller/ContactController.java | 13 +++- .../controller/CustomerController.java | 3 - .../jinchao/controller/ProductController.java | 75 +++++++++++++++---- .../controller/ProductObjController.java | 11 ++- .../modules/jinchao/mapper/CustomerMapper.xml | 16 ++-- .../modules/jinchao/mapper/ProductMapper.java | 3 +- .../jinchao/pojo/entity/ProductObjEntity.java | 5 +- .../modules/jinchao/pojo/vo/ProductVO.java | 12 ++- .../jinchao/service/IProductService.java | 13 ++-- .../service/impl/CustomerServiceImpl.java | 9 ++- .../service/impl/ProductServiceImpl.java | 61 +++++++++++++-- .../jinchao/wrapper/ProductWrapper.java | 8 +- 14 files changed, 178 insertions(+), 57 deletions(-) diff --git a/src/main/java/org/springblade/modules/jinchao/constant/ContactConst.java b/src/main/java/org/springblade/modules/jinchao/constant/ContactConst.java index 87491da..cffc72e 100644 --- a/src/main/java/org/springblade/modules/jinchao/constant/ContactConst.java +++ b/src/main/java/org/springblade/modules/jinchao/constant/ContactConst.java @@ -12,7 +12,7 @@ public interface ContactConst { */ Integer TYPE_SECONDARY = 2; - String DICT_1 = "dict_1"; + String DICT_CUSTOMER_COUNTRY = "customer_country"; - String DICT_2 = "dict_2"; + String DICT_CUSTOMER_FROM_TYPE = "customer_from_type"; } diff --git a/src/main/java/org/springblade/modules/jinchao/constant/ProductConst.java b/src/main/java/org/springblade/modules/jinchao/constant/ProductConst.java index 0525a47..001a40c 100644 --- a/src/main/java/org/springblade/modules/jinchao/constant/ProductConst.java +++ b/src/main/java/org/springblade/modules/jinchao/constant/ProductConst.java @@ -10,5 +10,5 @@ public interface ProductConst { /** * 特定价格 */ - Integer TYPE_PRICE_CUS = 2; + Integer TYPE_PRICE_CUSTOM = 2; } diff --git a/src/main/java/org/springblade/modules/jinchao/controller/ContactController.java b/src/main/java/org/springblade/modules/jinchao/controller/ContactController.java index 54d415d..efab273 100644 --- a/src/main/java/org/springblade/modules/jinchao/controller/ContactController.java +++ b/src/main/java/org/springblade/modules/jinchao/controller/ContactController.java @@ -41,6 +41,7 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.modules.jinchao.constant.ContactConst; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -55,6 +56,7 @@ import org.springblade.core.excel.util.ExcelUtil; import java.util.Map; import java.util.List; +import java.util.Objects; import jakarta.servlet.http.HttpServletResponse; @@ -146,10 +148,16 @@ public class ContactController extends BladeController { @ApiOperationSupport(order = 7) @Operation(summary = "逻辑删除", description = "传入ids") public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - return R.status(service.deleteLogic(Func.toLongList(ids))); + List listIds = Func.toLongList(ids); + listIds.forEach(id -> { + ContactEntity c = service.getById(id); + if (Objects.equals(ContactConst.TYPE_MAIN, c.getContactType())) { + R.fail("客户的第一个联系人不允许删除."); + } + }); + return R.status(service.deleteLogic(listIds)); } - /** * 导出数据 */ @@ -166,5 +174,4 @@ public class ContactController extends BladeController { List list = service.exportContact(queryWrapper); ExcelUtil.export(response, "[客户联系人]数据" + DateUtil.time(), "[客户联系人]数据表", list, ContactExcel.class); } - } diff --git a/src/main/java/org/springblade/modules/jinchao/controller/CustomerController.java b/src/main/java/org/springblade/modules/jinchao/controller/CustomerController.java index 51fa18d..abc263a 100644 --- a/src/main/java/org/springblade/modules/jinchao/controller/CustomerController.java +++ b/src/main/java/org/springblade/modules/jinchao/controller/CustomerController.java @@ -115,7 +115,6 @@ public class CustomerController extends BladeController { return R.data(pages); } - /** * [客户] 新增 */ @@ -156,11 +155,9 @@ public class CustomerController extends BladeController { return R.status(service.deleteLogic(Func.toLongList(ids))); } - /** * 导出数据 */ - @IsAdmin @GetMapping("/export-customer") @ApiOperationSupport(order = 9) @Operation(summary = "导出数据", description = "传入customer") diff --git a/src/main/java/org/springblade/modules/jinchao/controller/ProductController.java b/src/main/java/org/springblade/modules/jinchao/controller/ProductController.java index 1bd0c1f..f101b28 100644 --- a/src/main/java/org/springblade/modules/jinchao/controller/ProductController.java +++ b/src/main/java/org/springblade/modules/jinchao/controller/ProductController.java @@ -37,7 +37,6 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; -import org.springblade.modules.jinchao.constant.BaseCol; import org.springblade.modules.jinchao.constant.ProductConst; import org.springblade.modules.jinchao.pojo.vo.ProductVO; import org.springframework.web.bind.annotation.*; @@ -53,7 +52,7 @@ import org.springblade.core.excel.util.ExcelUtil; import java.util.Map; import java.util.List; -import java.util.stream.Collectors; +import java.util.Objects; import jakarta.servlet.http.HttpServletResponse; @@ -79,7 +78,8 @@ public class ProductController extends BladeController { @Operation(summary = "详情", description = "传入product") public R detail(ProductEntity product) { ProductEntity detail = service.getOne(Condition.getQueryWrapper(product)); - return R.data(ProductWrapper.build().entityVO(detail)); + ProductVO vo = ProductWrapper.build().entityVO(detail); + return R.data(vo); } /** @@ -90,7 +90,7 @@ public class ProductController extends BladeController { @Operation(summary = "list分页", description = "传入product") public R> list(@Parameter(hidden = true) @RequestParam Map product, Query query) { - return service.list(product,query); + return service.list(product, query); } /** @@ -100,7 +100,7 @@ public class ProductController extends BladeController { @ApiOperationSupport(order = 3) @Operation(summary = "page分页", description = "传入product") public R> page(ProductVO product, Query query) { - IPage pages = service.selectProductPage(Condition.getPage(query), product); + IPage pages = service.selectProductPage(Condition.getPage(query), product); return R.data(pages); } @@ -110,9 +110,15 @@ public class ProductController extends BladeController { @PostMapping("/save") @ApiOperationSupport(order = 4) @Operation(summary = "新增", description = "传入product") - public R save(@Valid @RequestBody ProductEntity product) { - product.setId(null); - return R.status(service.save(product)); + public R save(@Valid @RequestBody ProductVO vo) { + vo.setId(null); + if (service.existsCode(vo.getCode())) { + return R.fail("已经存在此code"); + } + if (service.existsNameCn(vo.getNameCn())) { + return R.fail("已经存在此nameCn"); + } + return R.status(service.save(vo)); } /** @@ -126,20 +132,53 @@ public class ProductController extends BladeController { } /** - * [产品] 新增或修改 + * [产品] 单条新增或修改 */ @PostMapping("/submit") @ApiOperationSupport(order = 6) @Operation(summary = "新增或修改", description = "传入product") - public R submit(@Valid @RequestBody ProductEntity product) { - return R.status(service.saveOrUpdate(product)); + public R submit(@Valid @RequestBody ProductVO vo) { + if (vo.getId() == null || vo.getId() == 0L) { + if (service.existsCode(vo.getCode())) { + return R.fail("已经存在此code"); + } + if (service.existsNameCn(vo.getNameCn())) { + return R.fail("已经存在此nameCn"); + } + } + if (Objects.equals(vo.getBizType(), ProductConst.TYPE_PRICE_CUSTOM)) { + // 跳过 + return R.fail("bizType类型错误"); + } + return R.status(service.saveOrUpdate(vo)); } @PostMapping("/submitBat") @ApiOperationSupport(order = 6) @Operation(summary = "批量新增或修改", description = "ProductEntity List") - public R submit(@Valid @RequestBody List products) { - return R.status(service.saveOrUpdateBatch(products)); + public R submitBat(@Valid @RequestBody List vos) { + if (vos != null && !vos.isEmpty()) { + for (ProductVO vo : vos) { + if (vo != null && Objects.equals(vo.getBizType(), ProductConst.TYPE_PRICE_CUSTOM)) { + // 跳过 + continue; + } + if (Objects.requireNonNull(vo).getId() == null || vo.getId() == 0L) { + // 新增check + if (service.existsCode(vo.getCode())) { + return R.fail("已经存在此code"); + } + if (service.existsNameCn(vo.getNameCn())) { + return R.fail("已经存在此nameCn"); + } + // 新增 + service.save(vo); + } else { + service.updateById(vo); + } + } + } + return R.success(); } /** @@ -158,7 +197,8 @@ public class ProductController extends BladeController { @GetMapping("/export-product") @ApiOperationSupport(order = 9) @Operation(summary = "导出数据", description = "传入product") - public void exportProduct(@Parameter(hidden = true) @RequestParam Map product, BladeUser bladeUser, HttpServletResponse response) { + public void exportProduct(@Parameter(hidden = true) @RequestParam Map product, + BladeUser bladeUser, HttpServletResponse response) { QueryWrapper queryWrapper = Condition.getQueryWrapper(product, ProductEntity.class); //if (!AuthUtil.isAdministrator()) { // queryWrapper.lambda().eq(Product::getTenantId, bladeUser.getTenantId()); @@ -167,4 +207,11 @@ public class ProductController extends BladeController { List list = service.exportProduct(queryWrapper); ExcelUtil.export(response, "[产品]数据" + DateUtil.time(), "[产品]数据表", list, ProductExcel.class); } + + @PostMapping("/oneKeyMatch") + @ApiOperationSupport(order = 10) + @Operation(summary = "一键匹配", description = "") + public R oneKeyMatch(@Parameter(description = "一键匹配", required = true) @Valid @RequestBody List list) { + return service.oneKeyMatch(list); + } } diff --git a/src/main/java/org/springblade/modules/jinchao/controller/ProductObjController.java b/src/main/java/org/springblade/modules/jinchao/controller/ProductObjController.java index b83701f..ebb849c 100644 --- a/src/main/java/org/springblade/modules/jinchao/controller/ProductObjController.java +++ b/src/main/java/org/springblade/modules/jinchao/controller/ProductObjController.java @@ -140,6 +140,16 @@ public class ProductObjController extends BladeController { return R.status(productObjService.saveOrUpdate(productObj)); } + /** + * [产品实物] 批量新增或修改 + */ + @PostMapping("/submitBat") + @ApiOperationSupport(order = 6) + @Operation(summary = "批量新增或修改", description = "传入productObj") + public R submitBat(@Valid @RequestBody List productObjs) { + return R.status(productObjService.saveOrUpdateBatch(productObjs)); + } + /** * [产品实物] 删除 */ @@ -150,7 +160,6 @@ public class ProductObjController extends BladeController { return R.status(productObjService.deleteLogic(Func.toLongList(ids))); } - /** * 导出数据 */ diff --git a/src/main/java/org/springblade/modules/jinchao/mapper/CustomerMapper.xml b/src/main/java/org/springblade/modules/jinchao/mapper/CustomerMapper.xml index b3170a8..ef1047d 100644 --- a/src/main/java/org/springblade/modules/jinchao/mapper/CustomerMapper.xml +++ b/src/main/java/org/springblade/modules/jinchao/mapper/CustomerMapper.xml @@ -45,8 +45,8 @@ c.company_name AS company_name, c.country AS country, c.from_type AS from_type, - c.address_1 AS address_1, - c.address_2 AS address_2, + c.address1 AS address1, + c.address2 AS address2, c.create_user AS create_user, c.create_time AS create_time, c.create_dept AS create_dept, @@ -59,22 +59,22 @@ AND u.is_deleted = 0 WHERE c.is_deleted = 0 - AND (c.company_name LIKE CONCAT('%', ${q.companyName}, '%')) + AND (c.company_name LIKE CONCAT('%', #{q.companyName}, '%')) - AND (c.country = ${q.country}) + AND (c.country = #{q.country}) - AND (ct.name LIKE CONCAT('%', ${q.contactName}, '%')) + AND (ct.name LIKE CONCAT('%', #{q.contactName}, '%')) - AND (u.real_name LIKE CONCAT('%', ${q.createUserName}, '%')) + AND (u.real_name LIKE CONCAT('%', #{q.createUserName}, '%')) GROUP BY c.id, c.company_name, c.country, - c.address_1, - c.address_2, + c.address1, + c.address2, c.status, c.create_time, u.real_name, diff --git a/src/main/java/org/springblade/modules/jinchao/mapper/ProductMapper.java b/src/main/java/org/springblade/modules/jinchao/mapper/ProductMapper.java index 094dbc6..9dfabe9 100644 --- a/src/main/java/org/springblade/modules/jinchao/mapper/ProductMapper.java +++ b/src/main/java/org/springblade/modules/jinchao/mapper/ProductMapper.java @@ -26,7 +26,6 @@ package org.springblade.modules.jinchao.mapper; import org.springblade.modules.jinchao.pojo.entity.ProductEntity; -import org.springblade.modules.jinchao.pojo.vo.ProductVO; import org.springblade.modules.jinchao.excel.ProductExcel; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -49,7 +48,7 @@ public interface ProductMapper extends BaseMapper { * @param product 查询参数 * @return List */ - List selectProductPage(IPage page, ProductVO product); + List selectProductPage(IPage page, org.springblade.modules.jinchao.pojo.vo.ProductVO product); /** diff --git a/src/main/java/org/springblade/modules/jinchao/pojo/entity/ProductObjEntity.java b/src/main/java/org/springblade/modules/jinchao/pojo/entity/ProductObjEntity.java index 13de7ab..8a3d269 100644 --- a/src/main/java/org/springblade/modules/jinchao/pojo/entity/ProductObjEntity.java +++ b/src/main/java/org/springblade/modules/jinchao/pojo/entity/ProductObjEntity.java @@ -58,9 +58,9 @@ public class ProductObjEntity extends TenantEntity { @Schema(description = "[产品]id") private Long productId; /** - * 中文名称 + * 产品实物名称 */ - @Schema(description = "中文名称") + @Schema(description = "产品实物名称") private String name; /** * 规格 @@ -77,5 +77,4 @@ public class ProductObjEntity extends TenantEntity { */ @Schema(description = "备注") private String remark; - } diff --git a/src/main/java/org/springblade/modules/jinchao/pojo/vo/ProductVO.java b/src/main/java/org/springblade/modules/jinchao/pojo/vo/ProductVO.java index 90db8b5..ec74397 100644 --- a/src/main/java/org/springblade/modules/jinchao/pojo/vo/ProductVO.java +++ b/src/main/java/org/springblade/modules/jinchao/pojo/vo/ProductVO.java @@ -28,9 +28,7 @@ package org.springblade.modules.jinchao.pojo.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; -import org.springblade.modules.jinchao.constant.ProductConst; import org.springblade.modules.jinchao.pojo.entity.ProductEntity; -import org.springblade.modules.jinchao.pojo.entity.ProductObjEntity; import java.io.Serial; @@ -61,11 +59,21 @@ public class ProductVO extends ProductEntity { */ @Schema(description = "业务员[用户]id") private Long saleUserId; + /** + * 业务员[用户]名称 + */ + @Schema(description = "业务员[用户]名称") + private String saleUserRealName; /** * [客户]id */ @Schema(description = "[客户]id") private Long customerId; + /** + * [客户]公司名称 + */ + @Schema(description = "[客户]公司名称") + private String customerCompanyName; /** * 特定用户价格 */ diff --git a/src/main/java/org/springblade/modules/jinchao/service/IProductService.java b/src/main/java/org/springblade/modules/jinchao/service/IProductService.java index 194ce82..fde0446 100644 --- a/src/main/java/org/springblade/modules/jinchao/service/IProductService.java +++ b/src/main/java/org/springblade/modules/jinchao/service/IProductService.java @@ -26,16 +26,13 @@ package org.springblade.modules.jinchao.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; -import io.swagger.v3.oas.annotations.Parameter; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.modules.jinchao.pojo.entity.ProductEntity; -import org.springblade.modules.jinchao.pojo.vo.CustomerVO; -import org.springblade.modules.jinchao.pojo.vo.ProductVO; import org.springblade.modules.jinchao.excel.ProductExcel; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; -import org.springframework.web.bind.annotation.RequestParam; +import org.springblade.modules.jinchao.pojo.vo.ProductVO; import java.util.List; import java.util.Map; @@ -54,7 +51,7 @@ public interface IProductService extends BaseService { * @param product 查询参数 * @return IPage */ - IPage selectProductPage(IPage page, ProductVO product); + IPage selectProductPage(IPage page, org.springblade.modules.jinchao.pojo.vo.ProductVO product); /** @@ -67,5 +64,11 @@ public interface IProductService extends BaseService { R> list(Map product, Query query); + Boolean existsCode(String code); + + Boolean existsNameCn(String nameCn); + void setVoValue(ProductVO vo); + + R> oneKeyMatch(List list); } diff --git a/src/main/java/org/springblade/modules/jinchao/service/impl/CustomerServiceImpl.java b/src/main/java/org/springblade/modules/jinchao/service/impl/CustomerServiceImpl.java index 63b9835..2bf153e 100644 --- a/src/main/java/org/springblade/modules/jinchao/service/impl/CustomerServiceImpl.java +++ b/src/main/java/org/springblade/modules/jinchao/service/impl/CustomerServiceImpl.java @@ -50,6 +50,7 @@ import org.springblade.core.mp.base.BaseServiceImpl; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * [客户] 服务实现类 @@ -132,7 +133,9 @@ public class CustomerServiceImpl extends BaseServiceImpl search(IPage page, CustomerSearch search) { - return null; + IPage pagesVo = page.setRecords(baseMapper.searchPage(page, search)); + pagesVo.getRecords().stream().peek(this::setVoValue).collect(Collectors.toList()); + return pagesVo; } @Override @@ -145,8 +148,8 @@ public class CustomerServiceImpl extends BaseServiceImpl() diff --git a/src/main/java/org/springblade/modules/jinchao/service/impl/ProductServiceImpl.java b/src/main/java/org/springblade/modules/jinchao/service/impl/ProductServiceImpl.java index 6ca6cbd..a324841 100644 --- a/src/main/java/org/springblade/modules/jinchao/service/impl/ProductServiceImpl.java +++ b/src/main/java/org/springblade/modules/jinchao/service/impl/ProductServiceImpl.java @@ -35,26 +35,28 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.modules.jinchao.constant.BaseCol; import org.springblade.modules.jinchao.constant.ProductConst; -import org.springblade.modules.jinchao.mapper.BizPriceMapper; import org.springblade.modules.jinchao.pojo.entity.BizPriceEntity; +import org.springblade.modules.jinchao.pojo.entity.CustomerEntity; import org.springblade.modules.jinchao.pojo.entity.ProductEntity; -import org.springblade.modules.jinchao.pojo.vo.ProductVO; import org.springblade.modules.jinchao.excel.ProductExcel; import org.springblade.modules.jinchao.mapper.ProductMapper; +import org.springblade.modules.jinchao.pojo.vo.ProductVO; import org.springblade.modules.jinchao.service.IBizPriceService; import org.springblade.modules.jinchao.service.ICustomerService; import org.springblade.modules.jinchao.service.IProductService; import org.springblade.modules.jinchao.wrapper.ProductWrapper; +import org.springblade.modules.system.pojo.entity.User; +import org.springblade.modules.system.service.IUserService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; -import java.util.Iterator; import java.util.List; import java.util.ListIterator; import java.util.Map; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -69,13 +71,15 @@ import java.util.stream.Collectors; @Slf4j public class ProductServiceImpl extends BaseServiceImpl implements IProductService { + @Resource + private IUserService userService; @Resource private IBizPriceService bizPriceService; @Resource private ICustomerService customerService; @Override - public IPage selectProductPage(IPage page, ProductVO product) { + public IPage selectProductPage(IPage page, org.springblade.modules.jinchao.pojo.vo.ProductVO product) { return page.setRecords(baseMapper.selectProductPage(page, product)); } @@ -99,18 +103,27 @@ public class ProductServiceImpl extends BaseServiceImpl().eq("product_id", vo.getId()) ); if (count != 0L) { List listBP = bizPriceService.listByProductId(vo.getId()); listBP.forEach(bp -> { - log.info("bp = {}",bp); + log.info("bp = {}", bp); ProductVO vo2 = new ProductVO(); BeanUtils.copyProperties(vo, vo2); - vo2.setBizType(ProductConst.TYPE_PRICE_CUS); + vo2.setBizType(ProductConst.TYPE_PRICE_CUSTOM); vo2.setBizPriceId(bp.getId()); BeanUtils.copyProperties(bp, vo2); + User u = userService.getById(vo2.getSaleUserId()); + if (u != null) { + vo2.setSaleUserRealName(u.getRealName()); + } + CustomerEntity c = customerService.getById(vo2.getCustomerId()); + if (c != null) { + vo2.setCustomerCompanyName(c.getCompanyName()); + } vo2.setBizRemark("客户:" + customerService.getById(bp.getCustomerId()).getCompanyName()); it.add(vo2); }); @@ -121,8 +134,44 @@ public class ProductServiceImpl extends BaseServiceImpl().eq("code", code)); + } + + @Override + public Boolean existsNameCn(String nameCn) { + return baseMapper.exists(new QueryWrapper().eq("name_cn", nameCn)); + } + + /** + * 不带biz价格 + * + * @param vo 传入的对象已经BizType赋值了. + */ @Override public void setVoValue(ProductVO vo) { + if (vo != null) { + if (Objects.equals(ProductConst.TYPE_PRICE_CUSTOM, vo.getBizType())) { + } + } + } + + @Override + public R> oneKeyMatch(List list) { + List listNew = list.stream() + .map(vo -> { + ProductEntity pFind = getOne(new QueryWrapper().eq("name_cn", vo.getNameCn())); + if (pFind != null) { + ProductVO voNew = new ProductVO(); + BeanUtils.copyProperties(pFind, voNew); + voNew.setBizType(ProductConst.TYPE_PRICE_STANDARD); + return voNew; + } + vo.setBizType(ProductConst.TYPE_PRICE_STANDARD); + return vo; + }).collect(Collectors.toList()); + return R.data(listNew); } } diff --git a/src/main/java/org/springblade/modules/jinchao/wrapper/ProductWrapper.java b/src/main/java/org/springblade/modules/jinchao/wrapper/ProductWrapper.java index 2a3de51..a395e12 100644 --- a/src/main/java/org/springblade/modules/jinchao/wrapper/ProductWrapper.java +++ b/src/main/java/org/springblade/modules/jinchao/wrapper/ProductWrapper.java @@ -28,7 +28,7 @@ package org.springblade.modules.jinchao.wrapper; import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.modules.jinchao.pojo.entity.ProductEntity; -import org.springblade.modules.jinchao.pojo.vo.ProductVO; + import java.util.Objects; /** @@ -37,15 +37,15 @@ import java.util.Objects; * @author BladeX * @since 2025-12-01 */ -public class ProductWrapper extends BaseEntityWrapper { +public class ProductWrapper extends BaseEntityWrapper { public static ProductWrapper build() { return new ProductWrapper(); } @Override - public ProductVO entityVO(ProductEntity product) { - ProductVO productVO = Objects.requireNonNull(BeanUtil.copyProperties(product, ProductVO.class)); + public org.springblade.modules.jinchao.pojo.vo.ProductVO entityVO(ProductEntity product) { + org.springblade.modules.jinchao.pojo.vo.ProductVO productVO = Objects.requireNonNull(BeanUtil.copyProperties(product, org.springblade.modules.jinchao.pojo.vo.ProductVO.class)); //User createUser = UserCache.getUser(product.getCreateUser()); //User updateUser = UserCache.getUser(product.getUpdateUser());