From 744594ef1a2f530fc3e86ea9dc48b62247f79420 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 19 五月 2020 17:13:23 +0800 Subject: [PATCH] 饿了么绘图,添加口碑 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/PreviewInfoServiceImpl.java | 78 +++++++++++++++++++++++++++++++++------ 1 files changed, 66 insertions(+), 12 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/PreviewInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/PreviewInfoServiceImpl.java index d53e733..3d914b5 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/PreviewInfoServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/PreviewInfoServiceImpl.java @@ -45,11 +45,11 @@ private ThreeSaleDetailService threeSaleDetailService; + @Override public void save(Long createUid, Long preUid, PreviewEnum type, String content) { String id = StringUtil.Md5(createUid + "#" + type.name()); - PreviewInfo info = new PreviewInfo(); info.setId(id); info.setUid(preUid); @@ -59,11 +59,30 @@ info.setUpdateTime(new Date()); previewInfoDao.save(info); - // 缂撳瓨10鍒嗛挓 - String key = StringUtil.Md5("preview" + preUid + "#" + type.name()); - redisManager.cacheCommonString(key, info.getContent(), 60 * 10); + if (type == PreviewEnum.extractRecord) { + return; + } + + if (StringUtil.isNullOrEmpty(content)) { + removePreview(preUid, type); + } else { + adddPreview(preUid, type, content); + } + } + // 缂撳瓨10鍒嗛挓 + private void adddPreview(Long uid, PreviewEnum type, String content) { + String key = StringUtil.Md5("preview" + uid + "#" + type.name()); + redisManager.cacheCommonString(key, content, 60 * 10); + } + + // 缂撳瓨10鍒嗛挓 + private void removePreview(Long uid, PreviewEnum type) { + String key = StringUtil.Md5("preview" + uid + "#" + type.name()); + redisManager.removeCommonString(key); + } + @Override public String getRedisContent(Long uid, PreviewEnum previewEnum) { @@ -91,25 +110,29 @@ BindingAccount alipay = bindingAccountService.getBindingAccountByUidAndType(uid, BindingAccount.TYPE_ALIPAY); if (alipay == null) throw new PreviewInfoException(1, "鏈粦瀹氭彁鐜拌处鍙�"); + if (money == null || money.compareTo(BigDecimal.ZERO) <= 0) + throw new PreviewInfoException(1, "璇疯緭鍏ユ纭殑閲戦"); if (StringUtil.isNullOrEmpty(time)) throw new PreviewInfoException(1, "鎻愮幇鏃堕棿涓嶈兘涓虹┖"); - if (money.compareTo(BigDecimal.ZERO) <= 0) - throw new PreviewInfoException(1, "鎻愮幇閲戦涓嶈兘灏忎簬0"); + + Date parse = TimeUtil.parseDotCommon2(time); + if (parse == null) + throw new PreviewInfoException(1, "璇疯緭鍏ユ纭殑鏃堕棿鏍煎紡锛屽锛�2020.01.01 01:01"); + Gson gson = new Gson(); - List<Extract> list = null; + List<Extract> list = new ArrayList<Extract>(); Extract extract = new Extract(); extract.setName(alipay.getName()); extract.setAccount(alipay.getAccount()); extract.setMoney(money); - extract.setReceiveTime(TimeUtil.parseDotCommon(time)); + extract.setReceiveTime(TimeUtil.parseDotCommon2(time)); extract.setId(java.lang.System.currentTimeMillis()); String id = StringUtil.Md5(uid + "#" + PreviewEnum.extractRecord.name()); PreviewInfo previewInfo = previewInfoDao.get(id); if (previewInfo == null) { - list = new ArrayList<Extract>(); list.add(extract); } else { String content = previewInfo.getContent(); @@ -127,13 +150,35 @@ Comparator<Extract> cm = new Comparator<Extract>() { @Override public int compare(Extract o1, Extract o2) { - return (int) (o2.getReceiveTime().getTime() - o1.getReceiveTime().getTime()); + if (o2.getReceiveTime().getTime() > o1.getReceiveTime().getTime()) { + return 1; + } else { + return -1; + } } }; Collections.sort(list, cm); } } save(uid, uid, PreviewEnum.extractRecord, gson.toJson(list)); + } + + + + @Override + public void previewExtractRecord(Long uid) throws PreviewInfoException{ + String id = StringUtil.Md5(uid + "#" + PreviewEnum.extractRecord.name()); + PreviewInfo previewInfo = previewInfoDao.get(id); + if (previewInfo == null) { + throw new PreviewInfoException(1, "璇锋坊鍔犳彁鐜拌褰曚俊鎭�"); + } + + String content = previewInfo.getContent(); + if (StringUtil.isNullOrEmpty(content)) { + throw new PreviewInfoException(1, "璇锋坊鍔犳彁鐜拌褰曚俊鎭�"); + } + + adddPreview(uid, PreviewEnum.extractRecord, content); } @@ -163,7 +208,11 @@ break; } } + save(uid, uid, PreviewEnum.extractRecord, gson.toJson(list)); + + // 鍙栨秷棰勮 + removePreview(uid, PreviewEnum.extractRecord); } @@ -199,9 +248,14 @@ if (money == null ) throw new PreviewInfoException(1, "璇疯緭鍏ラ噾棰�"); if(StringUtil.isNullOrEmpty(time)) - throw new PreviewInfoException(1, "璇疯緭鍏ュ垱寤烘椂闂�"); - if(StringUtil.isNullOrEmpty(time)) throw new PreviewInfoException(1, "璇疯緭鍏ヨ鍗曞彿"); + if(StringUtil.isNullOrEmpty(time)) + throw new PreviewInfoException(1, "璇疯緭鍏ュ垱寤烘椂闂�"); + Date parse = TimeUtil.parseDotCommon2(time); + if (parse == null) + throw new PreviewInfoException(1, "璇疯緭鍏ユ纭殑鏃堕棿鏍煎紡锛屽锛�2020.01.01 01:01"); + + String content = ""; // TODO // save(uid, PreviewEnum.moneyArrival, gson.toJson(infoVO)); return content; -- Gitblit v1.8.0