Browse Source

Merge remote-tracking branch 'origin/dev' into dev

wfg 5 months ago
parent
commit
b8c228ab0d

+ 43 - 0
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/activity/entity/ActivityItems.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.salesPart.activity.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
@@ -227,4 +228,46 @@ public class ActivityItems implements Serializable {
 	private String tenantId = AuthUtil.getTenantId();
 
 
+	/**
+	 * 单位
+	 */
+	@ApiModelProperty(value = "单位")
+	@TableField(exist = false)
+	private String units;
+
+
+	/**
+	 * 规格型号
+	 */
+	@ApiModelProperty(value = "规格型号")
+	@TableField(exist = false)
+	private String propertyName;
+
+	/**
+	 * 花纹
+	 */
+	@ApiModelProperty(value = "花纹")
+	@TableField(exist = false)
+	private String pattern;
+
+	/**
+	 * 商品描述
+	 */
+	@ApiModelProperty(value = "商品描述")
+	@TableField(exist = false)
+	private String goodsDescription;
+
+	/**
+	 * 物料编号
+	 */
+	@ApiModelProperty(value = "物料编号")
+	@TableField(exist = false)
+	private String goodsNo;
+
+	/**
+	 * 商品名称
+	 */
+	@ApiModelProperty(value = "商品名称")
+	@TableField(exist = false)
+	private String goodsName;
 }

+ 6 - 0
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/excel/GoodsDescExportExcel.java

@@ -99,6 +99,12 @@ public class GoodsDescExportExcel implements Serializable {
 	private String goodsSize;
 
 	/**
+	 * 产地
+	 */
+	@ExcelProperty(value = "产地")
+	private String placeProduction;
+
+	/**
 	 * 商品IDS
 	 */
 	@ExcelProperty(value = "商品IDS")

+ 30 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/activity/service/impl/ActivityServiceImpl.java

@@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import io.seata.spring.annotation.GlobalTransactional;
 import lombok.AllArgsConstructor;
+import org.springblade.client.entity.GoodsDesc;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.core.tool.api.R;
@@ -31,11 +32,15 @@ import org.springblade.salesPart.activity.mapper.ActivityMapper;
 import org.springblade.salesPart.activity.service.IActivityItemsService;
 import org.springblade.salesPart.activity.service.IActivityService;
 import org.springblade.salesPart.activity.vo.ActivityVO;
+import org.springblade.salesPart.entity.PjGoodsDesc;
+import org.springblade.salesPart.goods.mapper.GoodsDescMapper;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * 轮胎商城活动 服务实现类
@@ -49,6 +54,9 @@ public class ActivityServiceImpl extends ServiceImpl<ActivityMapper, Activity> i
 
 	private final IActivityItemsService activityItemsService;
 
+	private final GoodsDescMapper goodsDescMapper;
+
+
 	@Override
 	public IPage<ActivityVO> selectActivityPage(IPage<ActivityVO> page, ActivityVO activity) {
 		return page.setRecords(baseMapper.selectActivityPage(page, activity));
@@ -90,8 +98,28 @@ public class ActivityServiceImpl extends ServiceImpl<ActivityMapper, Activity> i
 	@Override
 	public Activity detail(Activity activity) {
 		Activity declare = baseMapper.selectById(activity.getId());
-		declare.setActivityItemsList(activityItemsService.list(new LambdaQueryWrapper<ActivityItems>()
-			.eq(ActivityItems::getPid, activity.getId())));
+		String tenantId = AuthUtil.getTenantId();
+		List<ActivityItems> activityItemsList = activityItemsService.list(new LambdaQueryWrapper<ActivityItems>()
+			.eq(ActivityItems::getPid, activity.getId()).eq(ActivityItems::getTenantId, tenantId));
+		if (CollectionUtils.isEmpty(activityItemsList)) {
+			return declare;
+		}
+		List<PjGoodsDesc> goodsDescList = goodsDescMapper.selectList(new LambdaQueryWrapper<PjGoodsDesc>().eq(PjGoodsDesc::getTenantId, tenantId)
+			.in(PjGoodsDesc::getId,activityItemsList.stream().map(ActivityItems::getGoodsId).distinct().filter(Objects::nonNull).collect(Collectors.toList())));
+		for (ActivityItems items : activityItemsList) {
+			PjGoodsDesc goodsDesc = goodsDescList.stream().filter(gd -> gd.getId().equals(items.getGoodsId())).findFirst().orElse(null);
+			if (goodsDesc == null) {
+				continue;
+			}
+			//TODO: 为了不发小程序加了这堆字段,后面要改为 Vo类的使用
+			items.setGoodsNo(goodsDesc.getCode());
+			items.setUnits(goodsDesc.getUnit());
+			items.setPropertyName(goodsDesc.getSpecificationAndModel());
+			items.setPattern(goodsDesc.getBrandItem());
+			items.setGoodsDescription(goodsDesc.getGoodsDescription());
+			items.setGoodsName(goodsDesc.getCname());
+		}
+		declare.setActivityItemsList(activityItemsList);
 		return declare;
 	}