From d1bcc87e41d8d176ce58ee9e27a17ec93d0d7cb2 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 23 八月 2019 11:59:18 +0800 Subject: [PATCH] Merge branch 'mater-1.6.0' into div --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/IntegralControllerV2.java | 105 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 72 insertions(+), 33 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/IntegralControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/IntegralControllerV2.java index d5b294f..842c6da 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/IntegralControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/IntegralControllerV2.java @@ -33,9 +33,11 @@ import com.yeshi.fanli.entity.bus.user.UserRank; import com.yeshi.fanli.entity.integral.CodePublishRecord; import com.yeshi.fanli.entity.integral.IntegralExchange; +import com.yeshi.fanli.entity.integral.IntegralTask; import com.yeshi.fanli.entity.integral.IntegralTaskClass.UniqueKeyEnum; import com.yeshi.fanli.entity.integral.IntegralTaskRecord; import com.yeshi.fanli.exception.integral.IntegralExchangeException; +import com.yeshi.fanli.exception.integral.IntegralGetException; import com.yeshi.fanli.exception.integral.IntegralTaskRecordException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; @@ -43,8 +45,11 @@ import com.yeshi.fanli.service.inter.integral.IntegralDetailService; import com.yeshi.fanli.service.inter.integral.IntegralExchangeRecordService; import com.yeshi.fanli.service.inter.integral.IntegralExchangeService; +import com.yeshi.fanli.service.inter.integral.IntegralGetService; import com.yeshi.fanli.service.inter.integral.IntegralTaskClassService; +import com.yeshi.fanli.service.inter.integral.IntegralTaskRankService; import com.yeshi.fanli.service.inter.integral.IntegralTaskRecordService; +import com.yeshi.fanli.service.inter.integral.IntegralTaskService; import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.util.Constant; @@ -82,12 +87,21 @@ @Resource private IntegralExchangeRecordService integralExchangeRecordService; - + @Resource private IntegralDetailService integralDetailService; @Resource + private IntegralTaskRankService integralTaskRankService; + + @Resource private CodePublishRecordService codePublishRecordService; + + @Resource + private IntegralTaskService integralTaskService; + + @Resource + private IntegralGetService integralGetService; /** * 鑾峰彇浠诲姟鍒楄〃 @@ -97,6 +111,7 @@ * @param page * @param out */ +// @RequestSerializableByKey(key="#acceptData.device") @RequestMapping(value = "getTaskList", method = RequestMethod.POST) public void getTaskList(AcceptData acceptData, Long uid, Integer page, PrintWriter out) { if (uid == null || uid <= 0) { @@ -119,18 +134,18 @@ list = new ArrayList<IntegralTaskClassVO>(); } long count = integralTaskClassService.countTaskClass(); - + // 鐢ㄦ埛绛惧埌 Integer signState = 0; if (page == 1) { - + // 绛惧埌 - try { + try { signState = integralTaskClassService.finishedDailySign(uid); } catch (Exception e) { e.printStackTrace(); } - + UserInfoExtraVO extraVO = userInfoExtraService.getInfoExtraVOByUid(uid); if (extraVO == null) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鐩稿叧淇℃伅涓嶅瓨鍦�")); @@ -148,12 +163,12 @@ out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛绛夌骇涓嶅瓨鍦�")); return; } - + // 绛惧埌鏃ユ湡淇℃伅 DailySignVO dailySignVO = integralTaskClassService.getDailySignList(uid, userRank.getId()); boolean ejectSign = false; - if (signState == 1) + if (signState == 1) ejectSign = true; data.put("signState", ejectSign); @@ -163,12 +178,11 @@ data.put("dailySign", dailySignVO); } - for (IntegralTaskClassVO taskClassVO : list) { String progress = taskClassVO.getProgress(); if (StringUtil.isNullOrEmpty(progress)) continue; - + Integer taskNum = taskClassVO.getTaskNum(); if (taskNum == null) continue; @@ -182,10 +196,25 @@ } else if (signState == 2) { taskClassVO.setLightUp(false); } + + // 鏍规嵁澶╂暟鍙樺寲鏇存敼绛惧埌閲戦 + Integer num = integralTaskRecordService.getNowdaySignNum(uid, taskClassVO.getId()); + + String uniqueKeyTask = UniqueKeyEnum.dailySign.name() + num; + IntegralTask integralTask = integralTaskService.getByCidAndUniqueKey(taskClassVO.getId(), + uniqueKeyTask); + Integer goldCoin = 0; + if (integralTask != null) { + goldCoin = integralTask.getGoldCoin(); + Integer baseDoubleNum = integralTask.getDoubleNum(); + if (baseDoubleNum != null && baseDoubleNum > 0) + goldCoin = goldCoin * baseDoubleNum; + } + taskClassVO.setTotalCoin(goldCoin); } else { taskClassVO.setLightUp(true); } - + Integer dateType = 1; // 鏌ヨ褰撴棩 if (uniqueKey == UniqueKeyEnum.orderReward) dateType = null; // 鏌ヨ鍘嗗彶 @@ -199,14 +228,14 @@ countFinished = integralTaskRecordService.countFinished(uid, id, dateType); } progress = progress.replace("{宸插畬鎴恾", countFinished + "").replace("{鎬讳换鍔", taskNum + ""); - + if (signState == 0 && uniqueKey == UniqueKeyEnum.dailySign) { progress = "鏈鍒�"; taskClassVO.setBtnName("绛惧埌"); - } + } taskClassVO.setProgress(progress); } - + data.put("count", count); data.put("list", gson.toJson(list)); out.print(JsonUtil.loadTrueResult(data)); @@ -233,7 +262,7 @@ if ("android".equalsIgnoreCase(acceptData.getPlatform())) { count = Integer.MAX_VALUE; } - + List<IntegralTaskRecord> list = integralTaskRecordService.listNotReceived(count, uid); if (list == null) { list = new ArrayList<IntegralTaskRecord>(); @@ -252,17 +281,20 @@ * * @param acceptData * @param uid - * @param ids // 棰嗗彇id - * @param gids // 鏈鍙杋d + * @param ids + * // 棰嗗彇id + * @param gids + * // 鏈鍙杋d * @param out */ @RequestMapping(value = "receiveGoldCoin", method = RequestMethod.POST) - public void receiveGoldCoin(AcceptData acceptData, Long uid, Integer type, String ids, String gids, PrintWriter out) { + public void receiveGoldCoin(AcceptData acceptData, Long uid, Integer type, String ids, String gids, + PrintWriter out) { if (uid == null || uid <= 0) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; } - + try { // 鍏ㄩ儴棰嗗彇 if (type != null && type == 1) { @@ -271,8 +303,8 @@ data.put("goldCoin", goldCoin); out.print(JsonUtil.loadTrueResult(data)); return; - } - + } + // 閮ㄥ垎棰嗗彇 Gson gson = new Gson(); Set<Long> idList = gson.fromJson(ids, new TypeToken<HashSet<Long>>() { @@ -282,20 +314,21 @@ return; } Integer goldCoin = integralTaskRecordService.receiveGoldCoin(uid, idList); - Set<Long> gidList = gson.fromJson(gids, new TypeToken<HashSet<Long>>() {}.getType()); + Set<Long> gidList = gson.fromJson(gids, new TypeToken<HashSet<Long>>() { + }.getType()); List<IntegralTaskRecord> list = null; if (gidList != null && gidList.size() > 0) { list = integralTaskRecordService.listNotReceivedExcludeId(5 - gidList.size(), uid, gidList); } else { list = integralTaskRecordService.listNotReceivedExcludeId(5, uid, null); } - + if (list == null) { list = new ArrayList<IntegralTaskRecord>(); } GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); Gson gson2 = gsonBuilder.create(); - + JSONObject data = new JSONObject(); data.put("goldCoin", goldCoin); data.put("list", gson2.toJson(list)); @@ -336,7 +369,7 @@ if (list == null) list = new ArrayList<IntegralExchange>(); - //Long count = integralExchangeService.countValid(); + // Long count = integralExchangeService.countValid(); GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); Gson gson = gsonBuilder.create(); @@ -371,6 +404,7 @@ out.print(JsonUtil.loadFalseResult(1, e.getMsg())); } } + /** * 鍏戞崲閲戝竵 @@ -481,9 +515,18 @@ out.print(JsonUtil.loadFalseResult("鐢ㄦ埛灏氭湭鐧诲綍")); return; } - + if (StringUtil.isNullOrEmpty(event)) { out.print(JsonUtil.loadFalseResult("浜嬩欢涓虹┖")); + return; + } + IntegralTaskRecord record = null; + try { + record = integralGetService.addEventStatistic(uid, event, null); + } catch (IntegralGetException e) { + } + if (record == null) { + out.print(JsonUtil.loadFalseResult("娣诲姞澶辫触")); return; } @@ -492,21 +535,17 @@ || "scanTBCart".equalsIgnoreCase(event)) { JSONObject notify = new JSONObject(); switch (event) { - case "recommendSearch": notify.put("name", "瀹屾垚涓�娆℃櫤鑳芥悳绱�"); - notify.put("score", "+20閲戝竵"); break; case "scanGoods": notify.put("name", "瀹屾垚涓�娆″晢鍝佹祻瑙�"); - notify.put("score", "+100閲戝竵"); break; case "scanTBCart": notify.put("name", "瀹屾垚涓�娆¤喘鐗╄溅娴忚"); - notify.put("score", "+300閲戝竵"); break; } - + notify.put("score", String.format("+%s閲戝竵", record.getGoldCoin())); data.put("notify", notify); } out.print(JsonUtil.loadTrueResult(data)); @@ -578,7 +617,6 @@ return gson; } - /** * 鏄庣粏璇︽儏 * @@ -590,7 +628,8 @@ * 骞翠唤 * @param month * 鏈堜唤 - * @param type 缁熻绫诲瀷 0鍏ㄩ儴 1 + * @param type + * 缁熻绫诲瀷 0鍏ㄩ儴 1 * @param out */ @RequestMapping(value = "getDetails") @@ -605,7 +644,7 @@ out.print(JsonUtil.loadFalseResult(1, "鏃ユ湡涓嶅畬鏁�")); return; } - + Date date = null; if (year != null && month != null) { -- Gitblit v1.8.0