From 8b37d2f16d4aa7c7ce19829b74307ae0072b127f Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期一, 25 二月 2019 10:44:55 +0800 Subject: [PATCH] 1.5.1 奖励券、免单券 --- fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityFactoryServiceImpl.java | 124 ++++++++++++++-------------------------- 1 files changed, 44 insertions(+), 80 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityFactoryServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityFactoryServiceImpl.java index dbd19ca..a77aa6f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityFactoryServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityFactoryServiceImpl.java @@ -201,98 +201,61 @@ @Override @Transactional - public void addBatch(List<Long> auctionIdList, String lableNames, AdminUser admin) throws Exception { - - List<Label> listLabs = new ArrayList<Label>(); - - if (!StringUtil.isNullOrEmpty(lableNames)) { - // 绌烘牸闅斿紑 - String[] arrtitles = lableNames.split("\\s+"); - for (String title : arrtitles) { - /* 閬嶅巻鏍囩鍚嶇О锛氭煡璇㈡暟鎹簱涓槸鍚﹀凡瀛樺湪 */ - List<Label> labels = labelService.selectByTitle(title.trim()); - - if (labels != null && labels.size() > 0) { - Label label = labels.get(0); - - listLabs.add(label); - } else { - // 鏂板 - Label label = new Label(); - label.setTitle(title);// 鍚嶇О - label.setEntrymode(Label.MODE_SYSTEM); // 鎵归噺褰曞叆 - label.setCreatetime(new Date()); - label.setUpdatetime(new Date()); - label.setCreateUser(admin); - label.setIosClick(0l); - label.setAndroidClick(0l); - labelService.insertSelective(label); - - listLabs.add(label); + public void addBatchGoodsByTaoBaoId(List<Long> listTaoBaoId, String lableNames, AdminUser admin) + throws Exception { + + List<TaoBaoGoodsBrief> listAddGoods = new ArrayList<TaoBaoGoodsBrief>(); + if (listTaoBaoId != null && listTaoBaoId.size() > 0) { + for (Long auctionId: listTaoBaoId) { + /* 鏍规嵁auctionId 鑾峰彇娣樺疂鍟嗗搧 */ + TaoBaoGoodsBrief goodsBrief = TaoKeApiUtil.searchGoodsDetail(auctionId); + if (goodsBrief != null) { + listAddGoods.add(goodsBrief); } - } } + } - List<TaoBaoGoodsBrief> existList = taoBaoGoodsBriefRecordMapper.queryByAuctionIdList(auctionIdList); + + @Override + @Transactional + public void addBatchTaoBaoGoods(List<TaoBaoGoodsBrief> listTaoBaoGoods, String lableNames, AdminUser admin) throws Exception { + + if (listTaoBaoGoods == null || listTaoBaoGoods.size() == 0) { + throw new Exception("鏈壘鍒板尮閰嶇殑鍟嗗搧"); + } + + // 鍒涘缓鏍囩 + List<Label> listLabel = labelService.addBatchByNames(lableNames, admin); - List<QualityFactory> addList = new ArrayList<QualityFactory>(); - List<LabelGoods> addLabelList = new ArrayList<LabelGoods>(); + List<QualityFactory> listQuality = new ArrayList<QualityFactory>(); + List<LabelGoods> listLabelGoods = new ArrayList<LabelGoods>(); - for (Long auctionId : auctionIdList) { + for (TaoBaoGoodsBrief goodsBrief: listTaoBaoGoods) { - boolean process = false; - TaoBaoGoodsBrief goodsBrief = null; + // 鏈湴鏄惁宸插瓨鍦ㄦ鍟嗗搧 + List<TaoBaoGoodsBrief> hasList = taoBaoGoodsBriefService.queryByAuctionId(goodsBrief.getAuctionId()); - if (existList != null && existList.size() > 0) { - for (TaoBaoGoodsBrief taoBaoGoodsBrief : existList) { - Long aId = taoBaoGoodsBrief.getAuctionId(); - if (auctionId.equals(aId)) { - goodsBrief = taoBaoGoodsBrief; - goodsBrief.setId(null); - process = true; - } - } - } - - if (!process) { - /* 鏍规嵁auctionId 鑾峰彇娣樺疂鍟嗗搧 */ - goodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId); - } - - if (goodsBrief == null) - continue; - - /* 鍒ゆ柇鍟嗗搧 鏄惁宸茬粡瀛樺湪鏁版嵁搴� */ - List<TaoBaoGoodsBrief> taoBaoGoodsBriefList = taoBaoGoodsBriefService.queryByAuctionId(auctionId); - - if (taoBaoGoodsBriefList != null && taoBaoGoodsBriefList.size() > 0) { - - TaoBaoGoodsBrief currentGoodsBrief = taoBaoGoodsBriefList.get(0); - + if (hasList != null && hasList.size() > 0) { + TaoBaoGoodsBrief currentGoodsBrief = hasList.get(0); goodsBrief.setId(currentGoodsBrief.getId()); - + // 鏇存柊鍟嗗搧鏈�鏂颁俊鎭� taoBaoGoodsUpdateService.updateTaoBaoGoods(goodsBrief); - } else { - - // 鎻掑叆鏈湴鏁版嵁搴� goodsBrief.setId(null); goodsBrief.setState(0); goodsBrief.setCreatetime(new Date()); goodsBrief.setUpdatetime(new Date()); - // 闈炵┖椤� 澶勭悊 + // 闈炵┖椤� 璁剧疆榛樿鍊� setTaoBaoGoodsBriefDefault(goodsBrief); - + // 淇濆瓨鑷虫湰鍦� taoBaoGoodsBriefService.insertSelective(goodsBrief); } // 鏄惁宸插叆搴� - Long id = goodsBrief.getId(); - List<QualityFactory> selectionList = qualityFactoryMapper.queryByGoodsId(id); + List<QualityFactory> selectionList = qualityFactoryMapper.queryByGoodsId(goodsBrief.getId()); - /* 杩涘叆绮鹃�夊晢鍝佸簱 */ if (selectionList == null || selectionList.size() == 0) { // 娣诲姞鑷崇簿閫夊晢鍝佸簱 QualityFactory selectionGoods = new QualityFactory(); @@ -307,7 +270,7 @@ selectionGoods.setEntryMode(QualityFactory.MODE_MANUAL);// 浜哄伐绛涢�� selectionGoods.setGoodsSource(QualityFactory.SOURCE_TAOBAO);// 鏉ユ簮娣樺疂 - addList.add(selectionGoods); + listQuality.add(selectionGoods); } else { // 鏇存柊鍟嗗搧 QualityFactory selectionGoods = selectionList.get(0); @@ -315,10 +278,10 @@ qualityFactoryMapper.updateByPrimaryKeySelective(selectionGoods); } - if (listLabs.size() > 0) { - for (Label label : listLabs) { + if (listLabel != null && listLabel.size() > 0) { + for (Label label : listLabel) { /* 璐翠笂鏍囩 锛� 宸茶创涓嶅鐞嗗垯 */ - Long existence = labelGoodsMapper.isExistence(id, label.getId()); + Long existence = labelGoodsMapper.isExistence(goodsBrief.getId(), label.getId()); // 璇ュ晢鍝佷笉瀛樺湪姝ゆ爣绛惧垯娣诲姞锛� 鍙嶄箣涓嶅仛澶勭悊 if (existence == null || existence == 0l) { @@ -328,23 +291,24 @@ lg.setCreateUser(admin); lg.setCreatetime(new Date()); lg.setTaoBaoGoodsBrief(goodsBrief); - - addLabelList.add(lg); + listLabelGoods.add(lg); } } } + } - if (addList.size() > 0) { - qualityFactoryMapper.insertBatch(addList); + if (listQuality.size() > 0) { + qualityFactoryMapper.insertBatch(listQuality); } - if (addLabelList.size() > 0) { - labelGoodsMapper.insertBatch(addLabelList); + if (listLabelGoods.size() > 0) { + labelGoodsMapper.insertBatch(listLabelGoods); } } + @Override @Transactional public void setWeightBatch(List<Long> idList, AdminUser admin, Integer weight, Integer weightSmall, -- Gitblit v1.8.0