DeviceFaultInfoFlowServiceImpl.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. package com.xy.service;
  2. import cn.hutool.core.collection.CollUtil;
  3. import cn.hutool.core.util.StrUtil;
  4. import cn.hutool.system.SystemUtil;
  5. import com.xy.dto.SysWorkUser.ListDto;
  6. import com.xy.dto.SysWorkUser.SysWorkVo;
  7. import com.xy.entity.DeviceFaultInfoFlow;
  8. import com.xy.error.CommRuntimeException;
  9. import com.xy.mapper.DeviceFaultInfoFlowMapper;
  10. import com.xy.service.DeviceFaultInfoFlowService;
  11. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  12. import com.xy.utils.*;
  13. import io.swagger.annotations.ApiModelProperty;
  14. import lombok.RequiredArgsConstructor;
  15. import org.springframework.stereotype.Service;
  16. import io.swagger.annotations.Api;
  17. import lombok.AllArgsConstructor;
  18. import java.util.List;
  19. import com.xy.dto.DeviceFaultInfoFlowDto;
  20. import org.springframework.web.bind.annotation.RequestBody;
  21. import org.springframework.web.bind.annotation.PostMapping;
  22. import io.swagger.annotations.ApiOperation;
  23. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  24. import com.baomidou.mybatisplus.core.metadata.IPage;
  25. import org.springframework.validation.annotation.Validated;
  26. import static com.xy.utils.Beans.copy;
  27. import static com.xy.utils.PlusBeans.toIPage;
  28. import static com.xy.utils.PlusBeans.toPageBean;
  29. /**
  30. * <p>
  31. * 设备故障处理流程 服务实现类
  32. * </p>
  33. *
  34. * @author 谭斌
  35. * @since 2024-01-16
  36. */
  37. @Service
  38. @RequiredArgsConstructor
  39. @Api(tags = "设备故障处理流程")
  40. public class DeviceFaultInfoFlowServiceImpl extends ServiceImpl<DeviceFaultInfoFlowMapper, DeviceFaultInfoFlow> implements DeviceFaultInfoFlowService {
  41. private final SysWorkUserService sysWorkUserService;
  42. @PostMapping("obj")
  43. @ApiOperation("对象查询")
  44. public R<DeviceFaultInfoFlowDto.Vo> obj(@RequestBody DeviceFaultInfoFlowDto.Vo vo) {
  45. DeviceFaultInfoFlowDto.SelectList selectList = copy(DeviceFaultInfoFlowDto.SelectList.class, vo);
  46. List<DeviceFaultInfoFlowDto.Vo> list = list(selectList).getData();
  47. if(Emptys.check(list)) {
  48. return R.ok(list.get(0));
  49. }
  50. return R.ok();
  51. }
  52. @PostMapping("list")
  53. @ApiOperation("集合查询")
  54. public R<List<DeviceFaultInfoFlowDto.Vo>> list(@RequestBody DeviceFaultInfoFlowDto.SelectList selectList) {
  55. LambdaQueryWrapper<DeviceFaultInfoFlow> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(selectList, DeviceFaultInfoFlow.class).build();
  56. lambdaQueryWrapper.orderByDesc(DeviceFaultInfoFlow::getCreateTime);
  57. List<DeviceFaultInfoFlow> list = list(lambdaQueryWrapper);
  58. return R.ok(copy(DeviceFaultInfoFlowDto.Vo.class, list));
  59. }
  60. @PostMapping("page")
  61. @ApiOperation("分页查询")
  62. public R<PageBean<DeviceFaultInfoFlowDto.Vo>> page(@RequestBody DeviceFaultInfoFlowDto.Page page) {
  63. PageBean pageBean = page.getPage();
  64. LambdaQueryWrapper<DeviceFaultInfoFlow> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(page, DeviceFaultInfoFlow.class).build();
  65. IPage<DeviceFaultInfoFlow> iPage = page(toIPage(pageBean), lambdaQueryWrapper);
  66. return R.ok(toPageBean(DeviceFaultInfoFlowDto.Vo.class, iPage));
  67. }
  68. @PostMapping("save")
  69. @ApiOperation("添加")
  70. public R save(@RequestBody @Validated DeviceFaultInfoFlowDto.Save save) {
  71. String content = save.getContent();
  72. if(StrUtil.isEmpty(content)){
  73. throw new CommRuntimeException("回复内容不可为空");
  74. }
  75. DeviceFaultInfoFlow saveInfo = copy(DeviceFaultInfoFlow.class, save);
  76. Long operatorId = AuthorizeUtils.getLoginId(Long.class);
  77. Long sysId = AuthorizeUtils.getSysId();
  78. List<String> roleCodes = AuthorizeUtils.getRoleCodes(sysId);
  79. // List<Long> roleIds = AuthorizeUtils.getRoleIds(sysId);
  80. R<List<SysWorkVo>> listR = R.feignCheck(sysWorkUserService.list(new ListDto().setId(CollUtil.newArrayList(operatorId)).setSysId(sysId)));
  81. List<SysWorkVo> data = listR.getData();
  82. SysWorkVo sysWorkVo = data.get(0);
  83. String roleNames = CollUtil.join(sysWorkVo.getRoleNames(), StrUtil.COMMA);
  84. saveInfo.setOperatorRoleName(roleNames);
  85. saveInfo.setOperatorRole( CollUtil.join(roleCodes, StrUtil.COMMA));
  86. saveInfo.setOperatorId( operatorId);
  87. save(saveInfo);
  88. return R.ok();
  89. }
  90. @PostMapping("update")
  91. @ApiOperation("修改")
  92. public R update(@RequestBody @Validated DeviceFaultInfoFlowDto.Update update) {
  93. DeviceFaultInfoFlow updateInfo = copy(DeviceFaultInfoFlow.class, update);
  94. updateById(updateInfo);
  95. return R.ok();
  96. }
  97. }