This commit is contained in:
dute7liang
2023-12-24 00:31:21 +08:00
parent 7973aa1582
commit cc467a1105
19 changed files with 357 additions and 17 deletions

View File

@@ -0,0 +1,96 @@
package com.ruoyi.cai.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.CaiUserCount;
import com.ruoyi.cai.service.CaiUserCountService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
/**
* 用户信息数量统计
*
* @author 77
* @date 2023-12-24
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/cai/userCount")
public class CaiUserCountController extends BaseController {
private final CaiUserCountService caiUserCountService;
/**
* 查询用户信息数量统计列表
*/
@SaCheckPermission("cai:userCount:list")
@GetMapping("/list")
public TableDataInfo<CaiUserCount> list(CaiUserCount bo, PageQuery pageQuery) {
Page<CaiUserCount> page = caiUserCountService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
return TableDataInfo.build(page);
}
/**
* 获取用户信息数量统计详细信息
*
* @param userId 主键
*/
@SaCheckPermission("cai:userCount:query")
@GetMapping("/{userId}")
public R<CaiUserCount> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Integer userId) {
return R.ok(caiUserCountService.getById(userId));
}
/**
* 新增用户信息数量统计
*/
@SaCheckPermission("cai:userCount:add")
@Log(title = "用户信息数量统计", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody CaiUserCount bo) {
return toAjax(caiUserCountService.save(bo));
}
/**
* 修改用户信息数量统计
*/
@SaCheckPermission("cai:userCount:edit")
@Log(title = "用户信息数量统计", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CaiUserCount bo) {
return toAjax(caiUserCountService.updateById(bo));
}
/**
* 删除用户信息数量统计
*
* @param userIds 主键串
*/
@SaCheckPermission("cai:userCount:remove")
@Log(title = "用户信息数量统计", businessType = BusinessType.DELETE)
@DeleteMapping("/{userIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Integer[] userIds) {
return toAjax(caiUserCountService.removeBatchByIds(Arrays.asList(userIds), true));
}
}

View File

@@ -2,7 +2,7 @@ package com.ruoyi.cai.controller.app;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.dto.app.query.StarQuery;
import com.ruoyi.cai.dto.app.query.StarRes;
import com.ruoyi.cai.dto.app.query.StarOrVisitorRes;
import com.ruoyi.cai.dto.app.vo.UserStarOrVisitorList;
import com.ruoyi.cai.service.CaiUserFollowService;
import com.ruoyi.common.core.domain.PageQuery;
@@ -20,14 +20,14 @@ public class CaiUserStartAppController {
private CaiUserFollowService userFollowService;
@PostMapping("/star")
public R<Boolean> star(StarRes starRes){
boolean bool = userFollowService.star(starRes);
public R<Boolean> star(StarOrVisitorRes starOrVisitorRes){
boolean bool = userFollowService.star(starOrVisitorRes);
return R.ok(bool);
}
@PostMapping("/unstar")
public R<Boolean> unStar(StarRes starRes){
boolean bool = userFollowService.unStar(starRes);
public R<Boolean> unStar(StarOrVisitorRes starOrVisitorRes){
boolean bool = userFollowService.unStar(starOrVisitorRes);
return R.ok(bool);
}

View File

@@ -0,0 +1,41 @@
package com.ruoyi.cai.controller.app;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.dto.app.query.StarOrVisitorRes;
import com.ruoyi.cai.dto.app.query.VisitorQuery;
import com.ruoyi.cai.dto.app.vo.UserStarOrVisitorList;
import com.ruoyi.cai.service.CaiUserVisitorService;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController("/user/visitor")
@Slf4j
public class CaiUserVisitorAppController {
@Autowired
private CaiUserVisitorService userVisitorService;
// 除网络问题不返回异常。避免影响业务
@PostMapping("/visitor")
public R<Boolean> visitor(StarOrVisitorRes starOrVisitorRes){
try {
boolean bool = userVisitorService.visitor(starOrVisitorRes);
}catch (Exception e){
log.error("记录访客失败",e);
}
return R.ok(true);
}
@GetMapping("/page")
public TableDataInfo<UserStarOrVisitorList> page(VisitorQuery query, PageQuery pageQuery){
Page<UserStarOrVisitorList> res = userVisitorService.pageApp(pageQuery,query);
return TableDataInfo.build(res);
}
}