xuhy
2024-11-04 0d4a9b859eff7452eefdfb160f5778f68d9c0fad
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -5,6 +5,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -15,12 +16,11 @@
import com.ruoyi.account.util.carBrand.CarBrandUtil;
import com.ruoyi.account.wx.model.WeixinProperties;
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.constant.MsgConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.dto.PointChangeDto;
import com.ruoyi.common.core.enums.status.AppUserStatusEnum;
import com.ruoyi.common.core.utils.JwtUtils;
import com.ruoyi.common.core.utils.OrderCodeUtil;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.*;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.domain.BasePojo;
@@ -40,6 +40,7 @@
import com.ruoyi.order.api.model.TGrantVip;
import com.ruoyi.other.api.domain.*;
import com.ruoyi.other.api.domain.TCoupon;
import com.ruoyi.other.api.domain.TVip;
import com.ruoyi.other.api.dto.UnitListQueryDto;
import com.ruoyi.other.api.feignClient.IntegralRuleClient;
import com.ruoyi.other.api.feignClient.OtherClient;
@@ -547,6 +548,9 @@
            if (data != null) {
                byId.setGoodType(data.getOrderType());
            }
        }else if (byId.getChangeType()==4){
            TAppUser byId1 = appUserService.getById(byId.getExtension());
            byId.setExtension(byId1.getPhone());
        }
        return R.ok(byId);
    }
@@ -585,6 +589,8 @@
        return R.ok();
    }
    @Resource
    private TAppUserVipDetailService appUserVipDetailService;
    @ApiOperation(value = "个人中心信息", tags = {"小程序-个人中心"})
    @GetMapping(value = "/user/info")
@@ -601,12 +607,14 @@
        if (byId.getVipEndTime()==null||byId.getVipEndTime().isBefore(LocalDateTime.now())){
            appUserInfoDto.setIsVip(0);
        }else {
            TAppUserVipDetail one = appUserVipDetailService.getOne(new LambdaQueryWrapper<TAppUserVipDetail>()
                    .eq(TAppUserVipDetail::getAppUserId, userId)
                    .eq(TAppUserVipDetail::getVipId, byId.getVipId())
                    .last(" and now() between start_time and end_time"));
            Long count = appCouponService.lambdaQuery().eq(TAppCoupon::getDetailId, one.getId()).count();
            appUserInfoDto.setVipCouponNum(count);
            appUserInfoDto.setIsVip(1);
            appUserInfoDto.setVipExpireTime(byId.getVipEndTime());
@@ -705,7 +713,7 @@
    @ApiOperation(value = "优惠卷详情(1可使用2不可用)", tags = {"小程序-个人中心"})
    @GetMapping(value = "/user/coupon/getById")
    @PostMapping(value = "/user/coupon/getById")
    public R<TAppCoupon> couponGetById(@RequestParam("id")Long id) {
        TAppCoupon appCoupon = appCouponService.getById(id);
        appCoupon.setUid(id.toString());
@@ -736,13 +744,13 @@
            TVip info = vipClient.getInfo1(giveVipDto.getVipId()).getData();
        switch (giveVipDto.getType()){
            case 1:
                bigDecimal = bigDecimal.add(info.getMonthlyCard());
                bigDecimal = bigDecimal.add(info.getMonthlyCard()==null?new BigDecimal(0):info.getMonthlyCard());
                break;
            case 2:
                bigDecimal = bigDecimal.add(info.getSeasonCard());
                bigDecimal = bigDecimal.add(info.getSeasonCard()==null?new BigDecimal(0):info.getSeasonCard());
                break;
            case 3:
                bigDecimal = bigDecimal.add(info.getAnnualCard());
                bigDecimal = bigDecimal.add(info.getAnnualCard()==null?new BigDecimal(0):info.getAnnualCard());
                break;
        }
            //增加vipDetail
@@ -765,8 +773,12 @@
    @PostMapping(value = "/user/invite/page")
    public R<Page<TInviteUser>> invitePage(@RequestBody BasePage basePage) {
        Long userId = tokenService.getLoginUserApplet().getUserId();
        Page<TInviteUser> page = inviteUserService.lambdaQuery().eq(TInviteUser::getAppUserId, userId).isNotNull(TInviteUser::getAward).orderByDesc(TInviteUser::getCreateTime).page(Page.of(basePage.getPageCurr(), basePage.getPageSize()));
        for (TInviteUser record : page.getRecords()) {
            TAppUser byId = appUserService.getById(record.getBeInvitedAppUserId());
            record.setAvatar(byId.getAvatar());
            record.setName(byId.getName());
        }
        return R.ok(page);
    }
@@ -961,6 +973,10 @@
                .eq(TAppUserSign::getAppUserId, userId)
                .orderByDesc(TAppUserSign::getSignDay)
                .list();
        for (TAppUserSign signRecord : signRecords) {
            int i = signDayUtil.calculateContinuousSignDays1(signRecord.getAppUserId(), signRecord.getSignDay());
            signRecord.setContinueDays(i);
        }
        return R.ok(signRecords);
    }
@@ -1115,6 +1131,10 @@
    public R getModel(String id) throws Exception {
        String modelById = CarBrandUtil.getModelById(id);
        JSONObject jsonObject = JSON.parseObject(modelById);
        Integer code = jsonObject.getInteger("code");
        if (code==701){
            return R.fail("当前品牌暂无分类");
        }
        JSONArray data = jsonObject.getJSONArray("data");
        JSONArray backList = new JSONArray();
        for (Object datum : data) {
@@ -1162,5 +1182,24 @@
        appUserService.updateById(appUser);
        return AjaxResult.success();
    }
    @PostMapping("/sendMessage")
    public R<String> sendMessage(@RequestBody SendMessageDTO sendMessageDTO){
        switch (sendMessageDTO.getType()){
            case 1:
                String reqStr1 = MsgUtil.codeMsg(sendMessageDTO.getPhone(), sendMessageDTO.getCode());
                String result1 = HttpUtils.post(MsgConstants.SEND_URL, reqStr1);
                return R.ok(result1);
            case 2:
                String reqStr2 = MsgUtil.applyCodeMsg(sendMessageDTO.getPhone(), sendMessageDTO.getCode());
                String result2 = HttpUtils.post(MsgConstants.SEND_URL, reqStr2);
                return R.ok(result2);
            default:
                String reqStr3 = MsgUtil.faultMsg(sendMessageDTO.getPhone(), sendMessageDTO.getSite(), sendMessageDTO.getChargeGun());
                String result3 = HttpUtils.post(MsgConstants.SEND_URL, reqStr3);
                return R.ok(result3);
        }
    }
}