From 993c6978ad57926a777e3837053e7b28da62ee93 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期三, 13 七月 2022 15:06:36 +0800 Subject: [PATCH] 工作台相关接口 --- src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java | 96 ++++++++++++++++ src/main/java/com/example/jz/modle/entity/Report.java | 9 + src/main/java/com/example/jz/modle/vo/ReportVo.java | 27 ++++ src/main/java/com/example/jz/modle/vo/MessageVo.java | 29 ++++ src/main/java/com/example/jz/service/WorkbenchService.java | 64 ++++++++++ src/main/java/com/example/jz/controller/WorkbenchController.java | 77 ++++++++++++ 6 files changed, 302 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/example/jz/controller/WorkbenchController.java b/src/main/java/com/example/jz/controller/WorkbenchController.java new file mode 100644 index 0000000..36db773 --- /dev/null +++ b/src/main/java/com/example/jz/controller/WorkbenchController.java @@ -0,0 +1,77 @@ +package com.example.jz.controller; + + +import com.example.jz.modle.R; +import com.example.jz.service.WorkbenchService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/user") +@Api(tags = "宸ヤ綔鍙�") +public class WorkbenchController { + + @Autowired + WorkbenchService workbenchService; + + @ApiOperation(httpMethod = "GET", value = "鏌ヨ浠婃棩寰呭鏍镐汉鍛�") + @GetMapping("/checkPendingNumber") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getCheckPendingUser() { + return R.ok(workbenchService.getCheckPending()); + } + + @ApiOperation(httpMethod = "GET", value = "鏌ヨ浠婃棩宸插鏍镐汉鍛�") + @GetMapping("/checkPendedNumber") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getCheckPendedUser() { + return R.ok(workbenchService.getCheckPended()); + } + + @ApiOperation(httpMethod = "GET", value = "鏌ヨ浠婃棩杩涚兢浜烘暟") + @GetMapping("/intoGroupNumber") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getIntoGroupNumber() { + return R.ok(workbenchService.getIntoGroupNumbers()); + } + + @ApiOperation(httpMethod = "GET", value = "鏂板妗堜欢鏁�") + @GetMapping("/newCase") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getNewCase() { + return R.ok(workbenchService.getNewCase()); + } + + @ApiOperation(httpMethod = "GET", value = "妗堜欢鎬绘暟") + @GetMapping("/allCase") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getAllCase() { + return R.ok(workbenchService.getAllCase()); + } + + @ApiOperation(httpMethod = "GET", value = "绠$悊浜哄憳鎬绘暟") + @GetMapping("/allManager") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getAllManager() { + return R.ok(workbenchService.getAllManager()); + } + + @ApiOperation(httpMethod = "GET", value = "寰呭鏍镐汉鍛�") + @GetMapping("/checkPendingList") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getAllCheckPendingList() { + return R.ok(workbenchService.getAllCheckPendingList()); + } + + @ApiOperation(httpMethod = "GET", value = "缇ょ粍鍔ㄦ��") + @GetMapping("/groupMessage") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getGroupMessage() { + return R.ok(workbenchService.getGroupMessage()); + } +} diff --git a/src/main/java/com/example/jz/modle/entity/Report.java b/src/main/java/com/example/jz/modle/entity/Report.java index 5c99828..1c6db75 100644 --- a/src/main/java/com/example/jz/modle/entity/Report.java +++ b/src/main/java/com/example/jz/modle/entity/Report.java @@ -40,7 +40,16 @@ private Date cheatTime; //琛ュ厖淇℃伅 private String information; + //妗堜欢id + private Integer causeId; + public Integer getCauseId() { + return causeId; + } + + public void setCauseId(Integer causeId) { + this.causeId = causeId; + } public Integer getId() { return id; diff --git a/src/main/java/com/example/jz/modle/vo/MessageVo.java b/src/main/java/com/example/jz/modle/vo/MessageVo.java new file mode 100644 index 0000000..6900d92 --- /dev/null +++ b/src/main/java/com/example/jz/modle/vo/MessageVo.java @@ -0,0 +1,29 @@ +package com.example.jz.modle.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +@Data +@ApiModel(description = "缇ょ粍鍔ㄦ��",value = "MessageVo") +public class MessageVo { + + /** + * 鐢ㄦ埛id + */ + @ApiModelProperty(dataType = "String",value = "鎶ユ浜哄悕绉�") + private String userName; + + @ApiModelProperty(dataType = "String",value = "缇ょ粍鍚嶇О") + private String groupName; + /** + * 缇d + */ + @ApiModelProperty(dataType = "Integer",value = "缇ょ粍id") + private Integer groupId; + + @ApiModelProperty(dataType = "Date",value = "鍒涘缓甯堣") + private Date ctime; +} diff --git a/src/main/java/com/example/jz/modle/vo/ReportVo.java b/src/main/java/com/example/jz/modle/vo/ReportVo.java new file mode 100644 index 0000000..b113d77 --- /dev/null +++ b/src/main/java/com/example/jz/modle/vo/ReportVo.java @@ -0,0 +1,27 @@ +package com.example.jz.modle.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * (Cause)琛ㄥ疄浣撶被 + * + * @author makejava + * @since 2022-07-11 16:55:40 + */ +@Data +@ApiModel(description = "寰呭鏍镐汉鍛�", value = "CauseVo") +public class ReportVo { + //鎶ユ浜� + @ApiModelProperty(value = "鎶ユ浜�",dataType = "String") + private String reporterName; + + @ApiModelProperty(value = "鎶ユ浜烘墜鏈哄彿",dataType = "String") + //鎶ユ浜烘墜鏈哄彿 + private String mobile; + + @ApiModelProperty(value = "鎶ユ浜鸿韩浠借瘉鍙�",dataType = "String") + //鎶ユ浜鸿韩浠借瘉鍙� + private String idcard; +} diff --git a/src/main/java/com/example/jz/service/WorkbenchService.java b/src/main/java/com/example/jz/service/WorkbenchService.java new file mode 100644 index 0000000..596f2fe --- /dev/null +++ b/src/main/java/com/example/jz/service/WorkbenchService.java @@ -0,0 +1,64 @@ +package com.example.jz.service; + +import com.example.jz.modle.vo.ReportVo; +import com.example.jz.modle.vo.MessageVo; + +import java.util.List; + +public interface WorkbenchService { + /** + * @return java.lang.Integer + * @Description 浠婃棩寰呭鏍镐汉鍛樻煡璇� + * @Param [] + **/ + Integer getCheckPending(); + + /** + * @return java.lang.Integer + * @Description 浠婃棩宸茬粡瀹℃牳浜哄憳鏌ヨ + * @Param [] + **/ + Integer getCheckPended(); + + /** + * @return java.lang.Integer + * @Description 浠婃棩杩涚兢浜烘暟鏌ヨ + * @Param [] + **/ + Integer getIntoGroupNumbers(); + + /** + * @return java.lang.Integer + * @Description 浠婃棩鏂板妗堜欢鏁� + * @Param [] + **/ + Integer getNewCase(); + + /** + * @return java.lang.Integer + * @Description 鏌ヨ鍏ㄩ儴妗堜欢 + * @Param [] + **/ + Integer getAllCase(); + + /** + * @return java.lang.Integer + * @Description 鑾峰彇鍏ㄩ儴绠$悊鍛� + * @Param [] + **/ + Integer getAllManager(); + + /** + * @return java.util.List<com.example.jz.modle.vo.CauseVo> + * @Description 鑾峰彇鏈�鏂颁簲鏉″緟瀹℃牳妗堜欢 + * @Param [] + **/ + List<ReportVo> getAllCheckPendingList(); + + /** + * @return java.util.List<com.example.jz.modle.vo.MessageVo> + * @Description 鑾峰彇缇ょ粍鏈�鏂颁簲鏉℃秷鎭� + * @Param [] + **/ + List<MessageVo> getGroupMessage(); +} diff --git a/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java new file mode 100644 index 0000000..8745bdf --- /dev/null +++ b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java @@ -0,0 +1,96 @@ +package com.example.jz.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.example.jz.dao.*; +import com.example.jz.modle.entity.*; +import com.example.jz.modle.vo.ReportVo; +import com.example.jz.modle.vo.MessageVo; +import com.example.jz.service.WorkbenchService; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@Service +public class WorkbenchServiceImpl implements WorkbenchService { + @Resource + ReportDao reportDao; + + @Resource + CauseDao causeDao; + + @Resource + UserDao userDao; + + @Resource + GroupDao groupDao; + + @Resource + GroupUserDao groupUserDao; + + + @Resource + MessageDao messageDao; + + @Override + public Integer getCheckPending() { + return reportDao.selectCount(new QueryWrapper<Report>().eq("status", 0).last("and TO_DAYS(ctime)=TO_DAYS(NOW())")); + } + + @Override + public Integer getCheckPended() { + return reportDao.selectCount(new QueryWrapper<Report>().eq("status", 1).last("and TO_DAYS(ctime)=TO_DAYS(NOW())")); + } + + @Override + public Integer getIntoGroupNumbers() { + return groupUserDao.selectCount(new QueryWrapper<GroupUser>().apply("TO_DAYS(ctime)=TO_DAYS(NOW())")); + } + + @Override + public Integer getNewCase() { + return causeDao.selectCount(new QueryWrapper<Cause>().apply("TO_DAYS(ctime)=TO_DAYS(NOW())")); + } + + @Override + public Integer getAllCase() { + return causeDao.selectCount(new QueryWrapper<>()); + } + + @Override + public Integer getAllManager() { + return userDao.selectCount(new QueryWrapper<User>().eq("role", 1)); + } + + @Override + public List<ReportVo> getAllCheckPendingList() { + List<Report> reports = reportDao.selectList(new QueryWrapper<Report>().eq("status", 0).orderByDesc("ctime").last("limit 5")); + ArrayList<ReportVo> reportVos = new ArrayList<>(); + reports.forEach(a -> { + User user = userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId())); + ReportVo reportVo = new ReportVo(); + reportVo.setReporterName(user.getRealName()); + String regex = "(?<=[\\d]{3})\\d(?=[\\d]{4})"; + reportVo.setIdcard(user.getUserIdcard().replaceAll(regex, "*")); + reportVo.setMobile(user.getUserMobile()); + reportVos.add(reportVo); + }); + return reportVos; + } + + @Override + public List<MessageVo> getGroupMessage() { + ArrayList<MessageVo> messageVos = new ArrayList<>(); + messageDao.selectList(new QueryWrapper<Message>().orderByDesc("ctime").last("limit 5")) + .forEach(a -> { + MessageVo messageVo = new MessageVo(); + messageVo.setGroupName(groupDao.selectOne(new QueryWrapper<Group>().eq("id", a.getGroupId())).getGroupName()); + BeanUtils.copyProperties(a, messageVo); + messageVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId())).getRealName()); + messageVos.add(messageVo); + }); + return messageVos; + } +} -- Gitblit v1.8.0