luodangjia
2024-08-13 4d54d652b4bdb4ab2f3ee6ba670348fab9b07365
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -3,10 +3,12 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.account.api.dto.*;
import com.ruoyi.account.api.model.*;
import com.ruoyi.account.service.*;
import com.ruoyi.account.util.GiveVipUtil;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.web.domain.BasePojo;
@@ -71,6 +73,8 @@
        return R.ok(appUserService.list(new QueryWrapper<TAppUser>().like("phone",phone)).stream().map(TAppUser::getId).collect(Collectors.toList()));
    }
    @Resource
    private GiveVipUtil giveVipUtil;
    @ApiOperation(value = "单位管理列表", tags = {"用户管理-单位管理"})
    @PostMapping(value = "/unit/page")
    public R<Page<TCompany>> unitPage(@RequestBody UnitListQueryDto unitListQueryDto) {
@@ -305,35 +309,35 @@
    public R giveVip(@RequestBody GiveVipDto  giveVipDto) {
        TAppUser nowUser = appUserService.getById(giveVipDto.getUserId());
        //如果vipEndTime为空或已过期,直接增加
        if (nowUser.getVipEndTime()==null||nowUser.getVipEndTime().isBefore(LocalDateTime.now())) {
            if (giveVipDto.getType() == 1) {
                nowUser.setVipEndTime(LocalDateTime.now().plusDays(31));
                //直接增加vipDetail
            } else if (giveVipDto.getType() == 2) {
                nowUser.setVipEndTime(LocalDateTime.now().plusDays(93));
            } else if (giveVipDto.getType() == 3) {
                nowUser.setVipEndTime(LocalDateTime.now().plusDays(365));
            }
            //直接赠送优惠卷
        }else {
            if (giveVipDto.getType() == 1) {
                nowUser.setVipEndTime(nowUser.getVipEndTime().plusDays(31));
                //如果有这个类型的vip,累加,没有的话,从entTime新增
            } else if (giveVipDto.getType() == 2) {
                nowUser.setVipEndTime(nowUser.getVipEndTime().plusDays(93));
            } else if (giveVipDto.getType() == 3) {
                nowUser.setVipEndTime(nowUser.getVipEndTime().plusDays(365));
            }
        int plusDay = 0;
        if (giveVipDto.getType() == 1) {
            plusDay = 31;
        } else if (giveVipDto.getType() == 2) {
            plusDay = 93;
        } else if (giveVipDto.getType() == 3) {
            plusDay = 365;
        }
        //增加vipDetail
        giveVipUtil.sendVip(nowUser, giveVipDto.getVipId(),plusDay);
        appUserService.updateById(nowUser);
        //执行一次赠送优惠卷的定时任务
        return R.ok();
    }
    /**
     * 根据用户id查询用户信息
     * @param appUserIds 用户id
     * @return
     */
    @PostMapping(value = "/user/getUserByIds")
    public R<List<TAppUser>> getUserByIds(@RequestBody List<Long> appUserIds){
        return R.ok(appUserService.list(Wrappers.<TAppUser>lambdaQuery().in(TAppUser::getId,appUserIds)));
    }
    /**
     * 根据用户id获取用户
     * @param id