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/homemodule/SpecialServiceImpl.java | 101 ++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 76 insertions(+), 25 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SpecialServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SpecialServiceImpl.java index 8a1cc30..e7624a3 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SpecialServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/homemodule/SpecialServiceImpl.java @@ -26,8 +26,9 @@ import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.homemodule.AdActivityVersionControl; import com.yeshi.fanli.entity.bus.homemodule.AdActivityVersionControl.AdActivityType; +import com.yeshi.fanli.entity.bus.homemodule.CommonShareInfo; +import com.yeshi.fanli.entity.bus.homemodule.CommonShareInfo.CommonShareInfoEnum; import com.yeshi.fanli.entity.bus.homemodule.Special; -import com.yeshi.fanli.entity.bus.homemodule.SpecialExtra; import com.yeshi.fanli.entity.common.JumpDetailV2; import com.yeshi.fanli.entity.system.ConfigKeyEnum; import com.yeshi.fanli.exception.banner.SwiperPictureException; @@ -36,8 +37,8 @@ import com.yeshi.fanli.service.inter.config.AppVersionService; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.homemodule.AdActivityVersionControlService; +import com.yeshi.fanli.service.inter.homemodule.CommonShareInfoService; import com.yeshi.fanli.service.inter.homemodule.SpecialCardService; -import com.yeshi.fanli.service.inter.homemodule.SpecialExtraService; import com.yeshi.fanli.service.inter.homemodule.SpecialPlaceService; import com.yeshi.fanli.service.inter.homemodule.SpecialService; import com.yeshi.fanli.util.Constant; @@ -61,7 +62,7 @@ private SpecialCardService specialCardService; @Resource - private SpecialExtraService specialExtraService; + private CommonShareInfoService commonShareInfoService; @Resource private JumpDetailV2Service jumpDetailV2Service; @@ -82,7 +83,7 @@ @Override public void saveObject(MultipartFile file, MultipartFile file2, MultipartFile file3, Special record, - String jumpType, SpecialExtra extra) throws SpecialException, Exception { + String jumpType, CommonShareInfo shareInfo) throws SpecialException, Exception { Long cardId = record.getCardId(); if (cardId == null) { @@ -156,7 +157,7 @@ record.setUpdatetime(new Date()); specialMapper.insert(record); - extra.setId(record.getId()); + shareInfo.setPid(record.getId()); Special s = new Special(); s.setId(record.getId()); @@ -223,11 +224,12 @@ record.setUpdatetime(new Date()); specialMapper.updateByPrimaryKey(record); - extra.setId(record.getId()); + shareInfo.setPid(record.getId()); } // 娣诲姞琛ュ厖淇℃伅 - specialExtraService.saveExtraInfo(extra); + shareInfo.setType(CommonShareInfoEnum.special); + commonShareInfoService.save(shareInfo); } /** @@ -356,6 +358,8 @@ if (!StringUtil.isNullOrEmpty(subPicture)) { COSManager.getInstance().deleteFile(subPicture); } + + commonShareInfoService.deleteByPidAndType(special.getId(), CommonShareInfoEnum.special.name()); } if (listSpecial != null) @@ -382,6 +386,8 @@ if (!StringUtil.isNullOrEmpty(subPicture)) { COSManager.getInstance().deleteFile(subPicture); } + + commonShareInfoService.deleteByPidAndType(special.getId(), CommonShareInfoEnum.special.name()); } return specialMapper.deleteBatchByCardID(list); @@ -449,20 +455,20 @@ specialVO.setJumpDetail(jumpDetailV2); } - // 琛ュ厖淇℃伅 - SpecialExtra extra = specialExtraService.selectByPrimaryKey(specialVO.getId()); - if (extra == null) { + // 鍒嗕韩琛ュ厖淇℃伅 + CommonShareInfo info = commonShareInfoService.getByPidAndType(specialVO.getId(), + CommonShareInfoEnum.special.name()); + if (info == null) { specialVO.setNeedSpin(false); specialVO.setComment(""); } else { - specialVO.setNeedSpin(extra.getNeedSpin()); - if (StringUtil.isNullOrEmpty(extra.getComment())) { + specialVO.setNeedSpin(info.getNeedSpin()); + if (StringUtil.isNullOrEmpty(info.getComment())) { specialVO.setComment(""); } else { - specialVO.setComment(extra.getComment()); + specialVO.setComment(info.getComment()); } } - listvo.add(specialVO); } return listvo; @@ -475,22 +481,24 @@ @Override @Cacheable(value = "specialCache", key = "'listBySystemAndCard-'+#card+'-'+#systemId") - public List<Special> listBySystemAndCard(String card, Long systemId) { - return specialMapper.listBySystemAndCard(card, systemId); + public List<SpecialVO> listBySystemAndCard(String card, Long systemId) { + List<Special> specialList = specialMapper.listBySystemAndCard(card, systemId); + return transformVO(specialList); } @Override @Cacheable(value = "specialCache", key = "'listPageBySystemAndCard-'+#start+'-'+#count+'-'+#card+'-'+#systemId") - public List<Special> listPageBySystemAndCard(long start, int count, String card, Long systemId) { - return specialMapper.listPageBySystemAndCard(start, count, card, systemId); + public List<SpecialVO> listPageBySystemAndCard(long start, int count, String card, Long systemId) { + List<Special> specialList = specialMapper.listPageBySystemAndCard(start, count, card, systemId); + return transformVO(specialList); } @Override @Cacheable(value = "specialCache", key = "'listByVersion-'+#start+'-'+#count+'-'+#card+'-'+#platform+'-'+#versionCode") - public List<Special> listByVersion(long start, int count, String card, String platform, Integer versionCode) { + public List<SpecialVO> listByVersion(long start, int count, String card, String platform, Integer versionCode) { List<Special> specialList = specialMapper.listByPlaceKey(card, null, null, null); filterSpecial(specialList, platform, versionCode); - return specialList; + return transformVO(specialList); } /** @@ -591,7 +599,7 @@ // 鏁版嵁澶勭悊 // handlelist(listArc); - arcMap.put("list", JsonUtil.getApiCommonGson().toJson(listArc)); + arcMap.put("list", JsonUtil.getApiCommonGson().toJson(transformVO(listArc))); // 棣栭〉-娲诲姩鍖哄煙锛堝コ鐜嬭妭锛� JSONObject activityMap = new JSONObject(); @@ -617,7 +625,7 @@ handlelist(listActivity); - activityMap.put("list", JsonUtil.getApiCommonGson().toJson(listActivity)); + activityMap.put("list", JsonUtil.getApiCommonGson().toJson(transformVO(listActivity))); // 棣栭〉-鏂瑰舰涓撻锛堝搧鐗屽埜銆佹瘝濠�...锛� String indexBlock = "index_block"; @@ -650,7 +658,7 @@ // 鏁版嵁澶勭悊 handlelist(listBlock); - blockJsonMap.put("list", JsonUtil.getApiCommonGson().toJson(listBlock)); + blockJsonMap.put("list", JsonUtil.getApiCommonGson().toJson(transformVO(listBlock))); JSONObject root = new JSONObject(); root.put("arcArea", arcMap); @@ -677,10 +685,53 @@ @Override @Cacheable(value = "specialCache", key = "'listByPlaceKeyHasLabel'+#start+'-'+#platform+'-'+#versionCode+'-'+#list") - public List<Special> listByPlaceKeyHasLabel(long start, int count, List<String> list, Integer platform, + public List<SpecialVO> listByPlaceKeyHasLabel(long start, int count, List<String> list, Integer platform, Integer versionCode) { - return specialMapper.listByPlaceKeyHasLabel(start, count, list, null, platform, versionCode); + List<Special> listSpecial = specialMapper.listByPlaceKeyHasLabel(start, count, list, null, + platform, versionCode); + return transformVO(listSpecial); } + + + /** + * 杞崲VO + * @param list + * @return + */ + private List<SpecialVO> transformVO(List<Special> list) { + List<SpecialVO> listVo = new ArrayList<SpecialVO>(); + if (list != null && list.size() > 0) { + for (Special special: list) { + SpecialVO specialVO = new SpecialVO(); + try { + PropertyUtils.copyProperties(specialVO, special); + } catch (Exception e) { + e.printStackTrace(); + continue; + } + + // 璺宠浆娲诲姩杩囨浮椤� + CommonShareInfo info = commonShareInfoService.getByPidAndType(specialVO.getId(), + CommonShareInfoEnum.special.name()); + if (info != null && !StringUtil.isNullOrEmpty(info.getComment())) { + String link = configService.get(ConfigKeyEnum.activityDetailLink.getKey()) + "?type=%s&id=%s"; + link = String.format(link, CommonShareInfoEnum.special.name(),specialVO.getId()); + + JSONObject params = new JSONObject(); + params.put("url", link); + + specialVO.setComment(info.getComment()); + specialVO.setParams(params.toString()); + specialVO.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + } + listVo.add(specialVO); + } + } + return listVo; + } + + + /** * 澶勭悊 鏁版嵁 -- Gitblit v1.8.0