From 28cf328a098334b51a3e9d2d56f983fb8c862211 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 23 五月 2020 09:54:38 +0800 Subject: [PATCH] 足迹、收藏订单兼容新需求 --- fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ScanHistoryV2ServiceImpl.java | 86 +++++++++++++++++++++++++++++++++++++++--- 1 files changed, 79 insertions(+), 7 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ScanHistoryV2ServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ScanHistoryV2ServiceImpl.java index e8bdcc4..0f8de4a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ScanHistoryV2ServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ScanHistoryV2ServiceImpl.java @@ -8,9 +8,11 @@ import org.springframework.stereotype.Service; import com.yeshi.fanli.dao.mybatis.goods.ScanHistoryV2Mapper; +import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.goods.CommonGoods; import com.yeshi.fanli.entity.goods.ScanHistoryV2; +import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.exception.goods.CommonGoodsException; import com.yeshi.fanli.exception.goods.ScanHistoryException; @@ -33,21 +35,73 @@ throws CommonGoodsException, ScanHistoryException { if (uid == null && StringUtil.isNullOrEmpty(device)) throw new ScanHistoryException(1, "璁惧鎴栫敤鎴蜂俊鎭己澶�"); + CommonGoods commonGoods = CommonGoodsFactory.create(goods); commonGoods = commonGoodsService.addOrUpdateCommonGoods(commonGoods); if (commonGoods == null) throw new CommonGoodsException(2, "鍟嗗搧淇℃伅涓嶅畬鏁�"); + // 娣诲姞娴忚璁板綍 ScanHistoryV2 scanHistoryV2 = new ScanHistoryV2(); scanHistoryV2.setCommonGoods(commonGoods); scanHistoryV2.setCreateTime(new Date()); scanHistoryV2.setDevice(device); + if (uid != null) scanHistoryV2.setUserInfo(new UserInfo(uid)); + scanHistoryV2.setUpdateTime(new Date()); scanHistoryV2Mapper.insertSelective(scanHistoryV2); } + + @Override + public void addJDScanHistory(Long uid, String device, JDGoods goods) throws CommonGoodsException, ScanHistoryException { + if (uid == null && StringUtil.isNullOrEmpty(device)) + throw new ScanHistoryException(1, "璁惧鎴栫敤鎴蜂俊鎭己澶�"); + + CommonGoods commonGoods = CommonGoodsFactory.create(goods); + commonGoods = commonGoodsService.addOrUpdateCommonGoods(commonGoods); + if (commonGoods == null) + throw new CommonGoodsException(2, "鍟嗗搧淇℃伅涓嶅畬鏁�"); + + // 娣诲姞娴忚璁板綍 + ScanHistoryV2 scanHistoryV2 = new ScanHistoryV2(); + scanHistoryV2.setCommonGoods(commonGoods); + scanHistoryV2.setCreateTime(new Date()); + scanHistoryV2.setDevice(device); + + if (uid != null) + scanHistoryV2.setUserInfo(new UserInfo(uid)); + + scanHistoryV2.setUpdateTime(new Date()); + scanHistoryV2Mapper.insertSelective(scanHistoryV2); + } + + + @Override + public void addPDDScanHistory(Long uid, String device, PDDGoodsDetail pddGoods) throws CommonGoodsException, ScanHistoryException { + if (uid == null && StringUtil.isNullOrEmpty(device)) + throw new ScanHistoryException(1, "璁惧鎴栫敤鎴蜂俊鎭己澶�"); + + CommonGoods commonGoods = CommonGoodsFactory.create(pddGoods); + commonGoods = commonGoodsService.addOrUpdateCommonGoods(commonGoods); + if (commonGoods == null) + throw new CommonGoodsException(2, "鍟嗗搧淇℃伅涓嶅畬鏁�"); + + // 娣诲姞娴忚璁板綍 + ScanHistoryV2 scanHistoryV2 = new ScanHistoryV2(); + scanHistoryV2.setCommonGoods(commonGoods); + scanHistoryV2.setCreateTime(new Date()); + scanHistoryV2.setDevice(device); + + if (uid != null) + scanHistoryV2.setUserInfo(new UserInfo(uid)); + + scanHistoryV2.setUpdateTime(new Date()); + scanHistoryV2Mapper.insertSelective(scanHistoryV2); + } + @Override public void addScanHistory(ScanHistoryV2 history) throws CommonGoodsException, ScanHistoryException { if (history == null) @@ -63,17 +117,18 @@ } @Override - public List<ScanHistoryV2> getScanHistoryByDeviceOrUid(Long uid, String device, int page, int pageSize) { + public List<ScanHistoryV2> getScanHistoryByDeviceOrUid(Long uid, String device, int page, int pageSize, + Integer source, boolean notBackSuVip) { if (uid == null && StringUtil.isNullOrEmpty(device)) return null; - return scanHistoryV2Mapper.selectByDeviceOrUid(uid, device, (page - 1) * pageSize, pageSize); + return scanHistoryV2Mapper.selectByDeviceOrUid(uid, device, (page - 1) * pageSize, pageSize, source, notBackSuVip); } @Override - public long getCountByDeviceOrUid(Long uid, String device) { + public long getCountByDeviceOrUid(Long uid, String device, Integer source, boolean notBackSuVip) { if (uid == null && StringUtil.isNullOrEmpty(device)) return 0; - Long count = scanHistoryV2Mapper.selectCountByDeviceOrUid(uid, device); + Long count = scanHistoryV2Mapper.selectCountByDeviceOrUid(uid, device, source, notBackSuVip); return count == null ? 0 : count; } @@ -81,18 +136,35 @@ public void deleteByDeviceOrUid(Long uid, String device) { if (uid == null && StringUtil.isNullOrEmpty(device)) return; - scanHistoryV2Mapper.deleteByDeviceOrUid(uid, device); + List<ScanHistoryV2> list = scanHistoryV2Mapper.listDeviceOrUid(uid, device); + if (list != null) + for (ScanHistoryV2 sv : list) + scanHistoryV2Mapper.deleteByPrimaryKey(sv.getId()); } @Override public void deleteByAuctionIdAndDeviceOrUid(Long uid, String device, Long auctionId) { if (uid == null && StringUtil.isNullOrEmpty(device)) return; - List<ScanHistoryV2> list = scanHistoryV2Mapper.selectByDeviceOrUidAndGoodsIdAndGoodsType(uid, device, auctionId, - CommonGoods.GOODS_TYPE_TB); + List<ScanHistoryV2> list = scanHistoryV2Mapper.selectByDeviceOrUidAndGoodsIdAndGoodsType(uid, device, auctionId); if (list != null) for (ScanHistoryV2 sv : list) scanHistoryV2Mapper.deleteByPrimaryKey(sv.getId()); } + + @Override + public void deleteByCommonIdAndDeviceOrUid(Long uid, String device, Long commonId) { + if (uid == null && StringUtil.isNullOrEmpty(device)) { + return; + } + + List<ScanHistoryV2> list = scanHistoryV2Mapper.getByCommonGoodsId(uid, device, commonId); + if (list != null && list.size() > 0) { + for (ScanHistoryV2 sv : list) { + scanHistoryV2Mapper.deleteByPrimaryKey(sv.getId()); + } + } + } + } -- Gitblit v1.8.0