From 305e21ad6339174aae0bc917e9c3d5ec92ff299f Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 10 四月 2020 17:06:18 +0800
Subject: [PATCH] 用户等级增加导师
---
fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java | 141 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 140 insertions(+), 1 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java
index 3fe1618..b6ab664 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java
@@ -1,14 +1,24 @@
package com.yeshi.fanli.service.impl.activity;
+import java.io.InputStream;
+import java.util.Date;
import java.util.List;
+import java.util.UUID;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+import org.yeshi.utils.tencentcloud.COSManager;
+import com.yeshi.fanli.dao.mybatis.activity.ActivityRuleUserMapper;
import com.yeshi.fanli.dao.mybatis.activity.ActivityUserMapper;
+import com.yeshi.fanli.entity.bus.activity.ActivityRuleUser;
import com.yeshi.fanli.entity.bus.activity.ActivityUser;
+import com.yeshi.fanli.exception.dynamic.ActivityUserException;
import com.yeshi.fanli.service.inter.activity.ActivityUserService;
+import com.yeshi.fanli.util.FilePathEnum;
+import com.yeshi.fanli.util.StringUtil;
@Service
public class ActivityUserServiceImpl implements ActivityUserService {
@@ -16,15 +26,144 @@
@Resource
private ActivityUserMapper activityUserMapper;
+ @Resource
+ private ActivityRuleUserMapper activityRuleUserMapper;
@Override
public ActivityUser selectByPrimaryKey(Long id) {
return activityUserMapper.selectByPrimaryKey(id);
}
-
+
@Override
public List<ActivityUser> listRand(int count) {
return activityUserMapper.listRand(count);
}
+
+ @Override
+ public void addActivityRuleUser(ActivityRuleUser ruleUser) {
+ if (ruleUser == null || ruleUser.getActivityUser() == null)
+ return;
+ // 娣诲姞鐢ㄦ埛
+ ActivityUser user = activityUserMapper.selectByName(ruleUser.getActivityUser().getNickName());
+ if (user == null) {
+ user = ruleUser.getActivityUser();
+ user.setCreateTime(new Date());
+ activityUserMapper.insertSelective(user);
+ }
+ ActivityRuleUser oldRuleUser = activityRuleUserMapper.selectByUserIdAndRuleCode(user.getId(),
+ ruleUser.getRuleCode());
+ if (oldRuleUser == null) {
+ ruleUser.setActivityUser(user);
+ ruleUser.setCreateTime(new Date());
+ activityRuleUserMapper.insertSelective(ruleUser);
+ } else {
+ ActivityRuleUser update = new ActivityRuleUser();
+ update.setId(oldRuleUser.getId());
+ update.setOrderBy(ruleUser.getOrderBy());
+ activityRuleUserMapper.updateByPrimaryKeySelective(update);
+ }
+ }
+
+ @Override
+ public ActivityUser getActivityUserByNickName(ActivityUser record, MultipartFile file) throws ActivityUserException{
+ if (record == null || StringUtil.isNullOrEmpty(record.getNickName()))
+ throw new ActivityUserException(1, "鏄电О涓嶈兘涓虹┖");
+ try {
+ ActivityUser userExist = activityUserMapper.selectByName(record.getNickName().trim());
+ if (userExist != null) {
+ return userExist;
+ }
+
+ // 涓嶅瓨鍦ㄥ垯鏂板
+ if (file == null) {
+ throw new ActivityUserException(1, "澶村儚涓嶈兘涓虹┖");
+ }
+ String portrait = uploadPicture(file);
+ record.setPortrait(portrait);
+ record.setCreateTime(new Date());
+ activityUserMapper.insertSelective(record);
+
+ return record;
+ } catch (Exception e) {
+ e.printStackTrace();
+ throw new ActivityUserException(1, "鐢ㄦ埛淇℃伅淇濆瓨寮傚父");
+ }
+ }
+
+
+ /**
+ * 涓婁紶鍥剧墖
+ * @param file
+ * @return
+ * @throws Exception
+ */
+ public String uploadPicture(MultipartFile file) throws Exception {
+ // 鏂囦欢瑙f瀽
+ InputStream inputStream = file.getInputStream();
+ String contentType = file.getContentType();
+ String type = contentType.substring(contentType.indexOf("/") + 1);
+ // 鏂囦欢璺緞
+ String filePath= FilePathEnum.activityUser.getPath() +UUID.randomUUID().toString().replace("-", "") + "." + type;
+ // 鎵ц涓婁紶
+ String fileLink= COSManager.getInstance().uploadFile(inputStream, filePath).getUrl();
+
+ return fileLink;
+ }
+
+
+ @Override
+ public List<ActivityRuleUser> listByRuleCode(Integer ruleCode, int page, int pageSize) {
+ return activityRuleUserMapper.listByRuleCode(ruleCode, (page - 1) * pageSize, pageSize);
+ }
+
+ @Override
+ public ActivityUser selectByName(String nickName) {
+ return activityUserMapper.selectByName(nickName);
+ }
+
+
+ @Override
+ public long countByRuleCode(Integer ruleCode) {
+ return activityRuleUserMapper.countByRuleCode(ruleCode);
+ }
+
+
+ @Override
+ public void deleteByRuleUserId(Long id) {
+ ActivityRuleUser user = activityRuleUserMapper.selectByPrimaryKey(id);
+ if (user.getActivityUser() != null)
+ activityUserMapper.deleteByPrimaryKey(user.getActivityUser().getId());
+ activityRuleUserMapper.deleteByPrimaryKey(id);
+ }
+
+ @Override
+ public ActivityRuleUser selectRuleUserByPrimaryKey(Long id) {
+
+ return activityRuleUserMapper.selectByPrimaryKey(id);
+ }
+
+ @Override
+ public void updateActivityUser(ActivityUser au) {
+ activityUserMapper.updateByPrimaryKeySelective(au);
+ }
+
+ @Override
+ public void updateActivityRuleUser(ActivityRuleUser au) {
+ activityRuleUserMapper.updateByPrimaryKeySelective(au);
+ }
+
+ @Override
+ public ActivityUser getRandomByDaTaoKeCid(int cid) {
+ int ruleId = 100 + cid;
+ List<ActivityRuleUser> ruleList = activityRuleUserMapper.listByRuleCode(ruleId, 0, 100);
+ return ruleList.get((int) (ruleList.size() * Math.random())).getActivityUser();
+ }
+
+ @Override
+ public ActivityUser getRandomHaoHuo() {
+ List<ActivityRuleUser> ruleList = activityRuleUserMapper.listByRuleCode(ActivityRuleUser.RULE_HAOHUO, 0, 100);
+ return ruleList.get((int) (ruleList.size() * Math.random())).getActivityUser();
+ }
+
}
--
Gitblit v1.8.0