生日有礼相关
This commit is contained in:
parent
13d3e70c84
commit
9cb9dda109
|
|
@ -0,0 +1,41 @@
|
||||||
|
package com.czg.controller.user;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.czg.annotation.SaAdminCheckPermission;
|
||||||
|
import com.czg.market.dto.MkBirthdayGiftDTO;
|
||||||
|
import com.czg.market.service.MkBirthdayGiftService;
|
||||||
|
import com.czg.market.vo.MkBirthdayGiftRecordSummaryVO;
|
||||||
|
import com.czg.market.vo.MkBirthdayGiftRecordVO;
|
||||||
|
import com.czg.market.vo.MkBirthdayGiftVO;
|
||||||
|
import com.czg.resp.CzgResult;
|
||||||
|
import com.czg.sa.StpKit;
|
||||||
|
import com.mybatisflex.core.paginate.Page;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生日有礼相关
|
||||||
|
* @author Administrator
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/user/birthdayGift")
|
||||||
|
public class UBirthdayGiftController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private MkBirthdayGiftService service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取生日有礼 不为空则代表今日发放生日有礼的奖励
|
||||||
|
*/
|
||||||
|
@GetMapping
|
||||||
|
public CzgResult<MkBirthdayGiftVO> detail(@RequestParam Integer shopId) {
|
||||||
|
return CzgResult.success(service.getInfo(StpKit.USER.getLoginIdAsLong(), shopId));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -27,4 +27,6 @@ public interface MkBirthdayGiftService extends IService<MkBirthdayGift> {
|
||||||
MkBirthdayGiftRecordSummaryVO summary(Long shopId, String key, LocalDateTime dateTime);
|
MkBirthdayGiftRecordSummaryVO summary(Long shopId, String key, LocalDateTime dateTime);
|
||||||
|
|
||||||
void deliver();
|
void deliver();
|
||||||
|
|
||||||
|
MkBirthdayGiftVO getInfo(long userId, Integer shopId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.czg.service.market.service.impl;
|
package com.czg.service.market.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateTime;
|
import cn.hutool.core.date.DateTime;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
|
@ -213,4 +214,40 @@ public class MkBirthdayGiftServiceImpl extends ServiceImpl<MkBirthdayGiftMapper,
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MkBirthdayGiftVO getInfo(long userId, Integer shopId) {
|
||||||
|
MkBirthdayGift birthdayGift = getOne(new QueryWrapper().eq(MkBirthdayGift::getMainShopId, shopId).eq(MkBirthdayGift::getIsEnable, 1));
|
||||||
|
if (birthdayGift == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
ShopUser shopUser = shopUserService.getOne(new QueryWrapper().eq(ShopUser::getUserId, userId).eq(ShopUser::getMainShopId, shopId));
|
||||||
|
if (StrUtil.isBlank(birthdayGift.getConfigList())) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
LocalDate current = DateUtil.date().toLocalDateTime().toLocalDate();
|
||||||
|
for (MkBirthdayGiftConfig config : JSONArray.parseArray(birthdayGift.getConfigList()).toJavaList(MkBirthdayGiftConfig.class)) {
|
||||||
|
if ("day".equals(config.getDeliverDate())) {
|
||||||
|
if (config.getDeliverTime() != 1) {
|
||||||
|
current = current.plusDays(config.getDeliverTime());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
DateTime now = DateUtil.date();
|
||||||
|
// 获取当月第一天
|
||||||
|
current = DateUtil.beginOfMonth(now).toLocalDateTime().toLocalDate();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrUtil.isBlank(shopUser.getBirthDay())) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (DateUtil.parseDate(shopUser.getBirthDay()).toLocalDateTime().toLocalDate().isEqual(current)) {
|
||||||
|
MkBirthdayGiftVO vo = BeanUtil.copyProperties(birthdayGift, MkBirthdayGiftVO.class, "configList");
|
||||||
|
vo.setConfigList(CollUtil.toList(config));
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue