xhxu 5 лет назад
Родитель
Сommit
62684750af
7 измененных файлов: 62 добавлений и 9 удалений
  1. +8
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxActivityController.java
  2. +4
    -3
      mallinkCApi/src/main/java/com/iformall/controller/WxCUserBasicSignController.java
  3. +1
    -0
      mallinkService/src/main/java/com/iformall/common/ErrorCode.java
  4. +2
    -1
      mallinkService/src/main/java/com/iformall/enums/EnumActivityStatus.java
  5. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxActivityService.java
  6. +19
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java
  7. +27
    -5
      mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicSignServiceImpl.java

+ 8
- 0
mallinkAdmin/src/main/java/com/iformall/controller/market/WxActivityController.java Просмотреть файл

@@ -105,4 +105,12 @@ public class WxActivityController extends BaseController {
return wxActivityService.sendToCampaign(id);
}

@ApiOperation("从宣传页下线")
@PostMapping("offLineCampaign")
@SystemControllerLog(description = "活动-更新状态")
public ResultData offLineCampaign(@RequestBody WxActivity wxActivity) {
logger.debug("[" + getIpAddr() + "] WxActivityController::updateStatus");
return wxActivityService.offLineCampaign(wxActivity);
}

}

+ 4
- 3
mallinkCApi/src/main/java/com/iformall/controller/WxCUserBasicSignController.java Просмотреть файл

@@ -130,24 +130,25 @@ public class WxCUserBasicSignController extends BaseController {
wxCUserBasicSign.setUserId(memberId);
Map<String, Integer> map = wxCUserBasicSignService.getLastSignIn(wxCUserBasicSign);
int continueMonthSign = map.get("continueMonthSign");//本月连续签到天数
int continueSign = map.get("continueSign");//连续签到天数
int signInSevenDay = map.get("signInSevenDay");//7日连续奖励
int signInFTDay = map.get("signInFTDay");//14日连续奖励
int signInTEDay = map.get("signInTEDay");//28日连续奖励

if(wxCreditHistory.getCreditType().equals(EnumScoreType.SIGN_IN_SEVENDAY.getCode())){
if(continueMonthSign >= 7 && signInSevenDay == 0){
if(continueSign >= 7 && signInSevenDay == 0){
wxCUserBasicSignService.signInCreditHistory(wxCUserBasicSign,EnumScoreType.SIGN_IN_SEVENDAY);
return new ResultData();
}
return new ResultData(ErrorCode.MEM_MONTH_IS_USED);
}else if(wxCreditHistory.getCreditType().equals(EnumScoreType.SIGN_IN_FTDAY.getCode())){
if(continueMonthSign >= 14 && signInFTDay == 0){
if(continueSign >= 14 && signInFTDay == 0){
wxCUserBasicSignService.signInCreditHistory(wxCUserBasicSign,EnumScoreType.SIGN_IN_FTDAY);
return new ResultData();
}
return new ResultData(ErrorCode.MEM_MONTH_IS_USED);
}else if(wxCreditHistory.getCreditType().equals(EnumScoreType.SIGN_IN_TEDAY.getCode())){
if(continueMonthSign >= 28 && signInTEDay == 0){
if(continueSign >= 28 && signInTEDay == 0){
wxCUserBasicSignService.signInCreditHistory(wxCUserBasicSign,EnumScoreType.SIGN_IN_TEDAY);
return new ResultData();
}


+ 1
- 0
mallinkService/src/main/java/com/iformall/common/ErrorCode.java Просмотреть файл

@@ -540,6 +540,7 @@ public enum ErrorCode{
ACTIVITY_TIME_ERROR(30005, "活动报名结束时间不能大于活动结束时间"),
ACTIVITY_WAIT_CONFIRMED(30006, "您报名的活动还在审核中"),
ACTIVITY_EXPIRED(30007, "您报名的活动已过期"),
ACTIVITY_SEND_ERROR_NOONLINE(30008, "活动投放到宣传页失败,活动未上线!"),

/**
* 文件上传


+ 2
- 1
mallinkService/src/main/java/com/iformall/enums/EnumActivityStatus.java Просмотреть файл

@@ -8,7 +8,8 @@ public enum EnumActivityStatus {

STATUS_THROW_IN(0, "已保存"),
STATUS_TAKE_OFFF(1, "已下线"),
INJECT_CAMPAIGN(2, "已投放"),;
INJECT_CAMPAIGN(2, "已投放"),
INJECT_ONLINE(3, "已上线"),;

public static EnumActivityStatus getEnum(Integer code) {
for (EnumActivityStatus value : values()) {


+ 1
- 0
mallinkService/src/main/java/com/iformall/service/WxActivityService.java Просмотреть файл

@@ -46,4 +46,5 @@ public interface WxActivityService {

Integer queryStatus(Long id, Long userId);

ResultData offLineCampaign(WxActivity wxActivity);
}

+ 19
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java Просмотреть файл

@@ -172,6 +172,9 @@ public class WxActivityServiceImpl implements WxActivityService {
if (wxActivity.getEndTime().before(new Date())) {
return new ResultData(ErrorCode.ACTIVITY_JOIN_TIME_END);
}
if(wxActivity.getStatus().equals(EnumActivityStatus.INJECT_ONLINE.getCode())){
return new ResultData(ErrorCode.ACTIVITY_SEND_ERROR_NOONLINE);
}
wxActivity.setStatus(EnumActivityStatus.INJECT_CAMPAIGN.getCode());
wxActivity.setUpdateTime(new Date());
wxActivityMapper.updateById(wxActivity);
@@ -233,5 +236,21 @@ public class WxActivityServiceImpl implements WxActivityService {
return EnumActivityEnrollStatus.NORMAL.getCode();
}

@Override
public ResultData offLineCampaign(WxActivity wxActivity) {
WxActivity activity = wxActivityMapper.selectById(wxActivity.getId());
if (activity == null) {
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
}
if (wxActivity.getStatus().equals(EnumActivityStatus.STATUS_TAKE_OFFF.getCode())) {
WxCampaign campaign = new WxCampaign();
campaign.setProduceId(wxActivity.getId());
WxCampaign wxCampaign = wxCampaignMapper.selectOne(new QueryWrapper(campaign));
wxCampaign.setStatus(EnumCampaignStatus.STATUS_TAKE_OFFF.getCode());
wxCampaignMapper.updateById(wxCampaign);
}
return new ResultData(Result.SUCCESS, "操作成功");
}


}

+ 27
- 5
mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicSignServiceImpl.java Просмотреть файл

@@ -112,6 +112,7 @@ public class WxCUserBasicSignServiceImpl implements WxCUserBasicSignService {
wxCUserBasicSignMapper.insert(record);
}
signInCreditHistory(record,EnumScoreType.SIGN_IN_DAY);
continueSignInAddCredit(record);
return record;
}else{
//补签
@@ -148,12 +149,22 @@ public class WxCUserBasicSignServiceImpl implements WxCUserBasicSignService {
public Map<String,Integer> getLastSignIn(WxCUserBasicSign record) {
Map<String,Integer> map = new HashMap<>();
WxCUserBasicSign lastSignIn = wxCUserBasicSignMapper.getLastSignIn(record);
if(lastSignIn != null && DateUtils.isSameMonth(lastSignIn.getSigninDate(),new Date())){
//本月连续签到天数
map.put("continueMonthSign",lastSignIn.getContinueMonthSign());
}else{
map.put("continueMonthSign",0);
if(lastSignIn != null){
long daysL = DateUtils.startToEnd(lastSignIn.getSigninDate(), new Date());
int daysI = new Long(daysL).intValue();
if(daysI <= 1){
map.put("continueSign",lastSignIn.getContinueSign()%28);
}else{
map.put("continueSign",0);
}
}

// if(lastSignIn != null && DateUtils.isSameMonth(lastSignIn.getSigninDate(),new Date())){
// //本月连续签到天数
// map.put("continueMonthSign",lastSignIn.getContinueMonthSign());
// }else{
// map.put("continueMonthSign",0);
// }
WxCreditHistory wxCreditHistory = new WxCreditHistory();
wxCreditHistory.setTenantId(record.getFinalTenantId());
wxCreditHistory.setCUserId(record.getUserId());
@@ -201,4 +212,15 @@ public class WxCUserBasicSignServiceImpl implements WxCUserBasicSignService {
wxCreditHistoryService.saveOrUpdate(wxCreditHistory,null);
}

private void continueSignInAddCredit(WxCUserBasicSign record){
int i = record.getContinueSign() % 28;
if(record.getContinueSign() > 0 && i == 0){
signInCreditHistory(record,EnumScoreType.SIGN_IN_TEDAY);
}else if(i == 7){
signInCreditHistory(record,EnumScoreType.SIGN_IN_SEVENDAY);
}else if(i == 14){
signInCreditHistory(record,EnumScoreType.SIGN_IN_FTDAY);
}
}

}

Загрузка…
Отмена
Сохранить