| | |
| | | package com.ruoyi.account.controller; |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.account.api.model.UserPoint; |
| | | import com.ruoyi.account.api.model.UserPointCopy; |
| | | import com.ruoyi.account.mapper.UserPointCopyMapper; |
| | | import com.ruoyi.account.service.AppUserService; |
| | | import com.ruoyi.account.service.UserPointService; |
| | | import com.ruoyi.account.vo.TransferPoint; |
| | | import com.ruoyi.account.vo.UserPointDetailVO; |
| | | import com.ruoyi.account.vo.UserPointStatistics; |
| | | import com.ruoyi.account.vo.UserPointVO; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.poi.ExcelUtil; |
| | | import com.ruoyi.common.core.web.controller.BaseController; |
| | | import com.ruoyi.common.core.web.page.PageInfo; |
| | | import com.ruoyi.common.core.web.page.TableDataInfo; |
| | | import com.ruoyi.common.security.service.TokenService; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.order.feignClient.OrderClient; |
| | | import com.ruoyi.order.model.Order; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | |
| | | @Resource |
| | | private UserPointService userPointService; |
| | | @Resource |
| | | private AppUserService appUserService; |
| | | private UserPointCopyMapper userPointCopyMapper; |
| | | @Resource |
| | | private TokenService tokenService; |
| | | private OrderClient orderClient; |
| | | |
| | | |
| | | /** |
| | |
| | | */ |
| | | @GetMapping("/getUserPointDetail") |
| | | @ApiOperation("获取变更明细") |
| | | public TableDataInfo<UserPointDetailVO> getUserPointDetail(@ApiParam("指定日期") @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate date, |
| | | @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " + |
| | | public R<PageInfo<UserPointDetailVO>> getUserPointDetail(@ApiParam("指定日期") @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate date, |
| | | @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " + |
| | | "5 = 门店业绩积分 6 =门店返佣积分7=技师业绩积分8 =转赠积分 9 =做工积分 " + |
| | | "10 =注册积分)") Integer type) { |
| | | "10 =注册积分)") Integer type, Integer pageCurr, Integer pageSize) { |
| | | LocalDateTime startTime = null; |
| | | LocalDateTime endTime = null; |
| | | if (date != null) { |
| | |
| | | endTime = lastDayOfMonth.atTime(LocalTime.MAX); |
| | | } |
| | | |
| | | startPage(); |
| | | List<UserPointDetailVO> list = userPointService.getUserPointDetail(SecurityUtils.getUserId(), startTime, endTime, type); |
| | | return getDataTable(list); |
| | | PageInfo<UserPointDetailVO> userPointDetail = userPointService.getUserPointDetail(SecurityUtils.getUserId(), startTime, endTime, type, pageCurr, pageSize); |
| | | return R.ok(userPointDetail); |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | @PostMapping("/transferPoint") |
| | | @ApiOperation("转赠积分") |
| | | public R<Void> transferPoint(@ApiParam("积分") @RequestParam BigDecimal point, @ApiParam("手机号") @RequestParam String phone) { |
| | | userPointService.transferPoint(point, phone); |
| | | return R.ok(); |
| | | public R<Void> transferPoint(@RequestBody TransferPoint transferPoint) { |
| | | return userPointService.transferPoint(transferPoint.getPoint(), transferPoint.getPhone()); |
| | | } |
| | | |
| | | |
| | |
| | | public R saveUserPoint(@RequestBody UserPoint userPoint) { |
| | | userPointService.save(userPoint); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @PostMapping("/saveUserPointCopy") |
| | | public R saveUserPointCopy(@RequestBody UserPointCopy userPointCopy) { |
| | | userPointCopyMapper.insert(userPointCopy); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @DeleteMapping("/deleteUserPointCopy") |
| | | public R deleteUserPointCopy(@RequestParam("orderId") Long orderId, @RequestParam("type") List<Integer> type) { |
| | | userPointCopyMapper.delete(new LambdaQueryWrapper<UserPointCopy>().in(UserPointCopy::getType, type) |
| | | .eq(UserPointCopy::getObjectId, orderId)); |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | |
| | | @DeleteMapping("/deleteUserPointCopyByIds") |
| | | public R deleteUserPointCopyByIds(@RequestParam("ids") List<Long> ids){ |
| | | userPointCopyMapper.deleteBatchIds(ids); |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | @PostMapping("/getUserPointCopy") |
| | | public R<List<UserPointCopy>> getUserPointCopy(@RequestParam("orderId") Long orderId, @RequestParam("type") List<Integer> type) { |
| | | List<UserPointCopy> list = userPointCopyMapper.selectList(new LambdaQueryWrapper<UserPointCopy>().in(UserPointCopy::getType, type) |
| | | .eq(UserPointCopy::getObjectId, orderId)); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | @GetMapping("/user/list") |
| | | @ApiOperation(value = "积分管理-用户积分明细(必传用户id)", tags = "后台") |
| | | public R<Page<UserPoint>> userlist(UserPoint userPoint) { |
| | | Page<UserPoint> page = userPointService.lambdaQuery().eq(UserPoint::getAppUserId, userPoint.getAppUserId()).orderByDesc(UserPoint::getCreateTime).page(Page.of(userPoint.getPageNum(), userPoint.getPageSize())); |
| | | public R<IPage<UserPoint>> userlist(UserPoint userPoint) { |
| | | IPage<UserPoint> page = userPointService.getUserPointPage(Page.of(userPoint.getPageNum(), userPoint.getPageSize()), userPoint); |
| | | for (UserPoint record : page.getRecords()) { |
| | | if (record.getType()==1 || record.getType()==11){ |
| | | Order data = orderClient.getOrderById(record.getObjectId()).getData(); |
| | | if (data!=null){ |
| | | record.setExtention(data.getOrderNumber()); |
| | | } |
| | | } |
| | | if (record.getChangeDirection() == -1){ |
| | | record.setVariableType(2); |
| | | }else{ |
| | | record.setVariableType(1); |
| | | } |
| | | } |
| | | return R.ok(page); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取积分变动记录 |
| | | * @param userPoint |
| | | * @return |
| | | */ |
| | | @PostMapping("/getUserPointList") |
| | | public R<List<UserPoint>> getUserPointList(@RequestBody UserPoint userPoint){ |
| | | LambdaQueryWrapper<UserPoint> queryWrapper = new LambdaQueryWrapper<>(); |
| | | if(null != userPoint.getType()){ |
| | | queryWrapper.eq(UserPoint::getType, userPoint.getType()); |
| | | } |
| | | if(null != userPoint.getObjectId()){ |
| | | queryWrapper.eq(UserPoint::getObjectId, userPoint.getObjectId()); |
| | | } |
| | | if(null != userPoint.getAppUserId()){ |
| | | queryWrapper.eq(UserPoint::getAppUserId, userPoint.getAppUserId()); |
| | | } |
| | | List<UserPoint> list = userPointService.list(queryWrapper); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 判断当天是否分享获得过积分 |
| | | * @param appUserId |
| | | * @return |
| | | */ |
| | | @PostMapping("/judgmentDailyShare") |
| | | public R<Boolean> judgmentDailyShare(@RequestParam("appUserId") Long appUserId){ |
| | | long count = userPointService.count(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUserId) |
| | | .eq(UserPoint::getType, 4).last(" and DATE_FORMAT(NOW(), '%Y-%m-%d') = DATE_FORMAT(create_time, '%Y-%m-%d')")); |
| | | return R.ok(count != 0); |
| | | } |
| | | } |
| | | |