From f016363ca628b296d6edb65fc509fb89b22ee94f Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期四, 14 七月 2022 16:34:14 +0800 Subject: [PATCH] 案件区相关接口 --- src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java | 2 src/main/java/com/example/jz/modle/vo/UserVo.java | 18 +++ src/main/java/com/example/jz/modle/vo/ReportVo.java | 4 src/main/java/com/example/jz/modle/entity/User.java | 8 src/main/java/com/example/jz/modle/vo/CauseVo.java | 47 +++++++ src/main/java/com/example/jz/modle/vo/MessageVo.java | 1 src/main/java/com/example/jz/controller/CauseController.java | 82 ++++--------- src/main/java/com/example/jz/service/impl/CauseServiceImpl.java | 97 ++++++++++++++++ src/main/java/com/example/jz/modle/dto/CauseDto.java | 32 +++++ src/main/java/com/example/jz/modle/entity/Group.java | 1 src/main/java/com/example/jz/service/CauseService.java | 23 +++ src/main/resources/application.yml | 2 12 files changed, 257 insertions(+), 60 deletions(-) diff --git a/src/main/java/com/example/jz/controller/CauseController.java b/src/main/java/com/example/jz/controller/CauseController.java index c0ec5f2..43fe51b 100644 --- a/src/main/java/com/example/jz/controller/CauseController.java +++ b/src/main/java/com/example/jz/controller/CauseController.java @@ -1,18 +1,16 @@ package com.example.jz.controller; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.api.ApiController; -import com.baomidou.mybatisplus.extension.api.R; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.example.jz.modle.entity.Cause; +import com.example.jz.modle.R; +import com.example.jz.modle.dto.CauseDto; import com.example.jz.service.CauseService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.io.Serializable; -import java.util.List; /** * 妗堜欢琛�(Cause)琛ㄦ帶鍒跺眰 @@ -22,6 +20,7 @@ */ @RestController @RequestMapping("cause") +@Api(tags = "妗堜欢鍖�") public class CauseController extends ApiController { /** * 鏈嶅姟瀵硅薄 @@ -29,60 +28,33 @@ @Resource private CauseService causeService; - /** - * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹� - * - * @param page 鍒嗛〉瀵硅薄 - * @param cause 鏌ヨ瀹炰綋 - * @return 鎵�鏈夋暟鎹� - */ - @GetMapping - public R selectAll(Page<Cause> page, Cause cause) { - return success(this.causeService.page(page, new QueryWrapper<>(cause))); + @ApiOperation(httpMethod = "POST", value = "娣诲姞妗堜欢") + @PostMapping("/addCause") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R addCause(@RequestBody CauseDto causeDto) { + return R.ok(causeService.addCause(causeDto)); } - /** - * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁 - * - * @param id 涓婚敭 - * @return 鍗曟潯鏁版嵁 - */ - @GetMapping("{id}") - public R selectOne(@PathVariable Serializable id) { - return success(this.causeService.getById(id)); + @ApiOperation(httpMethod = "POST", value = "淇敼妗堜欢") + @PostMapping("/updateCause") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R updateCause(@RequestBody CauseDto causeDto,Integer id) { + return R.ok(causeService.updateCause(causeDto,id)); } - /** - * 鏂板鏁版嵁 - * - * @param cause 瀹炰綋瀵硅薄 - * @return 鏂板缁撴灉 - */ - @PostMapping - public R insert(@RequestBody Cause cause) { - return success(this.causeService.save(cause)); + + @ApiOperation(httpMethod = "GET", value = "妗堜欢褰曞叆鍒楄〃") + @GetMapping("/getCauseList") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getCauseList(String cause, Integer status, Integer size, Integer current) { + return R.ok(causeService.getCauserListByCondition(cause, status, size, current)); } - /** - * 淇敼鏁版嵁 - * - * @param cause 瀹炰綋瀵硅薄 - * @return 淇敼缁撴灉 - */ - @PutMapping - public R update(@RequestBody Cause cause) { - return success(this.causeService.updateById(cause)); - } - - /** - * 鍒犻櫎鏁版嵁 - * - * @param idList 涓婚敭缁撳悎 - * @return 鍒犻櫎缁撴灉 - */ - @DeleteMapping - public R delete(@RequestParam("idList") List<Long> idList) { - return success(this.causeService.removeByIds(idList)); + @ApiOperation(httpMethod = "GET", value = "璐熻矗浜烘煡璇�") + @GetMapping("/getManagerList") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + public R getManagerList() { + return R.ok(causeService.getManagerList()); } } diff --git a/src/main/java/com/example/jz/modle/dto/CauseDto.java b/src/main/java/com/example/jz/modle/dto/CauseDto.java new file mode 100644 index 0000000..125558e --- /dev/null +++ b/src/main/java/com/example/jz/modle/dto/CauseDto.java @@ -0,0 +1,32 @@ +package com.example.jz.modle.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +@Data +@ApiModel(description = "娣诲姞妗堜欢瀛楁", value = "CauseDto") +public class CauseDto { + //妗堜欢缂栧彿 + @ApiModelProperty(dataType = "String", value = "妗堜欢缂栧彿") + private String number; + + //妗堜欢鍚嶇О + @ApiModelProperty(dataType = "String", value = "妗堜欢鍚嶇О") + private String name; + + //绗竴娆℃鍙戞椂闂� + @ApiModelProperty(dataType = "Date", value = "绗竴娆℃鍙戞椂闂�") +// @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss.SSS") + private Date firstTime; + + //璐熻矗浜篿d + @ApiModelProperty(dataType = "Integer", value = "璐熻矗浜篿d") + private Integer userId; + + //妗堜欢鎻忚堪 + @ApiModelProperty(dataType = "String", value = "妗堜欢鎻忚堪") + private String description; +} diff --git a/src/main/java/com/example/jz/modle/entity/Group.java b/src/main/java/com/example/jz/modle/entity/Group.java index 6628fac..37d9a98 100644 --- a/src/main/java/com/example/jz/modle/entity/Group.java +++ b/src/main/java/com/example/jz/modle/entity/Group.java @@ -8,6 +8,7 @@ import lombok.NoArgsConstructor; import lombok.experimental.Accessors; + import java.io.Serializable; import java.util.Date; diff --git a/src/main/java/com/example/jz/modle/entity/User.java b/src/main/java/com/example/jz/modle/entity/User.java index 04b73f0..20968c7 100644 --- a/src/main/java/com/example/jz/modle/entity/User.java +++ b/src/main/java/com/example/jz/modle/entity/User.java @@ -66,7 +66,7 @@ /** * ID */ - private String id; + private Integer id; public String getNickName() { @@ -173,13 +173,13 @@ this.status = status; } - public String getId() { + + public Integer getId() { return id; } - public void setId(String id) { + public void setId(Integer id) { this.id = id; } - } diff --git a/src/main/java/com/example/jz/modle/vo/CauseVo.java b/src/main/java/com/example/jz/modle/vo/CauseVo.java new file mode 100644 index 0000000..2aedd56 --- /dev/null +++ b/src/main/java/com/example/jz/modle/vo/CauseVo.java @@ -0,0 +1,47 @@ +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 = "CauseVo") +public class CauseVo { + + @ApiModelProperty(dataType = "String", value = "缇ょ粍鍚嶇О") + private Integer id; + + //妗堜欢缂栧彿 + @ApiModelProperty(dataType = "String", value = "妗堜欢缂栧彿") + private String number; + + //妗堜欢鍚嶇О + @ApiModelProperty(dataType = "String", value = "妗堜欢鍚嶇О") + private String name; + + //绗竴娆℃鍙戞椂闂� + @ApiModelProperty(dataType = "Date", value = "绗竴娆℃鍙戞椂闂�") + private Date firstTime; + + //鍒涘缓鏃堕棿 + @ApiModelProperty(dataType = "Date", value = "鍒涘缓鏃堕棿") + private Date ctime; + + //鐘舵�� 0鏈鏍� 1涓嶄簣绔嬫 2鍙楃悊涓� 3宸茬粨妗� + @ApiModelProperty(dataType = "String", value = "鐘舵�� 0鏈鏍� 1涓嶄簣绔嬫 2鍙楃悊涓� 3宸茬粨妗�") + private String status; + + //璐熻矗浜篿d + @ApiModelProperty(dataType = "Integer", value = "璐熻矗浜哄悕绉�") + private String userName; + + //妗堜欢鎻忚堪 + @ApiModelProperty(dataType = "String", value = "妗堜欢鎻忚堪") + private String description; + + //妗堜欢鎶ユ浜烘暟 + @ApiModelProperty(dataType = "Integer", value = "妗堜欢鎶ユ浜烘暟") + private Integer reportNumber; +} diff --git a/src/main/java/com/example/jz/modle/vo/MessageVo.java b/src/main/java/com/example/jz/modle/vo/MessageVo.java index 6900d92..f7796fc 100644 --- a/src/main/java/com/example/jz/modle/vo/MessageVo.java +++ b/src/main/java/com/example/jz/modle/vo/MessageVo.java @@ -3,6 +3,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; diff --git a/src/main/java/com/example/jz/modle/vo/ReportVo.java b/src/main/java/com/example/jz/modle/vo/ReportVo.java index b113d77..e99002e 100644 --- a/src/main/java/com/example/jz/modle/vo/ReportVo.java +++ b/src/main/java/com/example/jz/modle/vo/ReportVo.java @@ -24,4 +24,8 @@ @ApiModelProperty(value = "鎶ユ浜鸿韩浠借瘉鍙�",dataType = "String") //鎶ユ浜鸿韩浠借瘉鍙� private String idcard; + + //鎶ユ浜篿d + @ApiModelProperty(value = "id",dataType = "Integer") + private Integer id; } diff --git a/src/main/java/com/example/jz/modle/vo/UserVo.java b/src/main/java/com/example/jz/modle/vo/UserVo.java new file mode 100644 index 0000000..c85d373 --- /dev/null +++ b/src/main/java/com/example/jz/modle/vo/UserVo.java @@ -0,0 +1,18 @@ +package com.example.jz.modle.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(description = "璐熻矗浜�",value = "UserVo") +public class UserVo { + + //璐熻矗浜哄悕绉� + @ApiModelProperty(dataType = "String",value = "璐熻矗浜哄悕绉�") + private String userName; + + //璐熻矗浜篿d + @ApiModelProperty(dataType = "Integer",value = "璐熻矗浜篿d") + private Integer userId; +} diff --git a/src/main/java/com/example/jz/service/CauseService.java b/src/main/java/com/example/jz/service/CauseService.java index a7aba8a..8c6e0f9 100644 --- a/src/main/java/com/example/jz/service/CauseService.java +++ b/src/main/java/com/example/jz/service/CauseService.java @@ -1,7 +1,13 @@ package com.example.jz.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.example.jz.modle.PageParam; +import com.example.jz.modle.dto.CauseDto; import com.example.jz.modle.entity.Cause; +import com.example.jz.modle.vo.CauseVo; +import com.example.jz.modle.vo.UserVo; + +import java.util.List; /** * 妗堜欢琛�(Cause)琛ㄦ湇鍔℃帴鍙� @@ -11,5 +17,22 @@ */ public interface CauseService extends IService<Cause> { + /** + * @return java.lang.Integer + * @Description 娣诲姞妗堜欢 + * @Param [causeDto] + **/ + Integer addCause(CauseDto causeDto); + + /** + * @Description 鑾峰彇妗堜欢鏍规嵁鏉′欢 + * @Param [cause, status] + * @return java.util.List<com.example.jz.modle.vo.CauseVo> + **/ + PageParam<CauseVo> getCauserListByCondition(String cause, Integer status, Integer size, Integer current); + + List<UserVo> getManagerList(); + + Integer updateCause(CauseDto causeDto,Integer id); } diff --git a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java index c6af4f0..1e0d780 100644 --- a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java +++ b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java @@ -1,10 +1,29 @@ package com.example.jz.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.jz.dao.CauseDao; +import com.example.jz.dao.GroupDao; +import com.example.jz.dao.ReportDao; +import com.example.jz.dao.UserDao; +import com.example.jz.modle.PageParam; +import com.example.jz.modle.dto.CauseDto; import com.example.jz.modle.entity.Cause; +import com.example.jz.modle.entity.Group; +import com.example.jz.modle.entity.Report; +import com.example.jz.modle.entity.User; +import com.example.jz.modle.vo.CauseVo; +import com.example.jz.modle.vo.UserVo; import com.example.jz.service.CauseService; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; /** * 妗堜欢琛�(Cause)琛ㄦ湇鍔″疄鐜扮被 @@ -15,5 +34,83 @@ @Service("causeService") public class CauseServiceImpl extends ServiceImpl<CauseDao, Cause> implements CauseService { + @Resource + CauseDao causeDao; + @Resource + UserDao userDao; + @Resource + ReportDao reportDao; + @Resource + CauseService causeService; + @Resource + GroupDao groupDao; + + @Override + public Integer addCause(CauseDto causeDto) { + //鍒涘缓妗堜欢 + Cause cause = new Cause(); + BeanUtils.copyProperties(causeDto, cause); + cause.setCtime(new Date()); + causeService.save(cause); + //鍒涘缓缇ょ粍 + Group group = new Group(); + group.setCtime(new Date()); + group.setGroupName(causeDto.getName()); + group.setUserId(causeDto.getUserId()); + group.setCauseId(cause.getId()); + return groupDao.insert(group); + } + + @Override + public PageParam<CauseVo> getCauserListByCondition(String cause, Integer status, Integer size, Integer current) { + QueryWrapper<Cause> causeQueryWrapper = new QueryWrapper<>(); + if (StringUtils.isNotBlank(cause)) { + causeQueryWrapper.and(a -> a.like(StringUtils.isNotBlank(cause), "number", cause) + .or(StringUtils.isNotBlank(cause)) + .like(StringUtils.isNotBlank(cause), "name", cause)); + } + if (status != null) { + causeQueryWrapper.eq("status", status); + } + causeQueryWrapper.orderByDesc("ctime"); + PageParam<Cause> causePageParam = new PageParam<>(); + if (size != null) { + causePageParam.setSize(size); + } + if (current != null) { + causePageParam.setCurrent(current); + } + PageParam<Cause> causePage = causeDao.selectPage(causePageParam, causeQueryWrapper); + List<CauseVo> causeVos = causePage.getRecords().stream().map( + a -> { + CauseVo causeVo = new CauseVo(); + BeanUtils.copyProperties(a, causeVo); + causeVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId())).getRealName()); + causeVo.setReportNumber(reportDao.selectCount(new QueryWrapper<Report>().eq("cause_id", a.getId()))); + return causeVo; + }).collect(Collectors.toList()); + PageParam<CauseVo> causeVoPageParam = new PageParam<>(); + BeanUtils.copyProperties(causePage, causeVoPageParam); + causeVoPageParam.setRecords(causeVos); + return causeVoPageParam; + } + + @Override + public List<UserVo> getManagerList() { + return userDao.selectList(new QueryWrapper<User>().eq("role", 1)).stream().map(a -> { + UserVo userVo = new UserVo(); + userVo.setUserId(a.getId()); + userVo.setUserName(a.getRealName()); + return userVo; + }).collect(Collectors.toList()); + } + + @Override + public Integer updateCause(CauseDto causeDto,Integer id) { + Cause cause = new Cause(); + BeanUtils.copyProperties(causeDto,cause); + cause.setId(id); + return causeDao.updateById(cause); + } } diff --git a/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java index 8745bdf..6f23222 100644 --- a/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java +++ b/src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java @@ -66,6 +66,7 @@ @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 -> { @@ -75,6 +76,7 @@ String regex = "(?<=[\\d]{3})\\d(?=[\\d]{4})"; reportVo.setIdcard(user.getUserIdcard().replaceAll(regex, "*")); reportVo.setMobile(user.getUserMobile()); + reportVo.setId(a.getId()); reportVos.add(reportVo); }); return reportVos; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 9681f9d..c9fb515 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -44,4 +44,4 @@ id-type: auto field-strategy: NOT_NULL configuration: - log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl \ No newline at end of file -- Gitblit v1.8.0