在线超市,库存商品选择分页

This commit is contained in:
zjf committed 2025-01-22 12:46:02 +08:00
1 parent e250a1083c
commit 8bac74233c
23 files changed
+210 -55

No files matched your search

@@ -26,7 +26,7 @@ import com.bsd.pjcloud.hard.mapper.order.HardOrderMapper;
import com.bsd.pjcloud.hard.mapper.order.HardParentCarMapper; import com.bsd.pjcloud.hard.mapper.order.HardParentCarMapper;
import com.bsd.pjcloud.hard.service.HardCarService; import com.bsd.pjcloud.hard.service.HardCarService;
import com.bsd.pjcloud.supermarket.api.feign.RemoteSupermarketUnitSkuService; import com.bsd.pjcloud.supermarket.api.feign.RemoteSupermarketUnitSkuService;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -77,7 +77,7 @@ public class HardCarServiceImpl extends ServiceImpl<HardCarMapper, HardCarEntity
} }
// 超市线上、线下 // 超市线上、线下
if (ObjectUtil.equals(HardTypeEnum.SUPERMARKET, hardTypeEnum)) { if (ObjectUtil.equals(HardTypeEnum.SUPERMARKET, hardTypeEnum)) {
List<SupermarketUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData(); List<SmErpUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData();
for (HardCarVo v : resultList) { for (HardCarVo v : resultList) {
supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> {
v.setSpuId(spu.getSpuId()); v.setSpuId(spu.getSpuId());
@@ -161,7 +161,7 @@ public class HardCarServiceImpl extends ServiceImpl<HardCarMapper, HardCarEntity
case SUPERMARKET -> { case SUPERMARKET -> {
// 查询超市商品 // 查询超市商品
AtomicInteger supermarketTotalPrice = new AtomicInteger(); AtomicInteger supermarketTotalPrice = new AtomicInteger();
List<SupermarketUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData(); List<SmErpUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData();
for (HardCreateCarDto v : list) { for (HardCreateCarDto v : list) {
supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> {
Integer price = getSupermarket(spu); Integer price = getSupermarket(spu);
@@ -233,7 +233,7 @@ public class HardCarServiceImpl extends ServiceImpl<HardCarMapper, HardCarEntity
// 超市 // 超市
if (ObjectUtil.equals(sysType, HardTypeEnum.SUPERMARKET)) { if (ObjectUtil.equals(sysType, HardTypeEnum.SUPERMARKET)) {
List<HardCarEntity> carObjectList = new ArrayList<>(); List<HardCarEntity> carObjectList = new ArrayList<>();
List<SupermarketUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData(); List<SmErpUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData();
for (HardCreateCarDto v : productList) { for (HardCreateCarDto v : productList) {
HardCarEntity item = HardCarEntity.builder().parentCarId(parentCarId).build(); HardCarEntity item = HardCarEntity.builder().parentCarId(parentCarId).build();
supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> {
@@ -281,7 +281,7 @@ public class HardCarServiceImpl extends ServiceImpl<HardCarMapper, HardCarEntity
} }
// 超市 // 超市
if (ObjectUtil.equals(sysType, HardTypeEnum.SUPERMARKET)) { if (ObjectUtil.equals(sysType, HardTypeEnum.SUPERMARKET)) {
List<SupermarketUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData(); List<SmErpUnitWithSpuVo> supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData();
for (HardCreateCarDto v : list) { for (HardCreateCarDto v : list) {
supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> {
str.append(spu.getProductName()).append("x").append(v.getProductCount()).append(";"); str.append(spu.getProductName()).append("x").append(v.getProductCount()).append(";");
@@ -301,7 +301,7 @@ public class HardCarServiceImpl extends ServiceImpl<HardCarMapper, HardCarEntity
); );
} }
private Integer getSupermarket(SupermarketUnitWithSpuVo vo) { private Integer getSupermarket(SmErpUnitWithSpuVo vo) {
if (ObjectUtil.isEmpty(vo)) return 0; if (ObjectUtil.isEmpty(vo)) return 0;
if (ObjectUtil.isNotEmpty(vo.getPromotionPrice()) && !ObjectUtil.equals(vo.getPromotionPrice(), 0)) { if (ObjectUtil.isNotEmpty(vo.getPromotionPrice()) && !ObjectUtil.equals(vo.getPromotionPrice(), 0)) {
return vo.getPromotionPrice(); return vo.getPromotionPrice();
@@ -22,7 +22,7 @@ package com.bsd.pjcloud.supermarket.api.feign;
import com.bsd.pjcloud.common.core.constant.ServiceNameConstants; import com.bsd.pjcloud.common.core.constant.ServiceNameConstants;
import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@@ -47,5 +47,5 @@ public interface RemoteSupermarketUnitSkuService {
* @return * @return
*/ */
@PostMapping("/supermarketUnit/ad/getSupermarketUnits") @PostMapping("/supermarketUnit/ad/getSupermarketUnits")
R<List<SupermarketUnitWithSpuVo>> getSupermarketUnits(@RequestBody List<Long> ids); R<List<SmErpUnitWithSpuVo>> getSupermarketUnits(@RequestBody List<Long> ids);
} }
@@ -3,7 +3,7 @@ package com.bsd.pjcloud.supermarket.vo.app;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitVo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -158,6 +158,6 @@ public class SupermarketSpuAppDetailsVo {
@Schema(description = "包装对象集合") @Schema(description = "包装对象集合")
private List<SupermarketUnitVo> supermarketUnitEntityList; private List<SmErpUnitVo> supermarketUnitEntityList;
} }
@@ -1,4 +1,4 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.bsd.pjcloud.common.core.util.TenantTable; import com.bsd.pjcloud.common.core.util.TenantTable;
@@ -17,7 +17,7 @@ import java.time.LocalDateTime;
@TenantTable @TenantTable
@TableName("supermarket_auxiliary_code") @TableName("supermarket_auxiliary_code")
@Schema(description = "商品辅助条码") @Schema(description = "商品辅助条码")
public class SupermarketAuxiliaryCodeVo { public class SmErpAuxiliaryCodeVo {
/** /**
@@ -1,11 +1,11 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@Data @Data
public class SupermarketBrandSimpleVo { public class SmErpBrandSimpleVo {
@Schema(description = "品牌id") @Schema(description = "品牌id")
@@ -1,11 +1,11 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@Data @Data
public class SupermarketCategorySimpleVo { public class SmErpCategorySimpleVo {
@Schema(description = "分类id") @Schema(description = "分类id")
@@ -1,17 +1,16 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@Data @Data
@Schema(description="ad Spuvo") @Schema(description="ad Spuvo")
public class SupermarketSpuVo { public class SmErpSpuVo {
/** /**
* 商品 SPU 编号,自增 * 商品 SPU 编号,自增
@@ -157,9 +156,9 @@ public class SupermarketSpuVo {
@Schema(description = "辅助条码集合") @Schema(description = "辅助条码集合")
private List<SupermarketAuxiliaryCodeVo> supermarketAuxiliaryCodeEntityList; private List<SmErpAuxiliaryCodeVo> supermarketAuxiliaryCodeEntityList;
@Schema(description = "包装对象集合") @Schema(description = "包装对象集合")
private List<SupermarketUnitVo> supermarketUnitEntityList; private List<SmErpUnitVo> supermarketUnitEntityList;
} }
@@ -1,4 +1,4 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -1,4 +1,4 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -1,4 +1,4 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.bsd.pjcloud.common.core.util.MoneyDeserializer; import com.bsd.pjcloud.common.core.util.MoneyDeserializer;
@@ -8,7 +8,6 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -21,7 +20,7 @@ import java.time.LocalDateTime;
@Data @Data
@TenantTable @TenantTable
@Schema(description = "商品包装单位(sku)") @Schema(description = "商品包装单位(sku)")
public class SupermarketUnitVo{ public class SmErpUnitVo {
/** /**
@@ -1,4 +1,4 @@
package com.bsd.pjcloud.supermarket.vo; package com.bsd.pjcloud.supermarket.vo.erp;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.bsd.pjcloud.common.core.util.MoneyDeserializer; import com.bsd.pjcloud.common.core.util.MoneyDeserializer;
@@ -8,10 +8,8 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime;
@Data @Data
public class SupermarketUnitWithSpuVo { public class SmErpUnitWithSpuVo {
/** /**
* 货号 * 货号
@@ -0,0 +1,113 @@
package com.bsd.pjcloud.supermarket.vo.sm;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
@Schema(description = "后台线上商品-选择库存商品-分页查询库存商品信息")
public class SmErpPageScopeVo {
/**
* 商品 SPU 编号,自增
*/
@Schema(description="商品 SPU 编号,自增")
private Long id;
/**
* 货号
*/
@Schema(description="货号")
private String productCode;
/**
* 自编码/条码
*/
@Schema(description="自编码/条码")
private String barcode;
/**
* 商品名称
*/
@Schema(description="商品名称")
private String productName;
/**
* 商品分类编号
*/
@Schema(description="商品分类编号")
private Long categoryId;
/**
* 商品封面图
*/
@Schema(description="商品封面图")
private String picUrl;
/**
* 排序字段
*/
@Schema(description="排序字段")
private Integer sort;
/**
* 商品状态: 1 上架(开启) 0 下架(禁用) -1 回收
*/
@Schema(description="商品状态: 1 上架(开启) 0 下架(禁用) -1 回收")
private String status;
/**
* 商户编号
*/
@Schema(description="商户编号")
private Long merchantId;
/**
* 部门id
*/
@Schema(description="部门id")
private Long deptId;
/**
* 规格
*/
// @Schema(description="规格")
// private String specification;
/**
* 产地
*/
@Schema(description="产地")
private String origin;
/**
* 商品性质(字典)
*/
@Schema(description="商品性质(字典)")
private String productNature;
/**
* 辅助条码id
*/
@Schema(description="辅助条码id")
private String auxiliaryBarcodeId;
/**
* 品牌id
*/
@Schema(description="品牌id")
private Long brandId;
/**
* 货商id
*/
@Schema(description="货商id")
private Long supplierId;
}
@@ -12,7 +12,7 @@ import com.bsd.pjcloud.common.log.annotation.SysLog;
import com.bsd.pjcloud.common.security.util.SecurityUtils; import com.bsd.pjcloud.common.security.util.SecurityUtils;
import com.bsd.pjcloud.supermarket.entity.SmErpBrandEntity; import com.bsd.pjcloud.supermarket.entity.SmErpBrandEntity;
import com.bsd.pjcloud.supermarket.service.SmErpBrandService; import com.bsd.pjcloud.supermarket.service.SmErpBrandService;
import com.bsd.pjcloud.supermarket.vo.SupermarketBrandSimpleVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpBrandSimpleVo;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -131,7 +131,7 @@ public class SmErpBrandController {
@GetMapping("/simpleAll") @GetMapping("/simpleAll")
public R getSimpleAll() { public R getSimpleAll() {
List<SmErpBrandEntity> list = smErpBrandService.list(); List<SmErpBrandEntity> list = smErpBrandService.list();
List<SupermarketBrandSimpleVo> bean = BeanUtils.toBean(list, SupermarketBrandSimpleVo.class); List<SmErpBrandSimpleVo> bean = BeanUtils.toBean(list, SmErpBrandSimpleVo.class);
return R.ok(bean); return R.ok(bean);
} }
} }
@@ -12,7 +12,7 @@ import com.bsd.pjcloud.common.log.annotation.SysLog;
import com.bsd.pjcloud.common.security.util.SecurityUtils; import com.bsd.pjcloud.common.security.util.SecurityUtils;
import com.bsd.pjcloud.supermarket.entity.SmErpCategoryEntity; import com.bsd.pjcloud.supermarket.entity.SmErpCategoryEntity;
import com.bsd.pjcloud.supermarket.service.SmErpCategoryService; import com.bsd.pjcloud.supermarket.service.SmErpCategoryService;
import com.bsd.pjcloud.supermarket.vo.SupermarketCategorySimpleVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpCategorySimpleVo;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -131,7 +131,7 @@ public class SmErpCategoryController {
@GetMapping("/simpleAll") @GetMapping("/simpleAll")
public R getSimpleAll() { public R getSimpleAll() {
List<SmErpCategoryEntity> list = smErpCategoryService.listScope(); List<SmErpCategoryEntity> list = smErpCategoryService.listScope();
List<SupermarketCategorySimpleVo> bean = BeanUtils.toBean(list, SupermarketCategorySimpleVo.class); List<SmErpCategorySimpleVo> bean = BeanUtils.toBean(list, SmErpCategorySimpleVo.class);
return R.ok(bean); return R.ok(bean);
} }
@@ -147,7 +147,7 @@ public class SmErpCategoryController {
public R getAppSimpleAll(@RequestParam("merchantId")Long merchantId) { public R getAppSimpleAll(@RequestParam("merchantId")Long merchantId) {
List<SmErpCategoryEntity> list = smErpCategoryService. List<SmErpCategoryEntity> list = smErpCategoryService.
list(new LambdaQueryWrapper<SmErpCategoryEntity>().eq(SmErpCategoryEntity::getMerchantId, merchantId)); list(new LambdaQueryWrapper<SmErpCategoryEntity>().eq(SmErpCategoryEntity::getMerchantId, merchantId));
List<SupermarketCategorySimpleVo> bean = BeanUtils.toBean(list, SupermarketCategorySimpleVo.class); List<SmErpCategorySimpleVo> bean = BeanUtils.toBean(list, SmErpCategorySimpleVo.class);
return R.ok(bean); return R.ok(bean);
} }
@@ -70,7 +70,23 @@ public class SmErpSpuController {
return R.ok(smErpSpuService.pageScope(page, wrapper)); return R.ok(smErpSpuService.pageScope(page, wrapper));
} }
/**
* 分页查询
* @param page 分页对象
* @param supermarketSpu 商品spu
* @return
*/
@Operation(summary = "分页查询-线上商城" , description = "分页查询-线上商城" )
@GetMapping("/onlineSpuPage" )
@PreAuthorize("@pms.hasPermission('supermarket_supermarketSpu_view')" )
public R getOnlineSpuPageScope(@ParameterObject Page page, @ParameterObject SmErpSpuEntity supermarketSpu) {
LambdaQueryWrapper<SmErpSpuEntity> wrapper = Wrappers.lambdaQuery();
wrapper.eq(StringUtils.isNotBlank(supermarketSpu.getProductCode()), SmErpSpuEntity::getProductCode,supermarketSpu.getProductCode());
wrapper.eq(StringUtils.isNotBlank(supermarketSpu.getBarcode()), SmErpSpuEntity::getBarcode,supermarketSpu.getBarcode());
wrapper.eq(StringUtils.isNotBlank(supermarketSpu.getProductName()), SmErpSpuEntity::getProductName,supermarketSpu.getProductName());
wrapper.eq(null!=supermarketSpu.getCategoryId(), SmErpSpuEntity::getCategoryId,supermarketSpu.getCategoryId());
return R.ok(smErpSpuService.OnlineSpuPageScope(page, wrapper));
}
/** /**
* 通过id查询商品spu * 通过id查询商品spu
* @param id id * @param id id
@@ -12,7 +12,7 @@ import com.bsd.pjcloud.common.log.annotation.SysLog;
import com.bsd.pjcloud.common.security.util.SecurityUtils; import com.bsd.pjcloud.common.security.util.SecurityUtils;
import com.bsd.pjcloud.supermarket.entity.SmErpSupplierEntity; import com.bsd.pjcloud.supermarket.entity.SmErpSupplierEntity;
import com.bsd.pjcloud.supermarket.service.SmErpSupplierService; import com.bsd.pjcloud.supermarket.service.SmErpSupplierService;
import com.bsd.pjcloud.supermarket.vo.SmErpSupplierSimpleVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpSupplierSimpleVo;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -24,7 +24,6 @@ import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* 货商管理 * 货商管理
@@ -12,7 +12,7 @@ import com.bsd.pjcloud.common.log.annotation.SysLog;
import com.bsd.pjcloud.common.security.util.SecurityUtils; import com.bsd.pjcloud.common.security.util.SecurityUtils;
import com.bsd.pjcloud.supermarket.entity.SmErpSupplierTypeEntity; import com.bsd.pjcloud.supermarket.entity.SmErpSupplierTypeEntity;
import com.bsd.pjcloud.supermarket.service.SmErpSupplierTypeService; import com.bsd.pjcloud.supermarket.service.SmErpSupplierTypeService;
import com.bsd.pjcloud.supermarket.vo.SmErpSupplierTypeSimpleVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpSupplierTypeSimpleVo;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -24,7 +24,6 @@ import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* 货商类别 * 货商类别
@@ -2,7 +2,7 @@ package com.bsd.pjcloud.supermarket.mapper;
import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper; import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper;
import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity; import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List; import java.util.List;
@@ -16,5 +16,5 @@ public interface SmErpUnitMapper extends PjcloudBaseMapper<SmErpUnitEntity> {
* @param ids * @param ids
* @return * @return
*/ */
List<SupermarketUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids); List<SmErpUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids);
} }
@@ -7,6 +7,7 @@ import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.supermarket.dto.SupermarketSpuQueryDTO; import com.bsd.pjcloud.supermarket.dto.SupermarketSpuQueryDTO;
import com.bsd.pjcloud.supermarket.dto.SupermarketSpuUpdateStockReqDTO; import com.bsd.pjcloud.supermarket.dto.SupermarketSpuUpdateStockReqDTO;
import com.bsd.pjcloud.supermarket.entity.SmErpSpuEntity; import com.bsd.pjcloud.supermarket.entity.SmErpSpuEntity;
import com.bsd.pjcloud.supermarket.vo.sm.SmErpPageScopeVo;
import java.util.ArrayList; import java.util.ArrayList;
@@ -60,4 +61,13 @@ public interface SmErpSpuService extends IService<SmErpSpuEntity> {
* @return * @return
*/ */
Object getSupermarketSpuAppDetailById(Long id); Object getSupermarketSpuAppDetailById(Long id);
/**
* 后台,在线商城分页选择
* @param page
* @param wrapper
* @return
*/
Page<SmErpPageScopeVo> OnlineSpuPageScope(Page page, LambdaQueryWrapper<SmErpSpuEntity> wrapper);
} }
@@ -2,7 +2,7 @@ package com.bsd.pjcloud.supermarket.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity; import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo;
import java.util.List; import java.util.List;
@@ -14,5 +14,5 @@ public interface SmErpUnitService extends IService<SmErpUnitEntity> {
* @param ids * @param ids
* @return * @return
*/ */
List<SupermarketUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids); List<SmErpUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids);
} }
@@ -15,9 +15,12 @@ import com.bsd.pjcloud.supermarket.mapper.SmErpSpuMapper;
import com.bsd.pjcloud.supermarket.service.SmErpAuxiliaryCodeService; import com.bsd.pjcloud.supermarket.service.SmErpAuxiliaryCodeService;
import com.bsd.pjcloud.supermarket.service.SmErpSpuService; import com.bsd.pjcloud.supermarket.service.SmErpSpuService;
import com.bsd.pjcloud.supermarket.service.SmErpUnitService; import com.bsd.pjcloud.supermarket.service.SmErpUnitService;
import com.bsd.pjcloud.supermarket.vo.*;
import com.bsd.pjcloud.supermarket.vo.app.SupermarketAppSpuDetailsVo; import com.bsd.pjcloud.supermarket.vo.app.SupermarketAppSpuDetailsVo;
import com.bsd.pjcloud.supermarket.vo.app.SupermarketAppUnitVo; import com.bsd.pjcloud.supermarket.vo.app.SupermarketAppUnitVo;
import com.bsd.pjcloud.supermarket.vo.erp.SmErpAuxiliaryCodeVo;
import com.bsd.pjcloud.supermarket.vo.erp.SmErpSpuVo;
import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitVo;
import com.bsd.pjcloud.supermarket.vo.sm.SmErpPageScopeVo;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -145,7 +148,7 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
public Object selectListAllScope(SupermarketSpuQueryDTO supermarketSpuQueryDTO) { public Object selectListAllScope(SupermarketSpuQueryDTO supermarketSpuQueryDTO) {
List<SmErpSpuEntity> list = baseMapper.selectListAllScope(supermarketSpuQueryDTO, DataScope.of()); List<SmErpSpuEntity> list = baseMapper.selectListAllScope(supermarketSpuQueryDTO, DataScope.of());
List<SupermarketSpuVo> bean = BeanUtils.toBean(list, SupermarketSpuVo.class); List<SmErpSpuVo> bean = BeanUtils.toBean(list, SmErpSpuVo.class);
return bean; return bean;
@@ -156,12 +159,12 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
SmErpSpuEntity smErpSpuEntity = baseMapper.selectById(id); SmErpSpuEntity smErpSpuEntity = baseMapper.selectById(id);
List<SmErpUnitEntity> smErpUnitEntityList = smErpUnitService.list(new LambdaQueryWrapper<SmErpUnitEntity>().eq(SmErpUnitEntity::getSpuId, id)); List<SmErpUnitEntity> smErpUnitEntityList = smErpUnitService.list(new LambdaQueryWrapper<SmErpUnitEntity>().eq(SmErpUnitEntity::getSpuId, id));
List<SmErpAuxiliaryCodeEntity> supermarketAuxiliaryCodeEntities = smErpAuxiliaryCodeService.list(new LambdaQueryWrapper<SmErpAuxiliaryCodeEntity>().eq(SmErpAuxiliaryCodeEntity::getSpuId, id)); List<SmErpAuxiliaryCodeEntity> supermarketAuxiliaryCodeEntities = smErpAuxiliaryCodeService.list(new LambdaQueryWrapper<SmErpAuxiliaryCodeEntity>().eq(SmErpAuxiliaryCodeEntity::getSpuId, id));
SupermarketSpuVo supermarketSpuVo = BeanUtils.toBean(smErpSpuEntity, SupermarketSpuVo.class); SmErpSpuVo smErpSpuVo = BeanUtils.toBean(smErpSpuEntity, SmErpSpuVo.class);
List<SupermarketUnitVo> supermarketUnitVoList = BeanUtils.toBean(smErpUnitEntityList, SupermarketUnitVo.class); List<SmErpUnitVo> smErpUnitVoList = BeanUtils.toBean(smErpUnitEntityList, SmErpUnitVo.class);
List<SupermarketAuxiliaryCodeVo> supermarketAuxiliaryCodeVos = BeanUtils.toBean(supermarketAuxiliaryCodeEntities, SupermarketAuxiliaryCodeVo.class); List<SmErpAuxiliaryCodeVo> smErpAuxiliaryCodeVos = BeanUtils.toBean(supermarketAuxiliaryCodeEntities, SmErpAuxiliaryCodeVo.class);
supermarketSpuVo.setSupermarketUnitEntityList(supermarketUnitVoList); smErpSpuVo.setSupermarketUnitEntityList(smErpUnitVoList);
supermarketSpuVo.setSupermarketAuxiliaryCodeEntityList(supermarketAuxiliaryCodeVos); smErpSpuVo.setSupermarketAuxiliaryCodeEntityList(smErpAuxiliaryCodeVos);
return supermarketSpuVo; return smErpSpuVo;
} }
@Override @Override
@@ -174,4 +177,23 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
supermarketAppSpuVo.setSkuList(supermarketAppUnitVos); supermarketAppSpuVo.setSkuList(supermarketAppUnitVos);
return supermarketAppSpuVo; return supermarketAppSpuVo;
} }
@Override
public Page<SmErpPageScopeVo> OnlineSpuPageScope(Page page, LambdaQueryWrapper<SmErpSpuEntity> wrapper) {
wrapper.eq(SmErpSpuEntity::getStatus, "0");
// 查询分页数据
Page<SmErpSpuEntity> spuPage = baseMapper.selectPageByScope(page, wrapper, DataScope.of());
// 将 SmErpSpuEntity 转换为 SmErpPageScopeVo
List<SmErpPageScopeVo> voList = spuPage.getRecords().stream()
.map(entity -> BeanUtils.toBean(entity, SmErpPageScopeVo.class))
.collect(Collectors.toList());
// 创建新的 Page 对象并设置数据
Page<SmErpPageScopeVo> resultPage = new Page<>();
org.springframework.beans.BeanUtils.copyProperties(spuPage, resultPage);
resultPage.setRecords(voList);
return resultPage;
}
} }
@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity; import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity;
import com.bsd.pjcloud.supermarket.mapper.SmErpUnitMapper; import com.bsd.pjcloud.supermarket.mapper.SmErpUnitMapper;
import com.bsd.pjcloud.supermarket.service.SmErpUnitService; import com.bsd.pjcloud.supermarket.service.SmErpUnitService;
import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; import com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@@ -18,7 +18,7 @@ import java.util.List;
@Service @Service
public class SmErpUnitServiceImpl extends ServiceImpl<SmErpUnitMapper, SmErpUnitEntity> implements SmErpUnitService { public class SmErpUnitServiceImpl extends ServiceImpl<SmErpUnitMapper, SmErpUnitEntity> implements SmErpUnitService {
@Override @Override
public List<SupermarketUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids) { public List<SmErpUnitWithSpuVo> getSupermarketUnitsWithSpu(List<Long> ids) {
return baseMapper.getSupermarketUnitsWithSpu(ids); return baseMapper.getSupermarketUnitsWithSpu(ids);
} }
@@ -23,7 +23,7 @@
<result property="tenantId" column="tenant_id"/> <result property="tenantId" column="tenant_id"/>
</resultMap> </resultMap>
<resultMap id="SupermarketUnitWithSpuVoMap" type="com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo"> <resultMap id="SupermarketUnitWithSpuVoMap" type="com.bsd.pjcloud.supermarket.vo.erp.SmErpUnitWithSpuVo">
<id property="id" column="id" /> <id property="id" column="id" />
<result property="productCode" column="product_code" /> <result property="productCode" column="product_code" />
<result property="barcode" column="barcode" /> <result property="barcode" column="barcode" />