From d8d576c5220e9d24251b51a59a58271c6e0cb4a4 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 17 十二月 2020 10:22:34 +0800 Subject: [PATCH] resource修改 --- service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java | 85 ++++++++++++++++++++++++++++++++++++------ 1 files changed, 72 insertions(+), 13 deletions(-) diff --git a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java index 5210310..5e93b52 100644 --- a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java +++ b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java @@ -1,16 +1,22 @@ package com.ks.lucky.service.impl.remote; +import com.ks.lib.common.exception.ParamsException; +import com.ks.lucky.exception.LuckyActivityException; import com.ks.lucky.exception.LuckyActivityJoinAssistException; import com.ks.lucky.mapper.LuckyActivityJoinAssistMapper; import com.ks.lucky.mapper.LuckyActivityJoinRecordMapper; -import com.ks.lucky.pojo.DO.LuckyActivityJoinAssist; -import com.ks.lucky.pojo.DO.LuckyActivityJoinRecord; +import com.ks.lucky.mapper.LuckyActivityMapper; +import com.ks.lucky.pojo.DO.*; +import com.ks.lucky.pojo.DTO.ActivityAssistFriend; +import com.ks.lucky.pojo.DTO.ActivityFriendAssistInfo; import com.ks.lucky.query.ActivityJoinAssistQuery; import com.ks.lucky.remote.service.LuckyActivityJoinAssistService; -import com.ks.lucky.service.impl.AppManager; import com.ks.lucky.service.impl.LuckyActivityJoinManager; +import com.ks.lucky.service.impl.LuckyActivityUserWeightRecordManager; +import com.ks.lucky.util.factory.LuckyActivityUserWeightRecordFactory; import org.apache.dubbo.config.annotation.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.util.Date; @@ -23,7 +29,7 @@ private LuckyActivityJoinAssistMapper luckyActivityJoinAssistMapper; @Resource - private AppManager appManager; + private LuckyActivityUserWeightRecordManager luckyActivityUserWeightRecordManager; @Resource private LuckyActivityJoinRecordMapper luckyActivityJoinRecordMapper; @@ -31,22 +37,41 @@ @Resource private LuckyActivityJoinManager luckyActivityJoinManager; + @Resource + private LuckyActivityMapper luckyActivityMapper; + @Transactional(rollbackFor = Exception.class) + @Validated @Override - public void assist(Long activityId, String appKey, String uid, String targetUid) throws LuckyActivityJoinAssistException { - Long appId = appManager.getAppId(appKey); + public void assist(Long activityId, Long appId, String uid, String targetUid, ActivityJoinAssistEvent eventKey, int weight) throws LuckyActivityException, LuckyActivityJoinAssistException { + + if (uid.equalsIgnoreCase(targetUid)) { + throw new LuckyActivityJoinAssistException(1, "涓嶈兘涓鸿嚜宸卞姪鍔�"); + } + + LuckyActivity activity = luckyActivityMapper.selectByPrimaryKey(activityId); + if (activity == null) { + throw new LuckyActivityException(LuckyActivityException.CODE_NOT_EXIST, "娲诲姩涓嶅瓨鍦�"); + } + + if (activity.getState() != LuckyActivity.STATE_STARTED) { + throw new LuckyActivityException(1, "褰撳墠娲诲姩涓嶅彲鍔╁姏"); + } - LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid); + LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, targetUid); if (record == null) { throw new LuckyActivityJoinAssistException(1, "鍔╁姏瀵硅薄灏氭湭鍙傚姞娲诲姩"); } + record = luckyActivityJoinRecordMapper.selectByPrimaryKeyForUpdate(record.getId()); + ActivityJoinAssistQuery query = new ActivityJoinAssistQuery(); query.joinId = record.getId(); query.appId = appId; query.uid = uid; + query.eventKey = eventKey; query.start = 0; query.count = 1; List<LuckyActivityJoinAssist> list = luckyActivityJoinAssistMapper.list(query); @@ -60,15 +85,22 @@ assist.setCreateTime(new Date()); assist.setJoinId(record.getId()); assist.setUid(uid); - assist.setWeight(1); + assist.setWeight(weight); + assist.setEventKey(eventKey); + luckyActivityJoinRecordMapper.addWeight(record.getId(), assist.getWeight()); luckyActivityJoinAssistMapper.insertSelective(assist); - luckyActivityJoinRecordMapper.addWeight(record.getId(), assist.getWeight()); + + LuckyActivityUserWeightRecord weightRecord = LuckyActivityUserWeightRecordFactory.createAssist(activityId, appId, uid, eventKey, weight); + try { + luckyActivityUserWeightRecordManager.addRecord(weightRecord); + } catch (ParamsException e) { + throw new LuckyActivityJoinAssistException(1, "娣诲姞璁板綍鍑洪敊"); + } } @Override - public List<LuckyActivityJoinAssist> getAssistRecordList(Long activityId, String appKey, String uid, int page, int pageSize) { - Long appId = appManager.getAppId(appKey); + public List<LuckyActivityJoinAssist> getAssistRecordList(Long activityId, Long appId, String uid, int page, int pageSize) { LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid); if (record == null) { return null; @@ -85,8 +117,7 @@ } @Override - public long countAssistRecord(Long activityId, String appKey, String uid) { - Long appId = appManager.getAppId(appKey); + public long countAssistRecord(Long activityId, Long appId, String uid) { LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid); if (record == null) { return 0L; @@ -99,4 +130,32 @@ return luckyActivityJoinAssistMapper.count(query); } + + @Override + public List<ActivityAssistFriend> getAssistFriendsList(Long appId, String targetUid, int page, int pageSize) { + return luckyActivityJoinAssistMapper.listAssistFriends(appId, targetUid, (page - 1) * pageSize, pageSize); + } + + @Override + public long countAssistFriends(Long appId, String targetUid) { + return luckyActivityJoinAssistMapper.countAssistFriends(appId, targetUid); + } + + @Override + public List<ActivityFriendAssistInfo> getActivityFriendAssistInfoList(Long activityId, Long appId, String uid, int page, int pageSize) { + LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid); + if (record == null) { + return null; + } + return luckyActivityJoinAssistMapper.listActivityFriendAssistInfo(record.getId(), (page - 1) * pageSize, pageSize); + } + + @Override + public long countyActivityFriendAssistInfo(Long activityId, Long appId, String uid) { + LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid); + if (record == null) { + return 0L; + } + return luckyActivityJoinAssistMapper.countActivityFriendAssistInfo(record.getId()); + } } -- Gitblit v1.8.0