From 3c884ccd7b51edf3b36840bf99de5edaa41a38a7 Mon Sep 17 00:00:00 2001 From: 张天森 <1292933220@qq.com> Date: 星期三, 12 十月 2022 19:05:28 +0800 Subject: [PATCH] 三说会堂事件流程处理 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java | 104 +++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 87 insertions(+), 17 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java index b477027..1470967 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java @@ -4,9 +4,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.community.sanshuo.ComSanshuoExpertDTO; +import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.user.AdministratorsUserVO; +import com.panzhihua.common.service.user.UserService; +import com.panzhihua.common.utlis.Snowflake; +import com.panzhihua.service_community.entity.ComEvent; import com.panzhihua.service_community.entity.ComSanshuoExpert; import com.panzhihua.service_community.service.ComSanShuoExpertService; +import com.panzhihua.service_community.service.IComEventService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -15,6 +21,10 @@ import javax.annotation.Resource; import javax.xml.crypto.Data; import java.util.Date; +import java.util.List; + +import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; /** * 三说会堂调解专家控制器 @@ -25,6 +35,10 @@ @Resource private ComSanShuoExpertService comSanShuoExpertService; + @Resource + private UserService userService; + @Resource + private IComEventService comEventService; /** * 添加专家 @@ -32,15 +46,20 @@ @PostMapping public R add(@RequestBody ComSanshuoExpertDTO comSanshuoExpertDTO){ comSanshuoExpertDTO.setCreateBy(this.getLoginUserInfo().getName()); - return R.ok(comSanShuoExpertService.addExpert(comSanshuoExpertDTO)); + return comSanShuoExpertService.addOrUpdateExpert(comSanshuoExpertDTO); + } + + @GetMapping("/detail") + public R detail(@RequestParam Long id){ + return R.ok(comSanShuoExpertService.getById(id)); } /** * 小程序获取可选择专家 * */ - @GetMapping("appletsList") - public R appList(){ - return R.ok(comSanShuoExpertService.list(new QueryWrapper<ComSanshuoExpert>().eq("status",1).eq("del_flag",1))); + @GetMapping("/appletsList") + public R appList(@RequestParam (value = "type",required = false)Integer type,@RequestParam(value = "id",required = false)Long id){ + return comSanShuoExpertService.selectExpertList(type, id,this.getLoginUserInfo().getCommunityId()); } /** @@ -48,35 +67,39 @@ * */ @PutMapping public R update(@RequestBody ComSanshuoExpertDTO comSanshuoExpertDTO){ - ComSanshuoExpert expert=new ComSanshuoExpert(); - BeanUtil.copyProperties(comSanshuoExpertDTO,expert); - expert.setUpdateTime(new Date()); - return R.ok(comSanShuoExpertService.updateById(expert)); + return R.ok(comSanShuoExpertService.addOrUpdateExpert(comSanshuoExpertDTO)); } + /** * 后台获取列表 * */ @GetMapping("/backstageList") - public R backList(@RequestParam(value = "keyWord",required = false)@ApiParam("搜索关键字") String keyWord, + public R backList(@RequestParam(value = "keyWord",required = false) String keyWord, @RequestParam(value = "page",required = false)Integer page, @RequestParam(value = "size",required = false)Integer size){ - //TODO 获取当前账号级别确定范围 - Integer range=null; - Long id=null; - return R.ok(comSanShuoExpertService.expertPage(keyWord,page,size,range,id)); + LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); + return comSanShuoExpertService.expertPage(keyWord,page,size,loginUserInfo); } /** * 删除 * */ - @DeleteMapping("/remove/{id}") - public R remove(@PathVariable("id")Long id){ - //TODO 是否有为解决事件 + @DeleteMapping("/remove") + public R remove(@RequestParam("id")Long id){ + List<ComEvent> list = comEventService.list(new QueryWrapper<ComEvent>().lambda().eq(ComEvent::getSpecialistId, id).in(ComEvent::getEventProcessStatus, (1), (2), (5))); + if (list.size()!=0){ + return R.fail("有未调解完成事件,无法删除!"); + } ComSanshuoExpert expert = comSanShuoExpertService.getById(id); expert.setStatus(0); expert.setDelFlag(0); - return R.ok(comSanShuoExpertService.updateById(expert)); + boolean b = comSanShuoExpertService.updateById(expert); + if (b){ + //删除专家账号的权限 + userService.removeExpertRole(expert.getPhone()); + } + return R.ok(); } /** @@ -86,6 +109,53 @@ public R resetPassword(@RequestBody ComSanshuoExpertDTO comSanshuoExpertDTO){ ComSanshuoExpert expert = comSanShuoExpertService.getById(comSanshuoExpertDTO.getId()); expert.setPassword(comSanshuoExpertDTO.getPassword()); + userService.sanShuoResetPassword(comSanshuoExpertDTO.getAccount(),comSanshuoExpertDTO.getPassword() ); return R.ok(comSanShuoExpertService.updateById(expert)); } + + /** + * 专家风采 + * */ + @GetMapping("/expertShow") + public R expertShow(){ + return comSanShuoExpertService.expertShow(); + } + + + + + + /** + * 专家范围 + * */ + @GetMapping("/expertRange") + public R expertRange(){ + LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); + return comSanShuoExpertService.expertRange(loginUserInfo); + } + + /** + * 专家风采列表 + * */ + @GetMapping("/expertShowList") + public R expertShowList(@RequestParam(value = "level",required = false)Integer level, + @RequestParam(value = "id",required = false)Long id){ + return comSanShuoExpertService.expertShowList(level,id); + } + + /** + * 是否为专家登陆小程序 + * */ + @GetMapping("/checkExpert") + public R checkExpert(@RequestParam("number") String number){ + ComSanshuoExpert expert = comSanShuoExpertService.getOne(new QueryWrapper<ComSanshuoExpert>().lambda().eq(ComSanshuoExpert::getPhone, number)); + if (nonNull(expert)){ + return R.ok(); + } + return R.fail(); + } + + + + } -- Gitblit v1.7.1