From bd97f8c5cd9be78abfaaab295319bd7ceef98f11 Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期五, 11 十月 2024 14:51:51 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java | 127 ++++++++++++++++++++++++++++++++++-------- 1 files changed, 102 insertions(+), 25 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java index 3fb1dff..839c11a 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java @@ -36,6 +36,7 @@ import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TExchangeOrder; import com.ruoyi.other.api.domain.*; +import com.ruoyi.other.api.domain.TCoupon; import com.ruoyi.other.api.dto.UnitListQueryDto; import com.ruoyi.other.api.feignClient.IntegralRuleClient; import com.ruoyi.other.api.feignClient.OtherClient; @@ -198,6 +199,10 @@ @DeleteMapping(value = "/unit/delete") @Log(title = "【单位管理】删除单位", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE) public R add(@RequestParam String ids) { + List<TAppUser> list = appUserService.lambdaQuery().in(TAppUser::getCompanyId, Arrays.asList(ids.split(","))).list(); + if (!list.isEmpty()){ + return R.fail("当前单位已存在用户,无法删除!"); + } String[] split = ids.split(","); for (String s : split) { otherClient.unitDelete(Integer.valueOf(s)); @@ -219,10 +224,12 @@ Page<TAppUser> page = appUserService.lambdaQuery() .like(userListQueryDto.getUserPhone() != null && !"".equals(userListQueryDto.getUserPhone()), TAppUser::getPhone, userListQueryDto.getUserPhone()) .eq(userListQueryDto.getCompanyId() != null, TAppUser::getCompanyId, userListQueryDto.getCompanyId()) + .eq(userListQueryDto.getProvinceCode() != null && !"".equals(userListQueryDto.getProvinceCode()), TAppUser::getProvinceCode, userListQueryDto.getProvinceCode()) .eq(userListQueryDto.getCityCode() != null && !"".equals(userListQueryDto.getCityCode()), TAppUser::getCityCode, userListQueryDto.getCityCode()) .eq(userListQueryDto.getStatus() != null, TAppUser::getStatus, userListQueryDto.getStatus()) .eq(userListQueryDto.getVipTypeId() != null, TAppUser::getVipId, userListQueryDto.getVipTypeId()) .in(!userIds.isEmpty(),TAppUser::getId,userIds) + .orderByDesc(BasePojo::getCreateTime) .page(Page.of(userListQueryDto.getPageCurr(), userListQueryDto.getPageSize())); if (page.getRecords().isEmpty()){ return R.ok(page); @@ -277,16 +284,25 @@ if (userListQueryDto.getUserTagId() != null){ userIds = appUserTagService.lambdaQuery().eq(TAppUserTag::getUserTagId, userListQueryDto.getUserTagId()).list().stream().map(TAppUserTag::getAppUserId).collect(Collectors.toList()); } + LocalDateTime end1 = null; + LocalDateTime end2 = null ; + if (userListQueryDto.getVipEndTime1()!=null) { + end1 = LocalDateTime.now().plusDays(userListQueryDto.getVipEndTime1()); + } + if (userListQueryDto.getVipEndTime2()!=null){ + end2 = LocalDateTime.now().plusDays(userListQueryDto.getVipEndTime2()); + } //列表查询 Page<TAppUser> page = appUserService.lambdaQuery() .ge(TAppUser::getVipEndTime, LocalDateTime.now()) .like(userListQueryDto.getUserPhone() != null && !"".equals(userListQueryDto.getUserPhone()), TAppUser::getPhone, userListQueryDto.getUserPhone()) .eq(userListQueryDto.getCompanyId() != null, TAppUser::getCompanyId, userListQueryDto.getCompanyId()) + .eq(userListQueryDto.getProvinceCode() != null && !"".equals(userListQueryDto.getProvinceCode()), TAppUser::getProvinceCode, userListQueryDto.getProvinceCode()) .eq(userListQueryDto.getCityCode() != null && !"".equals(userListQueryDto.getCityCode()), TAppUser::getCityCode, userListQueryDto.getCityCode()) .eq(userListQueryDto.getStatus() != null, TAppUser::getStatus, userListQueryDto.getStatus()) .eq(userListQueryDto.getVipTypeId() != null, TAppUser::getVipId, userListQueryDto.getVipTypeId()) - .ge(userListQueryDto.getVipEndTime1() != null, TAppUser::getVipEndTime, userListQueryDto.getVipEndTime1() == null ? null : LocalDateTime.now().plusDays(userListQueryDto.getVipEndTime1())) - .le(userListQueryDto.getVipEndTime2() != null, TAppUser::getVipEndTime, userListQueryDto.getVipEndTime2() == null ? null : LocalDateTime.now().plusDays(userListQueryDto.getVipEndTime2())) + .ge(userListQueryDto.getVipEndTime1() != null, TAppUser::getVipEndTime, end1 ) + .le(userListQueryDto.getVipEndTime2() != null, TAppUser::getVipEndTime, end2) .in(!userIds.isEmpty(), TAppUser::getId, userIds) .page(Page.of(userListQueryDto.getPageCurr(), userListQueryDto.getPageSize())); if (page.getRecords().isEmpty()){ @@ -335,7 +351,6 @@ Page<TAppUser> page = appUserService.lambdaQuery() .like(userListQueryDto.getUserPhone() != null && !"".equals(userListQueryDto.getUserPhone()), TAppUser::getPhone, userListQueryDto.getUserPhone()) .eq(userListQueryDto.getCityCode() != null && !"".equals(userListQueryDto.getCityCode()), TAppUser::getCityCode, userListQueryDto.getCityCode()) - .eq(userListQueryDto.getProvinceCode() != null && !"".equals(userListQueryDto.getProvinceCode()), TAppUser::getProvinceCode, userListQueryDto.getProvinceCode()) .in(!userIds.isEmpty(),TAppUser::getId,userIds) .eq(TAppUser::getStatus,1) .page(Page.of(userListQueryDto.getPageCurr(), userListQueryDto.getPageSize())); @@ -406,6 +421,11 @@ } } + }else { + List<TAppUser> list = appUserService.lambdaQuery().eq(TAppUser::getPhone, tAppUser.getPhone()).list(); + if (!list.isEmpty()){ + return R.fail("该手机号已注册"); + } } appUserService.saveOrUpdate(tAppUser); return R.ok(); @@ -415,12 +435,16 @@ @GetMapping(value = "/user/detail/{id}") public R<UserDetailDto> userDetail(@PathVariable Long id) { TAppUser user = appUserService.getById(id); - UserDetailDto userDetailDto = new UserDetailDto(); - BeanUtils.copyProperties(user,userDetailDto); - if (user.getVipId()!=null) { - R<Map<Integer, String>> vipMap = otherClient.getVipMap(Arrays.asList(user.getVipId())); + R<Map<Integer, String>> vipMap = otherClient.getVipMap(Collections.singletonList(user.getVipId())); + if (user.getVipEndTime()!=null&&user.getVipEndTime().isAfter(LocalDateTime.now())) { + //匹配vipMap的值 user.setVipName(vipMap.getData().get(user.getVipId())); } + + + UserDetailDto userDetailDto = new UserDetailDto(); + BeanUtils.copyProperties(user,userDetailDto); + //获取累计充电数量 R<Long> useOrderCount = chargingOrderClient.useOrderCount(user.getId()); userDetailDto.setOrderCount(useOrderCount.getData()); @@ -436,6 +460,9 @@ userDetailDto.setTagName(tagMap.getData().values() .stream() .collect(Collectors.joining(","))); + + + return R.ok(userDetailDto); } @@ -471,7 +498,7 @@ for (TAppUserIntegralChange record : page.getRecords()) { record.setDateTime(record.getCreateTime()); record.setUid(record.getId().toString()); - if (record.getChangeType()==2){ + if (record.getChangeType()==2||record.getChangeType()==3){ R<TChargingOrder> tChargingOrderR = chargingOrderClient.orderDetail(Long.valueOf(record.getExtension())); if (tChargingOrderR.getData()!=null) { record.setOrderNum(tChargingOrderR.getData().getCode()); @@ -493,6 +520,10 @@ @GetMapping(value = "/user/points/detail") public R<TAppUserIntegralChange> pointsDetail(String id) { TAppUserIntegralChange byId = integralChangeService.getById(id); + TExchangeOrder data = exchangeOrderClient.orderDetail(Long.valueOf(byId.getExtension())).getData(); + if (data!=null) { + byId.setGoodType(data.getOrderType()); + } return R.ok(byId); } @@ -538,7 +569,9 @@ TAppUser byId = appUserService.getById(userId); AppUserInfoDto appUserInfoDto = new AppUserInfoDto(); TVip data = vipClient.getVipInfoByType(2).getData(); - appUserInfoDto.setMinPrice(data.getMonthlyCard()); + if(null != data){ + appUserInfoDto.setMinPrice(data.getMonthlyCard()); + } //判断会员 if (byId.getVipEndTime()==null||byId.getVipEndTime().isBefore(LocalDateTime.now())){ @@ -546,12 +579,20 @@ }else { appUserInfoDto.setIsVip(1); appUserInfoDto.setVipExpireTime(byId.getVipEndTime()); + + + + + + + + } //判断当天是否签到 Long count = signService.lambdaQuery().eq(TAppUserSign::getAppUserId,userId).eq(TAppUserSign::getSignDay, LocalDate.now()).count(); appUserInfoDto.setIsSign(count>0?1:0); //获取当前拥有的优惠卷数量 - Long coupons = appCouponService.lambdaQuery().eq(TAppCoupon::getAppUserId, userId).eq(TAppCoupon::getStatus, 1).count(); + Long coupons = appCouponService.lambdaQuery().eq(TAppCoupon::getAppUserId, userId).ge(TAppCoupon::getEndTime, LocalDateTime.now()).eq(TAppCoupon::getStatus, 1).count(); appUserInfoDto.setCouponNum(Math.toIntExact(coupons)); //当前绑定的车辆 List<TAppUserCar> list = carService.lambdaQuery().eq(TAppUserCar::getAppUserId, userId).list(); @@ -561,8 +602,26 @@ appUserInfoDto.setUserCars(list); appUserInfoDto.setFirstAdd(byId.getFirstAdd()!=null?byId.getFirstAdd():0); appUserInfoDto.setPoints(byId.getPoints()==null?0:byId.getPoints()); + + + + + return R.ok(appUserInfoDto); + + } + + + @ApiOperation(value = "设置头像", tags = {"小程序-个人中心"}) + @GetMapping(value = "/user/set/avatar") + public R avatar(String url) { + Long userId = tokenService.getLoginUserApplet().getUserId(); + TAppUser byId = appUserService.getById(userId); + byId.setAvatar(url); + appUserService.updateById(byId); + + return R.ok(); } @@ -648,7 +707,7 @@ plusDay = 12; } //增加vipDetail - giveVipUtil.sendVip(nowUser, giveVipDto.getVipId(),plusDay); + giveVipUtil.sendVip(nowUser, giveVipDto.getVipId(),plusDay,giveVipDto.getType()); appUserService.updateById(nowUser); } return R.ok(); @@ -790,7 +849,7 @@ boolean doubleVip = false; if (one!=null){ TVip tVip = JSONObject.parseObject(one.getVipJson(), TVip.class); - if (tVip.getDoubleIntegration()==1){ + if (tVip.getDoubleIntegration()!=null&&tVip.getDoubleIntegration()==1){ doubleVip = true; } } @@ -834,7 +893,7 @@ signService.updateById(appUserSign); } } - pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+points,1,userId,"每日签到","JF"); + pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+points,1,userId,"每日签到","JF",""); byId.setPoints(byId.getPoints()+points); appUserService.updateById(byId); return R.ok(); @@ -873,19 +932,19 @@ //积分变化记录用 - @PostMapping(value = "/user/points/change") - public R change(@RequestBody PointChangeDto points) { - TAppUser byId = appUserService.getById(points.getUserId()); - pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+points.getPoints(),points.getType(),points.getUserId(),points.getRemark(),"JF"); - byId.setPoints(byId.getPoints()+points.getPoints()); - appUserService.updateById(byId); - return R.ok(); - } +// @PostMapping(value = "/user/points/change") +// public R change(@RequestBody PointChangeDto points) { +// TAppUser byId = appUserService.getById(points.getUserId()); +// pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+points.getPoints(),points.getType(),points.getUserId(),points.getRemark(),"JF"); +// byId.setPoints(byId.getPoints()+points.getPoints()); +// appUserService.updateById(byId); +// return R.ok(); +// } @PostMapping(value = "/user/points/change/down") public R changeDown(@RequestBody PointChangeDto points) { TAppUser byId = appUserService.getById(points.getUserId()); - pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()-points.getPoints(),points.getType(),points.getUserId(),points.getRemark(),"JF"); + pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()-points.getPoints(),points.getType(),points.getUserId(),points.getRemark(),"JF",points.getCode()); byId.setPoints(byId.getPoints()-points.getPoints()); appUserService.updateById(byId); return R.ok(); @@ -905,7 +964,7 @@ boolean doubleVip = false; if (one!=null){ TVip tVip = JSONObject.parseObject(one.getVipJson(), TVip.class); - if (tVip.getDoubleIntegration()==1){ + if (tVip.getDoubleIntegration()!=null&&tVip.getDoubleIntegration()==1){ doubleVip = true; } } @@ -949,13 +1008,20 @@ } //增加积分记录 - pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+point,5,userId,appUserCar.getLicensePlate(),""); + pointDetailUtil.addDetail(byId.getPoints(),byId.getPoints()+point,5,userId,appUserCar.getLicensePlate(),"",""); byId.setPoints(byId.getPoints()+point); byId.setFirstAdd(1); - appUserService.updateById(byId); } + CarNumDto carNumDto = CarUtil.carNum(appUserCar.getLicensePlate()); + if (carNumDto==null){ + return R.fail("请输入正确的车牌"); + } + + byId.setCityCode(carNumDto.getAreaCode()); + byId.setProvinceCode(carNumDto.getAreaCode().substring(0,2)+"0000"); + appUserService.updateById(byId); // appUserCarService.saveOrUpdate(appUserCar); @@ -981,6 +1047,17 @@ String brand = CarBrandUtil.getBrand(); JSONObject jsonObject = JSON.parseObject(brand); JSONArray data = jsonObject.getJSONArray("data"); + JSONArray data1 = new JSONArray(); + if (name!=null) { + for (int i = 0; i < data.size(); i++) { + JSONObject brand1 = data.getJSONObject(i); + String o = (String) brand1.get("name"); + if (o.contains(name)) { + data1.add(brand1); + } + } + return R.ok(data1); + } return R.ok(data); } -- Gitblit v1.7.1