package com.example.xiaoshiweixinback.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.xiaoshiweixinback.business.utils.DateUtils; import com.example.xiaoshiweixinback.domain.AssoPersonVip; import com.example.xiaoshiweixinback.domain.Vip; import com.example.xiaoshiweixinback.mapper.AssoPersonVipMapper; import org.joda.time.DateTime; import org.springframework.stereotype.Service; import java.util.Date; /** * @author admin * @description 针对表【asso_person_vip(人员会员管理表)】的数据库操作Service实现 * @createDate 2024-03-29 15:32:20 */ @Service public class AssoPersonVipService extends ServiceImpl { public Date getCreateTime(String personUuid) { Date date = new Date(); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(AssoPersonVip::getPersonUuid, personUuid) .gt(AssoPersonVip::getExpiryTime, date) .orderByDesc(AssoPersonVip::getExpiryTime); AssoPersonVip assoPersonVip = this.getOne(queryWrapper, false); if (assoPersonVip != null) { date = assoPersonVip.getExpiryTime(); } return date; } public AssoPersonVip addAssoPersonVip(String personUuid, Vip vip) { Date date = this.getCreateTime(personUuid); AssoPersonVip assoPersonVip = new AssoPersonVip(); assoPersonVip.setCreateTime(date); Integer lastTime =vip.getLastTime(); Date expiryDate = DateUtils.getPlusMonthDate(date,lastTime); assoPersonVip.setExpiryTime(expiryDate); assoPersonVip.setVipUuid(vip.getVipUuId()); assoPersonVip.setPersonUuid(personUuid); assoPersonVip.insert(); return assoPersonVip; } }