MkActivitiesGetOneFreeGoodsServiceImpl.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. package com.kmall.admin.service.impl;
  2. import com.google.common.collect.ImmutableBiMap;
  3. import com.kmall.admin.dto.BuyOneGetOneFreeDto;
  4. import com.kmall.admin.dto.FreeGoodsDto;
  5. import com.kmall.admin.entity.MkActivitiesFullGiftEntity;
  6. import com.kmall.common.utils.MapBeanUtil;
  7. import com.kmall.common.utils.R;
  8. import com.kmall.common.utils.RRException;
  9. import com.kmall.common.utils.ValidatorUtil;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Service;
  12. import java.math.BigDecimal;
  13. import java.util.List;
  14. import java.util.Map;
  15. import com.kmall.admin.dao.MkActivitiesGetOneFreeGoodsDao;
  16. import com.kmall.admin.entity.MkActivitiesGetOneFreeGoodsEntity;
  17. import com.kmall.admin.service.MkActivitiesGetOneFreeGoodsService;
  18. import org.springframework.transaction.annotation.Transactional;
  19. /**
  20. * 营销活动--买一送
  21. 说明:购买商品条码,购买商品品牌,购买商品系列三列不可以同是为空Service实现类
  22. *
  23. * @author emato
  24. * @email admin@qhdswl.com
  25. * @date 2020-09-23 10:43:25
  26. */
  27. @Service("mkActivitiesGetOneFreeGoodsService")
  28. public class MkActivitiesGetOneFreeGoodsServiceImpl implements MkActivitiesGetOneFreeGoodsService {
  29. @Autowired
  30. private MkActivitiesGetOneFreeGoodsDao mkActivitiesGetOneFreeGoodsDao;
  31. @Override
  32. public MkActivitiesGetOneFreeGoodsEntity queryObject(Long mkaFreeId) {
  33. return mkActivitiesGetOneFreeGoodsDao.queryObject(mkaFreeId);
  34. }
  35. @Override
  36. public List<MkActivitiesGetOneFreeGoodsEntity> queryList(Map<String, Object> map) {
  37. return mkActivitiesGetOneFreeGoodsDao.queryList(map);
  38. }
  39. @Override
  40. public int queryTotal(Map<String, Object> map) {
  41. return mkActivitiesGetOneFreeGoodsDao.queryTotal(map);
  42. }
  43. @Override
  44. public int save(MkActivitiesGetOneFreeGoodsEntity mkActivitiesGetOneFreeGoods) {
  45. return mkActivitiesGetOneFreeGoodsDao.save(mkActivitiesGetOneFreeGoods);
  46. }
  47. @Override
  48. public int update(MkActivitiesGetOneFreeGoodsEntity mkActivitiesGetOneFreeGoods) {
  49. return mkActivitiesGetOneFreeGoodsDao.update(mkActivitiesGetOneFreeGoods);
  50. }
  51. @Override
  52. public int delete(Long mkaFreeId) {
  53. return mkActivitiesGetOneFreeGoodsDao.delete(mkaFreeId);
  54. }
  55. @Override
  56. public int deleteBatch(Long[]mkaFreeIds) {
  57. return mkActivitiesGetOneFreeGoodsDao.deleteBatch(mkaFreeIds);
  58. }
  59. /**
  60. * 上传活动商品
  61. *
  62. * @param buyOneGetOneFreeDtoList
  63. * @param storeId
  64. * @param mkaId
  65. */
  66. @Override
  67. @Transactional
  68. public void uploadExcel(List<BuyOneGetOneFreeDto> buyOneGetOneFreeDtoList, String storeId, String mkaId) {
  69. // TODO 查询所有的品牌
  70. if (buyOneGetOneFreeDtoList != null && buyOneGetOneFreeDtoList.size() > 0) {
  71. for (int i = 0; i < buyOneGetOneFreeDtoList.size(); i++) {
  72. BuyOneGetOneFreeDto buyOneGetOneFreeDto = buyOneGetOneFreeDtoList.get(i);
  73. Map<String, Object> valideDate = MapBeanUtil.fromObject(buyOneGetOneFreeDto);
  74. // 校验excel传入的数据
  75. ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder();
  76. builder.put("storeId", "门店编号");
  77. builder.put("buyGoodsSn", "商品编码");
  78. builder.put("buyBarCode", "商品条码");
  79. builder.put("buyBrand", "商品品牌");
  80. builder.put("sendBarCode", "赠送商品条码");
  81. R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
  82. if (Integer.valueOf(r.get("code").toString()) != 0) {
  83. throw new RRException(r.get("msg").toString());
  84. }
  85. // 保存日常活动商品
  86. MkActivitiesGetOneFreeGoodsEntity mkActivitiesGetOneFreeGoodsEntity = new MkActivitiesGetOneFreeGoodsEntity();
  87. mkActivitiesGetOneFreeGoodsEntity.setGoodsSn(buyOneGetOneFreeDto.getBuyGoodsSn()); // 商品编号
  88. mkActivitiesGetOneFreeGoodsEntity.setBarcode(buyOneGetOneFreeDto.getBuyBarCode()); // 商品条码
  89. mkActivitiesGetOneFreeGoodsEntity.setProductBrand(buyOneGetOneFreeDto.getBuyBrand()); // 商品品牌
  90. mkActivitiesGetOneFreeGoodsEntity.setGiftBarcode(buyOneGetOneFreeDto.getSendBarCode()); // 赠送商品条码
  91. mkActivitiesGetOneFreeGoodsEntity.setShopSn(storeId); // 门店编号
  92. mkActivitiesGetOneFreeGoodsEntity.setMkaId(Long.parseLong(mkaId));
  93. mkActivitiesGetOneFreeGoodsDao.save(mkActivitiesGetOneFreeGoodsEntity);
  94. }
  95. }
  96. }
  97. /**
  98. * 根据条码跟品牌名称查询
  99. *
  100. * @param mkaId
  101. * @param prodBarcode
  102. * @param brandName
  103. * @return
  104. */
  105. @Override
  106. public MkActivitiesGetOneFreeGoodsEntity queryByCodeOrBrand(Long mkaId, String prodBarcode, String brandName) {
  107. return mkActivitiesGetOneFreeGoodsDao.queryByCodeOrBrand(mkaId,prodBarcode,brandName);
  108. }
  109. }