From dc5be7d38446f70e6ff86df311119c32b41fe7f8 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 28 十一月 2020 16:37:05 +0800 Subject: [PATCH] 大淘客搜索接口升级 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java | 707 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 360 insertions(+), 347 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java index 7619f25..eda1a22 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java @@ -8,10 +8,15 @@ import javax.annotation.Resource; +import com.yeshi.fanli.entity.SystemEnum; +import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.util.*; import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.MoneyBigDecimalUtil; import org.yeshi.utils.entity.FileUploadResult; import com.google.gson.Gson; @@ -20,9 +25,11 @@ import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.dto.share.ShareGoodsRecordDTO; import com.yeshi.fanli.entity.bus.user.UserGoodsStorage; +import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum; import com.yeshi.fanli.entity.goods.CommonGoods; import com.yeshi.fanli.entity.jd.JDGoods; -import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.fanli.entity.system.ConfigKeyEnum; +import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.exception.goods.CommonGoodsException; import com.yeshi.fanli.exception.share.UserShareGoodsRecordException; import com.yeshi.fanli.exception.taobao.TaoKeApiException; @@ -33,10 +40,6 @@ import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; import com.yeshi.fanli.service.inter.user.UserGoodsStorageService; import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; -import com.yeshi.fanli.util.CommonGoodsUtil; -import com.yeshi.fanli.util.Constant; -import com.yeshi.fanli.util.MoneyBigDecimalUtil; -import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.factory.CommonGoodsFactory; import com.yeshi.fanli.util.jd.JDApiUtil; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; @@ -49,409 +52,419 @@ @Service public class UserGoodsStorageServiceImpl implements UserGoodsStorageService { - @Resource(name = "taskExecutor") - private TaskExecutor executor; + @Resource(name = "taskExecutor") + private TaskExecutor executor; - @Resource - private RedisManager redisManager; + @Resource + private RedisManager redisManager; - @Resource - private ConfigService configService; + @Resource + private ConfigService configService; - @Resource - private CommonGoodsService commonGoodsService; + @Resource + private CommonGoodsService commonGoodsService; - @Resource - private HongBaoManageService manageService; + @Resource + private HongBaoManageService manageService; - @Resource - private UserGoodsStorageMapper userGoodsStorageMapper; + @Resource + private UserGoodsStorageMapper userGoodsStorageMapper; - @Resource - private UserShareGoodsRecordService userShareGoodsRecordService; - @Resource - private HongBaoManageService hongBaoManageService; + @Resource + private UserShareGoodsRecordService userShareGoodsRecordService; + @Resource + private HongBaoManageService hongBaoManageService; - @Override - public int deleteByPrimaryKey(Long id) { - return userGoodsStorageMapper.deleteByPrimaryKey(id); - } + @Resource + private UserInfoService userInfoService; - @Override - public int insert(UserGoodsStorage record) { - return userGoodsStorageMapper.insert(record); - } + @Override + public int deleteByPrimaryKey(Long id) { + return userGoodsStorageMapper.deleteByPrimaryKey(id); + } - @Override - public int insertSelective(UserGoodsStorage record) { - return userGoodsStorageMapper.insertSelective(record); - } + @Override + public int insert(UserGoodsStorage record) { + return userGoodsStorageMapper.insert(record); + } - @Override - public UserGoodsStorage selectByPrimaryKey(Long id) { - return userGoodsStorageMapper.selectByPrimaryKey(id); - } + @Override + public int insertSelective(UserGoodsStorage record) { + return userGoodsStorageMapper.insertSelective(record); + } - @Override - public int updateByPrimaryKeySelective(UserGoodsStorage record) { - return userGoodsStorageMapper.updateByPrimaryKeySelective(record); - } + @Override + public UserGoodsStorage selectByPrimaryKey(Long id) { + return userGoodsStorageMapper.selectByPrimaryKey(id); + } - @Override - public int updateByPrimaryKey(UserGoodsStorage record) { - return userGoodsStorageMapper.updateByPrimaryKey(record); - } + @Override + public int updateByPrimaryKeySelective(UserGoodsStorage record) { + return userGoodsStorageMapper.updateByPrimaryKeySelective(record); + } - /** - * 鏍规嵁涓婚敭鎵归噺鍒犻櫎 - * - * @param list - * @return - */ - @Override - public int deleteBatchByPrimaryKey(List<Long> list) { - return userGoodsStorageMapper.deleteBatchByPrimaryKey(list); - } + @Override + public int updateByPrimaryKey(UserGoodsStorage record) { + return userGoodsStorageMapper.updateByPrimaryKey(record); + } - /** - * 鏍规嵁涓婚敭 銆乽id 鎵归噺鍒犻櫎 - * - * @param list - * @return - */ - @Override - public int deleteBatchByUidAndPrimaryKey(Long uid, List<Long> list) { - return userGoodsStorageMapper.deleteBatchByUidAndPrimaryKey(uid, list); - } + /** + * 鏍规嵁涓婚敭鎵归噺鍒犻櫎 + * + * @param list + * @return + */ + @Override + public int deleteBatchByPrimaryKey(List<Long> list) { + return userGoodsStorageMapper.deleteBatchByPrimaryKey(list); + } - @Override - public List<UserGoodsStorage> listQueryByUid(long start, int count, Long uid, Integer source) { - return userGoodsStorageMapper.listQueryByUid(start, count, uid, source); - } + /** + * 鏍规嵁涓婚敭 銆乽id 鎵归噺鍒犻櫎 + * + * @param list + * @return + */ + @Override + public int deleteBatchByUidAndPrimaryKey(Long uid, List<Long> list) { + return userGoodsStorageMapper.deleteBatchByUidAndPrimaryKey(uid, list); + } - @Override - public UserGoodsStorage getByUidAndAuctionId(Long uid, Long auctionId, Integer goodsType) { - return userGoodsStorageMapper.getByUidAndAuctionId(uid, auctionId, goodsType); - } + @Override + public List<UserGoodsStorage> listQueryByUid(long start, int count, Long uid, Integer source) { + return userGoodsStorageMapper.listQueryByUid(start, count, uid, source); + } - @Override - public long countQueryByUid(Long uid, Integer source) { - return userGoodsStorageMapper.countQueryByUid(uid, source); - } + @Override + public UserGoodsStorage getByUidAndAuctionId(Long uid, Long auctionId, Integer goodsType) { + return userGoodsStorageMapper.getByUidAndAuctionId(uid, auctionId, goodsType); + } - @Override - public void save(Long uid, Set<Long> auctionIds, Integer goodsType) throws UserGoodsStorageException { + @Override + public long countQueryByUid(Long uid, Integer source) { + return userGoodsStorageMapper.countQueryByUid(uid, source); + } - if (uid == null) { - throw new UserGoodsStorageException(1, "鐢ㄦ埛灏氭湭鐧诲綍"); - } + @Override + public void save(Long uid, Set<Long> auctionIds, Integer goodsType) throws UserGoodsStorageException { - if (auctionIds == null || auctionIds.size() == 0) { - throw new UserGoodsStorageException(1, "鍟嗗搧ID涓虹┖"); - } + if (uid == null) { + throw new UserGoodsStorageException(1, "鐢ㄦ埛灏氭湭鐧诲綍"); + } - for (Long auctionId : auctionIds) { - CommonGoods commonGoods = null; - if (goodsType == null) { - goodsType = Constant.SOURCE_TYPE_TAOBAO; - } + if (auctionIds == null || auctionIds.size() == 0) { + throw new UserGoodsStorageException(1, "鍟嗗搧ID涓虹┖"); + } - if (goodsType == Constant.SOURCE_TYPE_JD) { - // 浜笢 - JDGoods jdGoods = JDApiUtil.queryGoodsDetail(auctionId); - if (jdGoods == null) { - jdGoods = JDApiUtil.getGoodsDetail(auctionId); - } - if (jdGoods == null) { - throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); - } - commonGoods = CommonGoodsFactory.create(jdGoods); + for (Long auctionId : auctionIds) { + CommonGoods commonGoods = null; + if (goodsType == null) { + goodsType = Constant.SOURCE_TYPE_TAOBAO; + } - } else if (goodsType == Constant.SOURCE_TYPE_PDD) { - // 鎷煎澶� - PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(auctionId); - if (pddGoods == null) { - throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); - } - commonGoods = CommonGoodsFactory.create(pddGoods); - } else { - // 娣樺疂 - try { - // 鑾峰彇鍟嗗搧璇︽儏 - TaoBaoGoodsBrief goodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId); - commonGoods = CommonGoodsFactory.create(goodsBrief); - } catch (TaobaoGoodsDownException e) { - throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); - } - } + if (goodsType == Constant.SOURCE_TYPE_JD) { + // 浜笢 + JDGoods jdGoods = JDApiUtil.queryGoodsDetail(auctionId); + if (jdGoods == null) { + jdGoods = JDApiUtil.getGoodsDetail(auctionId); + } + if (jdGoods == null) { + throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); + } + commonGoods = CommonGoodsFactory.create(jdGoods); - if (commonGoods != null) { - try { - commonGoodsService.addOrUpdateCommonGoods(commonGoods); - } catch (CommonGoodsException e) { - e.printStackTrace(); - throw new UserGoodsStorageException(1, "鍟嗗搧淇℃伅鏇存柊澶辫触"); - } + } else if (goodsType == Constant.SOURCE_TYPE_PDD) { + // 鎷煎澶� + PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(auctionId); + if (pddGoods == null) { + throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); + } + commonGoods = CommonGoodsFactory.create(pddGoods); + } else { + // 娣樺疂 + try { + // 鑾峰彇鍟嗗搧璇︽儏 + TaoBaoGoodsBrief goodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId); + commonGoods = CommonGoodsFactory.create(goodsBrief); + } catch (TaobaoGoodsDownException e) { + throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�"); + } + } - Long cid = commonGoods.getId(); + if (commonGoods != null) { + try { + commonGoodsService.addOrUpdateCommonGoods(commonGoods); + } catch (CommonGoodsException e) { + e.printStackTrace(); + throw new UserGoodsStorageException(1, "鍟嗗搧淇℃伅鏇存柊澶辫触"); + } - UserGoodsStorage goodsStorage = userGoodsStorageMapper.getByUidAndCid(uid, cid); + Long cid = commonGoods.getId(); - if (goodsStorage != null) { - // 鍒濆璇濈姸鎬� - goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); - goodsStorage.setUpdateTime(new Date()); - userGoodsStorageMapper.updateByPrimaryKeySelective(goodsStorage); - } else { - goodsStorage = new UserGoodsStorage(); - goodsStorage.setUid(uid); - ; - goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); - goodsStorage.setCommonGoods(commonGoods); - goodsStorage.setCreateTime(new Date()); - goodsStorage.setUpdateTime(new Date()); - userGoodsStorageMapper.insertSelective(goodsStorage); - } - } - } - } + UserGoodsStorage goodsStorage = userGoodsStorageMapper.getByUidAndCid(uid, cid); - @Override - @Transactional(rollbackFor=Exception.class) - public void addCommonGoods(Long uid, Set<Long> ids) throws UserGoodsStorageException { + if (goodsStorage != null) { + // 鍒濆璇濈姸鎬� + goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); + goodsStorage.setUpdateTime(new Date()); + userGoodsStorageMapper.updateByPrimaryKeySelective(goodsStorage); + } else { + goodsStorage = new UserGoodsStorage(); + goodsStorage.setUid(uid); + ; + goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); + goodsStorage.setCommonGoods(commonGoods); + goodsStorage.setCreateTime(new Date()); + goodsStorage.setUpdateTime(new Date()); + userGoodsStorageMapper.insertSelective(goodsStorage); + } + } + } + } - if (uid == null) { - throw new UserGoodsStorageException(1, "鐢ㄦ埛灏氭湭鐧诲綍"); - } + @Override + @Transactional(rollbackFor = Exception.class) + public void addCommonGoods(Long uid, Set<Long> ids) throws UserGoodsStorageException { - if (ids == null || ids.size() == 0) { - throw new UserGoodsStorageException(1, "鍟嗗搧ID涓虹┖"); - } + if (uid == null) { + throw new UserGoodsStorageException(1, "鐢ㄦ埛灏氭湭鐧诲綍"); + } - for (Long id : ids) { - CommonGoods commonGoods = commonGoodsService.selectByPrimaryKey(id); - if (commonGoods != null) { - UserGoodsStorage goodsStorage = userGoodsStorageMapper.getByUidAndCid(uid, id); + if (ids == null || ids.size() == 0) { + throw new UserGoodsStorageException(1, "鍟嗗搧ID涓虹┖"); + } - if (goodsStorage != null) { - // 鍒濆璇濈姸鎬� - goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); - goodsStorage.setUpdateTime(new Date()); - userGoodsStorageMapper.updateByPrimaryKeySelective(goodsStorage); - } else { - goodsStorage = new UserGoodsStorage(); - goodsStorage.setUid(uid); - ; - goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); - goodsStorage.setCommonGoods(commonGoods); - goodsStorage.setCreateTime(new Date()); - goodsStorage.setUpdateTime(new Date()); - userGoodsStorageMapper.insertSelective(goodsStorage); - } - } - } - } + for (Long id : ids) { + CommonGoods commonGoods = commonGoodsService.selectByPrimaryKey(id); + if (commonGoods != null) { + UserGoodsStorage goodsStorage = userGoodsStorageMapper.getByUidAndCid(uid, id); - @Override - public JSONArray getMyStorage(int page, int pageSize, Long uid, Integer source) throws UserGoodsStorageException { + if (goodsStorage != null) { + // 鍒濆璇濈姸鎬� + goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); + goodsStorage.setUpdateTime(new Date()); + userGoodsStorageMapper.updateByPrimaryKeySelective(goodsStorage); + } else { + goodsStorage = new UserGoodsStorage(); + goodsStorage.setUid(uid); + ; + goodsStorage.setState(UserGoodsStorage.STATE_NORMAL); + goodsStorage.setCommonGoods(commonGoods); + goodsStorage.setCreateTime(new Date()); + goodsStorage.setUpdateTime(new Date()); + userGoodsStorageMapper.insertSelective(goodsStorage); + } + } + } + } - JSONArray array = new JSONArray(); + @Override + public JSONArray getMyStorage(int page, int pageSize, Long uid, Integer source) throws UserGoodsStorageException { - List<UserGoodsStorage> listStorage = listQueryByUid(page, pageSize, uid, source); - if (listStorage == null || listStorage.size() == 0) { - return array; - } + JSONArray array = new JSONArray(); - if (source == null) { - source = Constant.SOURCE_TYPE_TAOBAO; - } + List<UserGoodsStorage> listStorage = listQueryByUid(page, pageSize, uid, source); + if (listStorage == null || listStorage.size() == 0) { + return array; + } - List<TaoBaoGoodsBrief> listTaoKeGoods = null; - if (source == Constant.SOURCE_TYPE_TAOBAO) { - List<Long> listGid = new ArrayList<Long>(); - for (UserGoodsStorage userGoodsStorage : listStorage) { - CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); - if (commonGoods == null) { - continue; - } - listGid.add(commonGoods.getGoodsId()); - } + if (source == null) { + source = Constant.SOURCE_TYPE_TAOBAO; + } - // API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭 - try { - listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid); - } catch (TaoKeApiException e) { - e.printStackTrace(); - } catch (TaobaoGoodsDownException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } - } + List<TaoBaoGoodsBrief> listTaoKeGoods = null; + if (source == Constant.SOURCE_TYPE_TAOBAO) { + List<Long> listGid = new ArrayList<Long>(); + for (UserGoodsStorage userGoodsStorage : listStorage) { + CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); + if (commonGoods == null) { + continue; + } + listGid.add(commonGoods.getGoodsId()); + } - BigDecimal rate = manageService.getFanLiRate(); - Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) - .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); + // API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭 + try { + listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid); + } catch (TaoKeApiException e) { + e.printStackTrace(); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + } + SystemEnum system = userInfoService.getUserSystem(uid); + BigDecimal rate = manageService.getFanLiRate(UserLevelEnum.daRen, system); + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) + .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); - for (UserGoodsStorage userGoodsStorage : listStorage) { - CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); - if (commonGoods == null) { - continue; - } + for (UserGoodsStorage userGoodsStorage : listStorage) { + CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); + if (commonGoods == null) { + continue; + } - int state = 0; - Integer goodsType = commonGoods.getGoodsType(); + int state = 0; + Integer goodsType = commonGoods.getGoodsType(); - if (listTaoKeGoods != null && listTaoKeGoods.size() > 0 && goodsType != null - && goodsType == Constant.SOURCE_TYPE_TAOBAO) { - state = 1; // 榛樿鍋滃敭 - Long goodsId = commonGoods.getGoodsId(); - for (TaoBaoGoodsBrief taoKeGoods : listTaoKeGoods) { - Long auctionId = taoKeGoods.getAuctionId(); - if (goodsId == auctionId || goodsId.equals(auctionId)) { - state = 0; // 鍦ㄥ敭 - break; - } - } - } - commonGoods.setState(state); - TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods); + if (listTaoKeGoods != null && listTaoKeGoods.size() > 0 && goodsType != null + && goodsType == Constant.SOURCE_TYPE_TAOBAO) { + state = 1; // 榛樿鍋滃敭 + Long goodsId = commonGoods.getGoodsId(); + for (TaoBaoGoodsBrief taoKeGoods : listTaoKeGoods) { + Long auctionId = taoKeGoods.getAuctionId(); + if (goodsId == auctionId || goodsId.equals(auctionId)) { + state = 0; // 鍦ㄥ敭 + break; + } + } + } + commonGoods.setState(state); + TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods); - // 鍒ゆ柇鏄惁宸插垎浜� - Integer storageState = userGoodsStorage.getState(); - if (storageState != null && storageState == UserGoodsStorage.STATE_SHARED) { - Integer goodsState = goodsBrief.getState(); - if (goodsState != null && goodsState != 1) { - goodsBrief.setState(2); // 宸插垎浜姸鎬� 浼樺厛鏄剧ず宸蹭笅鏋� - } - } + // 鍒ゆ柇鏄惁宸插垎浜� + Integer storageState = userGoodsStorage.getState(); + if (storageState != null && storageState == UserGoodsStorage.STATE_SHARED) { + Integer goodsState = goodsBrief.getState(); + if (goodsState != null && goodsState != 1) { + goodsBrief.setState(2); // 宸插垎浜姸鎬� 浼樺厛鏄剧ず宸蹭笅鏋� + } + } - String json = gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, rate.toString(), null)); + String json = gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, rate.toString(), null)); - JSONObject dataObject = new JSONObject(); - dataObject.put("storageId", userGoodsStorage.getId()); - dataObject.put("goods", json); - array.add(dataObject); - } + JSONObject dataObject = new JSONObject(); + dataObject.put("storageId", userGoodsStorage.getId()); + dataObject.put("goods", json); + array.add(dataObject); + } - return array; - } + return array; + } - @Override - public boolean isExistStorage(Long uid, Long auctionId, Integer goodType) { - boolean state = false; - if (uid != null && auctionId != null) { - UserGoodsStorage userGoodsStorage = userGoodsStorageMapper.getByUidAndAuctionId(uid, auctionId, goodType); - if (userGoodsStorage != null) { - state = true; - } - } - return state; - } + @Override + public boolean isExistStorage(Long uid, Long auctionId, Integer goodType) { + boolean state = false; + if (uid != null && auctionId != null) { + UserGoodsStorage userGoodsStorage = userGoodsStorageMapper.getByUidAndAuctionId(uid, auctionId, goodType); + if (userGoodsStorage != null) { + state = true; + } + } + return state; + } - @Override - public JSONObject shareGoods(Long uid, List<Long> listStorageID) - throws UserGoodsStorageException, UserShareGoodsRecordException { - List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID); - if (listStorage == null || listStorage.size() == 0) { - throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪"); - } + @Override + public JSONObject shareGoods(Long uid, List<Long> listStorageID) + throws UserGoodsStorageException, UserShareGoodsRecordException { + List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID); + if (listStorage == null || listStorage.size() == 0) { + throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪"); + } - List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>(); - // 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘 - for (Long sid : listStorageID) { - for (UserGoodsStorage torage : listStorage) { - Long id = torage.getId(); - if (sid == id || sid.equals(id)) { - listResult.add(torage); - break; - } - } - } + List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>(); + // 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘 + for (Long sid : listStorageID) { + for (UserGoodsStorage torage : listStorage) { + Long id = torage.getId(); + if (sid == id || sid.equals(id)) { + listResult.add(torage); + break; + } + } + } - BigDecimal totalMoney = new BigDecimal(0.00); - List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>(); + BigDecimal totalMoney = new BigDecimal(0.00); + List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>(); - BigDecimal rate = hongBaoManageService.getShareRate(); - for (UserGoodsStorage userGoodsStorage : listResult) { - CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); - TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods); - listGoodsBrief.add(goodsBrief); + SystemEnum system = userInfoService.getUserSystem(uid); - BigDecimal money = TaoBaoUtil.getGoodsHongBaoMoney(goodsBrief, rate); - totalMoney = MoneyBigDecimalUtil.add(totalMoney, money); - } + BigDecimal rate = hongBaoManageService.getShareRate(UserLevelEnum.daRen,system); + for (UserGoodsStorage userGoodsStorage : listResult) { + CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); + TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods); + listGoodsBrief.add(goodsBrief); - ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordGoodsStorage(uid, listGoodsBrief, - listStorageID); - FileUploadResult uploadResult = new FileUploadResult(); - uploadResult.setUrl(shareRecord.getSharePictureUrl()); + BigDecimal money = TaoBaoUtil.getGoodsHongBaoMoney(goodsBrief, rate, true); + totalMoney = MoneyBigDecimalUtil.add(totalMoney, money); + } - JSONObject data = new JSONObject(); - data.put("revenue", listGoodsBrief.size() + "涓晢鍝侀浼板垎浜閲戯細楼" + totalMoney); - data.put("shareId", shareRecord.getRedisKey()); - data.put("shareImg", uploadResult); - data.put("notifyDesc", configService.get("goods_share_multiple_notify")); - return data; - } + ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordGoodsStorage(uid, listGoodsBrief, + listStorageID); + FileUploadResult uploadResult = new FileUploadResult(); + uploadResult.setUrl(shareRecord.getSharePictureUrl()); - @Override - public JSONObject createShareV2(Long uid, List<Long> listStorageID, boolean needDrawPicture) - throws UserGoodsStorageException, UserShareGoodsRecordException { - List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID); - if (listStorage == null || listStorage.size() == 0) { - throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪"); - } + UserInfo user = userInfoService.selectByPKey(uid); - List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>(); - // 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘 - for (Long sid : listStorageID) { - for (UserGoodsStorage torage : listStorage) { - Long id = torage.getId(); - if (sid == id || sid.equals(id)) { - listResult.add(torage); - break; - } - } - } + JSONObject data = new JSONObject(); + data.put("revenue", listGoodsBrief.size() + "涓晢鍝侀浼板垎浜閲戯細楼" + totalMoney); + data.put("shareId", shareRecord.getRedisKey()); + data.put("shareImg", uploadResult); + data.put("notifyDesc", configService.getValue(ConfigKeyEnum.goodsShareMultipleNotify.getKey(), user.getSystem())); + return data; + } - BigDecimal totalMoney = new BigDecimal(0.00); - List<CommonGoods> listCommonGoods = new ArrayList<CommonGoods>(); + @Override + public JSONObject createShareV2(Long uid, List<Long> listStorageID, boolean needDrawPicture) + throws UserGoodsStorageException, UserShareGoodsRecordException { + List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID); + if (listStorage == null || listStorage.size() == 0) { + throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪"); + } - Integer goodsType = null; - BigDecimal rate = hongBaoManageService.getShareRate(); - for (UserGoodsStorage userGoodsStorage : listResult) { - CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); - BigDecimal money = CommonGoodsUtil.getCommission(commonGoods, rate); - totalMoney = MoneyBigDecimalUtil.add(totalMoney, money); - listCommonGoods.add(commonGoods); + List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>(); + // 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘 + for (Long sid : listStorageID) { + for (UserGoodsStorage torage : listStorage) { + Long id = torage.getId(); + if (sid == id || sid.equals(id)) { + listResult.add(torage); + break; + } + } + } - if (goodsType == null) { - goodsType = commonGoods.getGoodsType(); - } - } + SystemEnum system = userInfoService.getUserSystem(uid); - ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordGoodsStorageV2(uid, listCommonGoods, - listStorageID, needDrawPicture); - FileUploadResult uploadResult = new FileUploadResult(); - uploadResult.setUrl(shareRecord.getSharePictureUrl()); + BigDecimal totalMoney = new BigDecimal(0.00); + List<CommonGoods> listCommonGoods = new ArrayList<CommonGoods>(); - JSONObject data = new JSONObject(); - data.put("revenue", listCommonGoods.size() + "涓晢鍝侀浼板垎浜閲戯細楼" + totalMoney); - data.put("shareId", shareRecord.getRedisKey()); - data.put("shareImg", uploadResult); + Integer goodsType = null; + BigDecimal rate = hongBaoManageService.getShareRate(UserLevelEnum.daRen,system); + for (UserGoodsStorage userGoodsStorage : listResult) { + CommonGoods commonGoods = userGoodsStorage.getCommonGoods(); + BigDecimal money = CommonGoodsUtil.getCommission(commonGoods, rate); + totalMoney = MoneyBigDecimalUtil.add(totalMoney, money); + listCommonGoods.add(commonGoods); - // 鎻愮ず璇笉鍚� - if (goodsType == Constant.SOURCE_TYPE_JD) { - // 浜笢 - data.put("notifyDesc", configService.get("goods_share_notify_jd")); - } else if (goodsType == Constant.SOURCE_TYPE_PDD) { - // 鎷煎澶� - data.put("notifyDesc", configService.get("goods_share_notify_pdd")); - } else { - data.put("notifyDesc", configService.get("goods_share_multiple_notify")); - } - return data; - } + if (goodsType == null) { + goodsType = commonGoods.getGoodsType(); + } + } + + ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordGoodsStorageV2(uid, listCommonGoods, + listStorageID, needDrawPicture); + FileUploadResult uploadResult = new FileUploadResult(); + uploadResult.setUrl(shareRecord.getSharePictureUrl()); + + JSONObject data = new JSONObject(); + data.put("revenue", listCommonGoods.size() + "涓晢鍝侀浼板垎浜閲戯細楼" + totalMoney); + data.put("shareId", shareRecord.getRedisKey()); + data.put("shareImg", uploadResult); + + + // 鎻愮ず璇笉鍚� + if (goodsType == Constant.SOURCE_TYPE_JD) { + // 浜笢 + data.put("notifyDesc", configService.getValue(ConfigKeyEnum.goodsShareNotifyJD.getKey(), system)); + } else if (goodsType == Constant.SOURCE_TYPE_PDD) { + // 鎷煎澶� + data.put("notifyDesc", configService.getValue(ConfigKeyEnum.goodsShareNotifyPDD.getKey(), system)); + } else { + data.put("notifyDesc", configService.getValue(ConfigKeyEnum.goodsShareMultipleNotify.getKey(), system)); + } + return data; + } } -- Gitblit v1.8.0