Commit 6631750f authored by jiaorz's avatar jiaorz

Merge branch 'master-new-activity' into dev

parents 336bdd96 0141048b
package com.xxfc.platform.activity.entity; package com.xxfc.platform.activity.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
/** /**
* 活动的参与者关系表 * 活动的参与者关系表
...@@ -61,6 +65,12 @@ public class ActivityPopularizeRelation implements Serializable { ...@@ -61,6 +65,12 @@ public class ActivityPopularizeRelation implements Serializable {
@Column(name = "popularize_id") @Column(name = "popularize_id")
@ApiModelProperty(value = "活动id") @ApiModelProperty(value = "活动id")
private Integer popularizeId; private Integer popularizeId;
@Column(name = "num")
@ApiModelProperty(value = "第几个用户")
private Integer num;
@Column(name = "amount")
@ApiModelProperty(value = "获得奖励金额")
private BigDecimal amount;
} }
package com.xxfc.platform.activity.entity; package com.xxfc.platform.activity.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
/** /**
* 用户与推广活动(邀请有礼)的关系表 * 用户与推广活动(邀请有礼)的关系表
...@@ -60,14 +64,14 @@ public class ActivityPopularizeUser implements Serializable { ...@@ -60,14 +64,14 @@ public class ActivityPopularizeUser implements Serializable {
*/ */
@Column(name = "end_progress") @Column(name = "end_progress")
@ApiModelProperty(value = "一共需要的进度") @ApiModelProperty(value = "一共需要的进度")
private Integer endProgress; private BigDecimal endProgress;
/** /**
* 当前进度 * 当前进度
*/ */
@Column(name = "current_progress") @Column(name = "current_progress")
@ApiModelProperty(value = "当前进度") @ApiModelProperty(value = "当前进度")
private Integer currentProgress; private BigDecimal currentProgress;
/** /**
* 推广活动id * 推广活动id
......
package com.xxfc.platform.activity.vo.popularize; package com.xxfc.platform.activity.vo.popularize;
import com.xxfc.platform.activity.entity.ActivityPopularize; import com.xxfc.platform.activity.entity.ActivityPopularize;
import com.xxfc.platform.activity.entity.ActivityPopularizeItem;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;
...@@ -10,4 +9,6 @@ import java.util.List; ...@@ -10,4 +9,6 @@ import java.util.List;
public class PopularizeVO extends ActivityPopularize { public class PopularizeVO extends ActivityPopularize {
List<ItemVO> items; List<ItemVO> items;
List<UserVO> userVOs; List<UserVO> userVOs;
boolean isComplete;
} }
...@@ -3,28 +3,26 @@ package com.xxfc.platform.activity.biz; ...@@ -3,28 +3,26 @@ package com.xxfc.platform.activity.biz;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.dto.RegisterQueueDTO; import com.github.wxiaoqi.security.admin.dto.RegisterQueueDTO;
import com.github.wxiaoqi.security.admin.entity.MyWalletDetail; import com.github.wxiaoqi.security.admin.entity.MyWalletDetail;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.config.rabbit.RabbitConstant; import com.github.wxiaoqi.security.common.config.rabbit.RabbitConstant;
import com.xxfc.platform.activity.dto.ApLogDTO; import com.xxfc.platform.activity.dto.ApLogDTO;
import com.xxfc.platform.activity.dto.AwardDTO; import com.xxfc.platform.activity.entity.*;
import com.xxfc.platform.activity.entity.ActivityPopularizeLog; import com.xxfc.platform.activity.mapper.ActivityPopularizeMapper;
import com.xxfc.platform.activity.entity.ActivityPopularizeRelation;
import com.xxfc.platform.activity.entity.ActivityPopularizeUser;
import com.xxfc.platform.universal.feign.MQSenderFeign; import com.xxfc.platform.universal.feign.MQSenderFeign;
import com.xxfc.platform.universal.feign.ThirdFeign;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.xxfc.platform.activity.entity.ActivityPopularize;
import com.xxfc.platform.activity.mapper.ActivityPopularizeMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE; import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE; import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
...@@ -52,6 +50,9 @@ public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,Acti ...@@ -52,6 +50,9 @@ public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,Acti
@Autowired @Autowired
ActivityPopularizeLogBiz popularizeLogBiz; ActivityPopularizeLogBiz popularizeLogBiz;
@Autowired
ActivityPopularizeItemBiz activityPopularizeItemBiz;
@Autowired @Autowired
UserFeign userFeign; UserFeign userFeign;
...@@ -70,75 +71,99 @@ public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,Acti ...@@ -70,75 +71,99 @@ public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,Acti
AppUserDTO appUserDTO = userFeign.userDetailById(registerQueueDTO.getAppUserId()).getData(); AppUserDTO appUserDTO = userFeign.userDetailById(registerQueueDTO.getAppUserId()).getData();
//获取活动code,并且注册来源是app 并且 非普通登录 //获取活动code,并且注册来源是app 并且 非普通登录
if(POPULARIZE_0101.equals(activityCode) if(!RegisterQueueDTO.SIGN_LOGIN.equals(registerQueueDTO.getSign())) {
&& !RegisterQueueDTO.SIGN_LOGIN.equals(registerQueueDTO.getSign())) {
//查询出活动 //查询出活动
ActivityPopularize activityPopularize = popularizeBiz.selectOne(new ActivityPopularize(){{ ActivityPopularize activityPopularize = popularizeBiz.selectOne(new ActivityPopularize(){{
setCode(activityCode); setCode(activityCode);
}}); }});
if (activityPopularize != null) {
List<ActivityPopularizeItem> activityPopularizeItems = activityPopularizeItemBiz.selectByPopularizeId(activityPopularize.getId());
ActivityPopularizeItem activityPopularizeItem = activityPopularizeItems.get(activityPopularizeItems.size() - 1);
Date now = DateUtil.date();
Date start = DateUtil.date(activityPopularize.getStartTime());
Date end = DateUtil.date(activityPopularize.getEndTime());
//判断是否活动超时
if(now.before(start) || now.after(end)) {
log.error("不在活动范围内 入参Json:"+ JSONUtil.toJsonStr(registerQueueDTO));
return;
}
Date now = DateUtil.date(); Integer majorUserId = Integer.valueOf(appUserDTO.getInviterAccount());
Date start = DateUtil.date(activityPopularize.getStartTime()); ActivityPopularizeRelation activityPopularizeRelation = new ActivityPopularizeRelation(){{
Date end = DateUtil.date(activityPopularize.getEndTime()); setMajorUserId(majorUserId);
setPopularizeId(activityPopularize.getId());
//判断是否活动超时 }};
if(now.before(start) || now.after(end)) {
log.error("不在活动范围内 入参Json:"+ JSONUtil.toJsonStr(registerQueueDTO)); //新增第几个邀请人和邀请金额字段
return; Integer num = relationBiz.getByUserIdAndPopularizeId(activityPopularizeRelation);
}
BigDecimal amount = new BigDecimal(0);
Integer majorUserId = Integer.valueOf(appUserDTO.getInviterAccount()); JSONObject jsonObject = JSONObject.parseObject(activityPopularizeItem.getDetail());
if (jsonObject != null && StringUtils.isNotBlank(jsonObject.getString("detail"))) {
JSONArray jsonArray = JSONArray.parseArray(jsonObject.getString("detail"));
if (jsonArray != null) {
JSONObject jsonObject1 = jsonArray.getJSONObject(num - 1);
if (jsonObject1 != null) {
String amountString = jsonObject1.getString("amount");
amount.add(new BigDecimal(amountString));
}
}
}
//添加活动关系
relationBiz.insertSelective(new ActivityPopularizeRelation(){{
setPopularizeId(activityPopularize.getId());
setMajorUserId(majorUserId);
setMinorUserId(appUserDTO.getUserid());
setNum(num);
setAmount(amount);
}});
//添加活动关系 ApLogDTO apLogDTO = popularizeLogBiz.selectOneApLogDTO(new ActivityPopularizeLog(){{
relationBiz.insertSelective(new ActivityPopularizeRelation(){{ setUserId(majorUserId);
setPopularizeId(activityPopularize.getId()); setItemId(activityPopularizeItem.getId());
setMajorUserId(majorUserId); }});
setMinorUserId(appUserDTO.getUserid());
}});
ApLogDTO apLogDTO = popularizeLogBiz.selectOneApLogDTO(new ActivityPopularizeLog(){{ //生成任务项
setUserId(majorUserId); if(null == apLogDTO){
setItemId(INVITE_ITEMID); popularizeLogBiz.insertSelectiveRe(new ActivityPopularizeLog(){{
}}); setItemId(activityPopularizeItem.getId());
setUserId(majorUserId);
setStatus(SYS_FALSE);
setPopularizeId(activityPopularize.getId());
}});
}
//生成任务项 //查出majorUser参与活动信息
if(null == apLogDTO){ ActivityPopularizeUser activityPopularizeUser = popularizeUserBiz.selectOne(new ActivityPopularizeUser(){{
popularizeLogBiz.insertSelectiveRe(new ActivityPopularizeLog(){{
setItemId(INVITE_ITEMID);
setUserId(majorUserId); setUserId(majorUserId);
setStatus(SYS_FALSE);
setPopularizeId(activityPopularize.getId()); setPopularizeId(activityPopularize.getId());
}}); }});
} //修改当前进度
activityPopularizeUser.setCurrentProgress(activityPopularizeUser.getCurrentProgress().add(amount));
//查出majorUser参与活动信息 //任务没有完成
ActivityPopularizeUser activityPopularizeUser = popularizeUserBiz.selectOne(new ActivityPopularizeUser(){{ if(!SYS_TRUE.equals(activityPopularizeUser.getStatus())) {
setUserId(majorUserId);
setPopularizeId(activityPopularize.getId());
}});
//任务没有完成
if(!SYS_TRUE.equals(activityPopularizeUser.getStatus())) {
// AwardDTO awardDTO = JSONUtil.toBean(activityPopularize.getValue(), AwardDTO.class); // AwardDTO awardDTO = JSONUtil.toBean(activityPopularize.getValue(), AwardDTO.class);
//检查是否满足奖励 //检查是否满足奖励
if(relationBiz.selectList(new ActivityPopularizeRelation(){{ if(relationBiz.selectList(new ActivityPopularizeRelation(){{
setMajorUserId(majorUserId); setMajorUserId(majorUserId);
setPopularizeId(activityPopularize.getId()); setPopularizeId(activityPopularize.getId());
}}).size() >= 2) { }}).size() >= 2) {
apLogDTO.setStatus(SYS_TRUE); apLogDTO.setStatus(SYS_TRUE);
popularizeLogBiz.updateSelectiveById(BeanUtil.toBean(apLogDTO, ActivityPopularizeLog.class)); popularizeLogBiz.updateSelectiveById(BeanUtil.toBean(apLogDTO, ActivityPopularizeLog.class));
activityPopularizeUser.setStatus(SYS_TRUE); activityPopularizeUser.setStatus(SYS_TRUE);
activityPopularizeUser.setCurrentProgress(apLogDTO.getItem().getProgress()); activityPopularizeUser.setCurrentProgress(new BigDecimal(apLogDTO.getItem().getProgress()));
popularizeUserBiz.updateSelectiveById(activityPopularizeUser); popularizeUserBiz.updateSelectiveById(activityPopularizeUser);
mqSenderFeign.sendMessage(RabbitConstant.ADMIN_TOPIC, RabbitConstant.KEY_WALLET_ADD, JSONUtil.toJsonStr(new MyWalletDetail(){{ mqSenderFeign.sendMessage(RabbitConstant.ADMIN_TOPIC, RabbitConstant.KEY_WALLET_ADD, JSONUtil.toJsonStr(new MyWalletDetail(){{
setAmount(new BigDecimal("50")); setAmount(new BigDecimal("50"));
setSource(SOURCE_ACTIVITY); setSource(SOURCE_ACTIVITY);
setUserId(majorUserId); setUserId(majorUserId);
setActivityId(activityPopularize.getId()); setActivityId(activityPopularize.getId());
setActivityName(activityPopularize.getName()); setActivityName(activityPopularize.getName());
setType(TYPE_POPULARIZE); setType(TYPE_POPULARIZE);
setItype(ITYPE_IN); setItype(ITYPE_IN);
}})); }}));
}
} }
} }
} }
......
package com.xxfc.platform.activity.biz; package com.xxfc.platform.activity.biz;
import org.springframework.stereotype.Service; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.activity.entity.ActivityPopularizeItem; import com.xxfc.platform.activity.entity.ActivityPopularizeItem;
import com.xxfc.platform.activity.mapper.ActivityPopularizeItemMapper; import com.xxfc.platform.activity.mapper.ActivityPopularizeItemMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
/** /**
* 推广活动项,一个活动对应多个项 * 推广活动项,一个活动对应多个项
...@@ -15,4 +17,12 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz; ...@@ -15,4 +17,12 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
*/ */
@Service @Service
public class ActivityPopularizeItemBiz extends BaseBiz<ActivityPopularizeItemMapper,ActivityPopularizeItem> { public class ActivityPopularizeItemBiz extends BaseBiz<ActivityPopularizeItemMapper,ActivityPopularizeItem> {
public List<ActivityPopularizeItem> selectByPopularizeId(Integer popularizeId) {
Example example = new Example(ActivityPopularizeItem.class);
example.createCriteria().andEqualTo("popularizeId", popularizeId);
example.orderBy("sort").asc();
return mapper.selectByExample(example);
}
} }
\ No newline at end of file
...@@ -3,7 +3,6 @@ package com.xxfc.platform.activity.biz; ...@@ -3,7 +3,6 @@ package com.xxfc.platform.activity.biz;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
...@@ -15,6 +14,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -15,6 +14,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest; ...@@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest;
*/ */
@Service @Service
@Slf4j @Slf4j
public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMapper,ActivityPopularizeLog> implements UserRestInterface { public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMapper,ActivityPopularizeLog>{
@Autowired @Autowired
ActivityPopularizeItemBiz activityPopularizeItemBiz; ActivityPopularizeItemBiz activityPopularizeItemBiz;
...@@ -35,11 +35,6 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe ...@@ -35,11 +35,6 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe
@Autowired @Autowired
UserFeign userFeign; UserFeign userFeign;
@Override
public UserFeign getUserFeign() {
return userFeign;
}
@Autowired @Autowired
HttpServletRequest request; HttpServletRequest request;
...@@ -54,6 +49,11 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe ...@@ -54,6 +49,11 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe
} }
} }
public ActivityPopularizeLog selectByUserIdAndPopularIdAndItemId(ActivityPopularizeLog entity) {
Example example = new Example(ActivityPopularizeLog.class);
example.createCriteria().andEqualTo("userId", entity.getUserId()).andEqualTo("itemId", entity.getItemId()).andEqualTo("popularizeId", entity.getPopularizeId());
return mapper.selectOneByExample(example);
}
public PageDataVO<ActivityPopularizeLog> selectByUserId(QueryLogDto queryLogDto) { public PageDataVO<ActivityPopularizeLog> selectByUserId(QueryLogDto queryLogDto) {
String token = request.getHeader("Authorization"); String token = request.getHeader("Authorization");
AppUserDTO appUserDTO = null; AppUserDTO appUserDTO = null;
...@@ -70,6 +70,12 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe ...@@ -70,6 +70,12 @@ public class ActivityPopularizeLogBiz extends BaseBiz<ActivityPopularizeLogMappe
queryLogDto.setLimit(limit); queryLogDto.setLimit(limit);
Query query = new Query(queryLogDto); Query query = new Query(queryLogDto);
PageDataVO<ActivityPopularizeLog> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.selectByUserId(query.getSuper())); PageDataVO<ActivityPopularizeLog> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.selectByUserId(query.getSuper()));
if (pageDataVO.getData() != null) {
pageDataVO.getData().parallelStream().forEach(result -> {
ApLogDTO apLogDTO = BeanUtil.toBean(result, ApLogDTO.class);
apLogDTO.setItem(activityPopularizeItemBiz.selectById(apLogDTO.getItemId()));
});
}
return pageDataVO; return pageDataVO;
} }
......
package com.xxfc.platform.activity.biz; package com.xxfc.platform.activity.biz;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.activity.dto.ActivityPopularizeRelationDTO; import com.xxfc.platform.activity.dto.ActivityPopularizeRelationDTO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
import com.xxfc.platform.activity.entity.ActivityPopularizeRelation; import com.xxfc.platform.activity.entity.ActivityPopularizeRelation;
import com.xxfc.platform.activity.mapper.ActivityPopularizeRelationMapper; import com.xxfc.platform.activity.mapper.ActivityPopularizeRelationMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -29,4 +28,9 @@ public class ActivityPopularizeRelationBiz extends BaseBiz<ActivityPopularizeRel ...@@ -29,4 +28,9 @@ public class ActivityPopularizeRelationBiz extends BaseBiz<ActivityPopularizeRel
} }
return activityPopularizeRelationDTOS; return activityPopularizeRelationDTOS;
} }
public Integer getByUserIdAndPopularizeId(ActivityPopularizeRelation activityPopularizeRelation) {
Integer num = mapper.getByUserIdAndPopularizeId(activityPopularizeRelation);
return num == null ? 1 : num;
}
} }
\ No newline at end of file
...@@ -17,4 +17,6 @@ import java.util.List; ...@@ -17,4 +17,6 @@ import java.util.List;
public interface ActivityPopularizeRelationMapper extends Mapper<ActivityPopularizeRelation> { public interface ActivityPopularizeRelationMapper extends Mapper<ActivityPopularizeRelation> {
List<ActivityPopularizeRelationDTO> findActivityPopularizeRelationsByActivityIdAndTime(@Param("activityId") Integer activityId, @Param("startTime") Long startTime, @Param("endTime") Long endTime); List<ActivityPopularizeRelationDTO> findActivityPopularizeRelationsByActivityIdAndTime(@Param("activityId") Integer activityId, @Param("startTime") Long startTime, @Param("endTime") Long endTime);
Integer getByUserIdAndPopularizeId(ActivityPopularizeRelation activityPopularizeRelation);
} }
...@@ -28,13 +28,14 @@ import org.springframework.web.bind.annotation.*; ...@@ -28,13 +28,14 @@ import org.springframework.web.bind.annotation.*;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import tk.mybatis.mapper.weekend.WeekendSqls; import tk.mybatis.mapper.weekend.WeekendSqls;
import java.util.ArrayList; import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.*; import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
@RestController @RestController
@RequestMapping("activityPopularize") @RequestMapping("activityPopularize")
...@@ -111,12 +112,21 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular ...@@ -111,12 +112,21 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular
.stream().map(item -> { .stream().map(item -> {
ItemVO itemVO = BeanUtil.toBean(item, ItemVO.class); ItemVO itemVO = BeanUtil.toBean(item, ItemVO.class);
itemVO.setStatus(SYS_FALSE); itemVO.setStatus(SYS_FALSE);
if(null != apu[0]) { if(null != apu[0]) {
ActivityPopularizeLog log = aplMap[0].get(item.getId()); ActivityPopularizeLog log = aplMap[0].get(item.getId());
if(null != log && SYS_TRUE.equals(log.getStatus())) { if(null != log && SYS_TRUE.equals(log.getStatus())) {
itemVO.setStatus(SYS_TRUE); itemVO.setStatus(SYS_TRUE);
} }
} }
ActivityPopularizeLog activityPopularizeLog = popularizeLogBiz.selectByUserIdAndPopularIdAndItemId(new ActivityPopularizeLog(){{
setUserId(appUserDTO.getUserid());
setPopularizeId(v.getId());
setItemId(item.getId());
}});
if (activityPopularizeLog != null) {
itemVO.setStatus(activityPopularizeLog.getStatus());
}
return itemVO; return itemVO;
}).collect(Collectors.toList())); }).collect(Collectors.toList()));
return vo; return vo;
...@@ -149,7 +159,7 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular ...@@ -149,7 +159,7 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular
activityPopularizeUser = popularizeUserBiz.insertSelectiveReT(new ActivityPopularizeUser(){{ activityPopularizeUser = popularizeUserBiz.insertSelectiveReT(new ActivityPopularizeUser(){{
setPopularizeId(itemAddDTO.getPopularizeId()); setPopularizeId(itemAddDTO.getPopularizeId());
setUserId(getAppUser().getUserid()); setUserId(getAppUser().getUserid());
setEndProgress(ap.getProgress()); setEndProgress(new BigDecimal(ap.getProgress()));
}}); }});
} }
...@@ -176,7 +186,7 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular ...@@ -176,7 +186,7 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular
ActivityPopularizeItem item1 = popularizeItemBiz.selectById(al.getItemId()); ActivityPopularizeItem item1 = popularizeItemBiz.selectById(al.getItemId());
progress += item1.getProgress(); progress += item1.getProgress();
} }
activityPopularizeUser.setCurrentProgress(progress); activityPopularizeUser.setCurrentProgress(new BigDecimal(progress));
popularizeUserBiz.updateSelectiveById(activityPopularizeUser); popularizeUserBiz.updateSelectiveById(activityPopularizeUser);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
......
...@@ -25,4 +25,8 @@ ...@@ -25,4 +25,8 @@
and <![CDATA[ `crt_time` <= #{endTime}]]> and <![CDATA[ `crt_time` <= #{endTime}]]>
</if> </if>
</select> </select>
<select id="getByUserIdAndPopularizeId" parameterType="com.xxfc.platform.activity.entity.ActivityPopularizeRelation" resultType="Integer">
select num from activity_popularize_relation where major_user_id = #{majorUserId} and popularize_id = #{popularizeId} ORDER BY crt_time DESC LIMIT 1
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment