package com.kmall.admin.service.impl; import com.google.common.collect.ImmutableBiMap; import com.kmall.admin.dto.DiscountedProductsDto; import com.kmall.admin.dto.TemporaryPromotionalItemsDto; import com.kmall.admin.entity.MkActivitiesPromotionEntity; import com.kmall.common.utils.MapBeanUtil; import com.kmall.common.utils.R; import com.kmall.common.utils.RRException; import com.kmall.common.utils.ValidatorUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; import java.util.Map; import com.kmall.admin.dao.MkActivitiesDiscountDao; import com.kmall.admin.entity.MkActivitiesDiscountEntity; import com.kmall.admin.service.MkActivitiesDiscountService; import org.springframework.transaction.annotation.Transactional; /** * 营销活动-全场打折Service实现类 * * @author emato * @email admin@qhdswl.com * @date 2020-09-23 10:43:25 */ @Service("mkActivitiesDiscountService") public class MkActivitiesDiscountServiceImpl implements MkActivitiesDiscountService { @Autowired private MkActivitiesDiscountDao mkActivitiesDiscountDao; @Override public MkActivitiesDiscountEntity queryObject(Long madId) { return mkActivitiesDiscountDao.queryObject(madId); } @Override public List queryList(Map map) { return mkActivitiesDiscountDao.queryList(map); } @Override public int queryTotal(Map map) { return mkActivitiesDiscountDao.queryTotal(map); } @Override public int save(MkActivitiesDiscountEntity mkActivitiesDiscount) { return mkActivitiesDiscountDao.save(mkActivitiesDiscount); } @Override public int update(MkActivitiesDiscountEntity mkActivitiesDiscount) { return mkActivitiesDiscountDao.update(mkActivitiesDiscount); } @Override public int delete(Long madId) { return mkActivitiesDiscountDao.delete(madId); } @Override public int deleteBatch(Long[]madIds) { return mkActivitiesDiscountDao.deleteBatch(madIds); } /** * 上传活动商品 * * @param discountedProductsDtoList * @param storeId * @param mkaId */ @Override @Transactional public void uploadExcel(List discountedProductsDtoList, String storeId, String mkaId) { if (discountedProductsDtoList != null && discountedProductsDtoList.size() > 0) { for (int i = 0; i < discountedProductsDtoList.size(); i++) { DiscountedProductsDto discountedProductsDto = discountedProductsDtoList.get(i); Map valideDate = MapBeanUtil.fromObject(discountedProductsDto); // 校验excel传入的数据 ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder(); builder.put("storeId", "门店编号"); builder.put("goodsSn", "商品编码"); builder.put("barCode", "商品条码"); builder.put("goodsName", "产品名称"); builder.put("goodsEnglishName", "产品英文名称"); builder.put("discountPrice", "折扣价格"); R r = ValidatorUtil.isEmpty(builder.build(), valideDate); if (Integer.valueOf(r.get("code").toString()) != 0) { throw new RRException(r.get("msg").toString()); } // 保存日常活动商品 MkActivitiesDiscountEntity mkActivitiesDiscountEntity = new MkActivitiesDiscountEntity(); mkActivitiesDiscountEntity.setProductName(discountedProductsDto.getGoodsName()); // 商品名称 mkActivitiesDiscountEntity.setActivityPrice(new BigDecimal(discountedProductsDto.getDiscountPrice())); // 活动价 mkActivitiesDiscountEntity.setShopSn(storeId); // 门店编号 mkActivitiesDiscountEntity.setGoodsSn(discountedProductsDto.getGoodsSn()); // 商品编号 mkActivitiesDiscountEntity.setBarcode(discountedProductsDto.getBarCode()); // 商品条码 mkActivitiesDiscountEntity.setMkaId(Long.parseLong(mkaId)); mkActivitiesDiscountDao.save(mkActivitiesDiscountEntity); } } } /** * 根据条形码与营销活动id查询 * * @param mkaId * @param prodBarcode * @return */ @Override public MkActivitiesDiscountEntity queryByBarCode(Long mkaId, String prodBarcode) { return mkActivitiesDiscountDao.queryByBarCode(mkaId,prodBarcode); } }