feat: 故障管理-专家库

master
李小林 6 months ago
parent 15fd7e55eb
commit 2febdb4218
  1. 2
      src/main/java/com/bellmann/common/constant/SystemConstants.java
  2. 50
      src/main/java/com/bellmann/controller/ExpertSuggestController.java
  3. 7
      src/main/java/com/bellmann/controller/FaultController.java
  4. 20
      src/main/java/com/bellmann/converter/ExpertSuggestConverter.java
  5. 10
      src/main/java/com/bellmann/mapper/ExpertSuggestMapper.java
  6. 23
      src/main/java/com/bellmann/model/entity/ExpertSuggest.java
  7. 6
      src/main/java/com/bellmann/model/form/AlgForm.java
  8. 13
      src/main/java/com/bellmann/model/form/ExpertSuggestForm.java
  9. 13
      src/main/java/com/bellmann/model/vo/ExpertSuggestVO.java
  10. 19
      src/main/java/com/bellmann/service/ExpertSuggestService.java
  11. 76
      src/main/java/com/bellmann/service/impl/ExpertSuggestServiceImpl.java
  12. 10
      src/main/resources/mapper/ExpertSuggestMapper.xml

@ -49,4 +49,6 @@ public interface SystemConstants {
public static final String DOWNLOAD_INFO_REGEX = "DownloadInfo = (.*)"; public static final String DOWNLOAD_INFO_REGEX = "DownloadInfo = (.*)";
public static final String SPEED_FAIL = "测速失败,请查看操作日志"; public static final String SPEED_FAIL = "测速失败,请查看操作日志";
public static final String HOME = "/home/"; public static final String HOME = "/home/";
public static final String EXPERT_SUGGEST_ID = "1001";
} }

@ -0,0 +1,50 @@
package com.bellmann.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bellmann.common.base.BasePageQuery;
import com.bellmann.common.result.PageResult;
import com.bellmann.common.result.Result;
import com.bellmann.model.form.ExpertSuggestForm;
import com.bellmann.model.vo.ExpertSuggestVO;
import com.bellmann.service.ExpertSuggestService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
@Tag(name = "35.专家库")
@RestController
@RequestMapping("/api/expert/v1")
@RequiredArgsConstructor
public class ExpertSuggestController {
private final ExpertSuggestService expertSuggestService;
@Operation(summary = "专家库查询")
@PostMapping("/query")
public PageResult<ExpertSuggestVO> page(@RequestBody BasePageQuery query){
Page<ExpertSuggestVO> result = expertSuggestService.page(query);
return PageResult.success(result);
}
@Operation(summary = "专家库查单条记录")
@GetMapping("/{code}")
public Result<ExpertSuggestForm> getSuggestById(@PathVariable String code){
ExpertSuggestForm result = expertSuggestService.getSuggestById(code);
return Result.success(result);
}
@Operation(summary = "专家库新增")
@PostMapping("/add")
public Result<String> add(@RequestBody ExpertSuggestForm form){
return expertSuggestService.add(form);
}
@Operation(summary = "专家库修改")
@PostMapping("/edit")
public Result<String> edit(@RequestBody ExpertSuggestForm form){
return expertSuggestService.edit(form);
}
@Operation(summary = "专家库删除")
@DeleteMapping("/delete/{code}")
public Result<String> delete(@PathVariable String code){
return expertSuggestService.delete(code);
}
}

@ -8,7 +8,6 @@ import com.bellmann.model.query.FaultQuery;
import com.bellmann.model.vo.FaultBasicInfoVO; import com.bellmann.model.vo.FaultBasicInfoVO;
import com.bellmann.model.vo.FaultDiagnosisResult; import com.bellmann.model.vo.FaultDiagnosisResult;
import com.bellmann.model.vo.FaultQueryVO; import com.bellmann.model.vo.FaultQueryVO;
import com.bellmann.security.util.SecurityUtils;
import com.bellmann.service.DeviceStaticService; import com.bellmann.service.DeviceStaticService;
import com.bellmann.service.FaultService; import com.bellmann.service.FaultService;
import com.bellmann.service.RemoteOperateTaskService; import com.bellmann.service.RemoteOperateTaskService;
@ -57,13 +56,13 @@ public class FaultController {
@Operation(summary = "业务/终端状态") @Operation(summary = "业务/终端状态")
@GetMapping("/basic_info/service_status") @GetMapping("/basic_info/service_status")
public Result<Map<String,String>> serviceStatus(@RequestParam Long devId, @RequestParam String remote){ public Result<Map<String,String>> serviceStatus(@RequestParam Long devId, @RequestParam String remote){
Long taskId = remoteOperateTaskService.sendTaskByDevId(devId, SecurityUtils.getUsername(),remote); // Long taskId = remoteOperateTaskService.sendTaskByDevId(devId, SecurityUtils.getUsername(),remote);
Map<String,String> map = faultService.getServiceStatusResult(taskId); Map<String,String> map = faultService.getServiceStatusResult(17675863L);
return Result.success(map); return Result.success(map);
} }
@Operation(summary = "修改ALG功能") @Operation(summary = "修改ALG功能")
@PostMapping("/update-alg") @PostMapping("/update-alg")
public Result<String> updateAlg(@RequestParam Long devId,@RequestBody @Valid AlgForm algForm){ public Result<String> updateAlg(@RequestParam Long devId,@RequestBody AlgForm algForm){
Long taskId = remoteOperateTaskService.updateAlg(devId,algForm); Long taskId = remoteOperateTaskService.updateAlg(devId,algForm);
boolean isSuccess = deviceStaticService.taskIsSuccess(taskId); boolean isSuccess = deviceStaticService.taskIsSuccess(taskId);
if (isSuccess){ if (isSuccess){

@ -0,0 +1,20 @@
package com.bellmann.converter;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bellmann.model.entity.ExpertSuggest;
import com.bellmann.model.form.ExpertSuggestForm;
import com.bellmann.model.vo.ExpertSuggestVO;
import org.mapstruct.Mapper;
@Mapper(componentModel = "spring")
public interface ExpertSuggestConverter {
Page<ExpertSuggestVO> entityPage2VoPage(Page<ExpertSuggest> expertSuggestPage);
ExpertSuggest form2Entity(ExpertSuggestForm form);
ExpertSuggestForm entity2Form(ExpertSuggest expertSuggest);
}

@ -0,0 +1,10 @@
package com.bellmann.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bellmann.model.entity.ExpertSuggest;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ExpertSuggestMapper extends BaseMapper<ExpertSuggest> {
String getMaxCode();
}

@ -0,0 +1,23 @@
package com.bellmann.model.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@Data
@TableName("itms_expert_suggest")
public class ExpertSuggest implements Serializable {
private static final long serialVersionUID = -7349076596171458368L;
private String expertSuggestId;
private String expertSuggestText;
private String expertSuggestRemark1;
private String expertSuggestRemark2;
private String expertSuggestDesc;
}

@ -1,20 +1,26 @@
package com.bellmann.model.form; package com.bellmann.model.form;
import lombok.Data; import lombok.Data;
import lombok.ToString;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@Data @Data
@ToString
public class AlgForm { public class AlgForm {
@NotBlank(message = "必填参数不能为空") @NotBlank(message = "必填参数不能为空")
private String h323Enable; private String h323Enable;
@NotBlank(message = "必填参数不能为空") @NotBlank(message = "必填参数不能为空")
private String sIPEnable; private String sIPEnable;
@NotBlank(message = "必填参数不能为空") @NotBlank(message = "必填参数不能为空")
private String rTSPEnable; private String rTSPEnable;
@NotBlank(message = "必填参数不能为空") @NotBlank(message = "必填参数不能为空")
private String l2TPEnable; private String l2TPEnable;
@NotBlank(message = "必填参数不能为空") @NotBlank(message = "必填参数不能为空")
private String iPSECEnable; private String iPSECEnable;
} }

@ -0,0 +1,13 @@
package com.bellmann.model.form;
import lombok.Data;
@Data
public class ExpertSuggestForm {
private String expertSuggestId;
private String ExpertSuggestText;
private String ExpertSuggestDesc;
}

@ -0,0 +1,13 @@
package com.bellmann.model.vo;
import lombok.Data;
@Data
public class ExpertSuggestVO {
private String expertSuggestId;
private String expertSuggestText;
private String expertSuggestDesc;
}

@ -0,0 +1,19 @@
package com.bellmann.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bellmann.common.base.BasePageQuery;
import com.bellmann.common.result.Result;
import com.bellmann.model.form.ExpertSuggestForm;
import com.bellmann.model.vo.ExpertSuggestVO;
public interface ExpertSuggestService {
Page<ExpertSuggestVO> page(BasePageQuery query);
Result<String> add(ExpertSuggestForm form);
Result<String> edit(ExpertSuggestForm form);
Result<String> delete(String code);
ExpertSuggestForm getSuggestById(String code);
}

@ -0,0 +1,76 @@
package com.bellmann.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bellmann.common.base.BasePageQuery;
import com.bellmann.common.constant.SystemConstants;
import com.bellmann.common.result.Result;
import com.bellmann.converter.ExpertSuggestConverter;
import com.bellmann.mapper.ExpertSuggestMapper;
import com.bellmann.model.entity.ExpertSuggest;
import com.bellmann.model.form.ExpertSuggestForm;
import com.bellmann.model.vo.ExpertSuggestVO;
import com.bellmann.service.ExpertSuggestService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class ExpertSuggestServiceImpl implements ExpertSuggestService {
private final ExpertSuggestMapper expertSuggestMapper;
private final ExpertSuggestConverter expertSuggestConverter;
@Override
public Page<ExpertSuggestVO> page(BasePageQuery query) {
int pageSize = query.getPageSize();
int pageNum = query.getPageNum();
Page<ExpertSuggest> pageEntity = new Page<>(pageNum, pageSize);
Page<ExpertSuggest> expertSuggestPage = expertSuggestMapper.selectPage(pageEntity, new QueryWrapper<ExpertSuggest>()
.select("expert_suggest_id", "expert_suggest_text", "expert_suggest_desc")
);
return expertSuggestConverter.entityPage2VoPage(expertSuggestPage);
}
@Override
public Result<String> add(ExpertSuggestForm form) {
String code = expertSuggestMapper.getMaxCode();
if (code == null) {
form.setExpertSuggestId(SystemConstants.EXPERT_SUGGEST_ID);
} else {
int intCode = Integer.parseInt(code) + 1;
form.setExpertSuggestId(Integer.toString(intCode));
}
ExpertSuggest expertSuggest = expertSuggestConverter.form2Entity(form);
expertSuggestMapper.insert(expertSuggest);
return Result.success();
}
@Override
public Result<String> edit(ExpertSuggestForm form) {
expertSuggestMapper.update(null,new LambdaUpdateWrapper<ExpertSuggest>()
.eq(ExpertSuggest::getExpertSuggestId,form.getExpertSuggestId())
.set(ExpertSuggest::getExpertSuggestText,form.getExpertSuggestText())
.set(ExpertSuggest::getExpertSuggestDesc,form.getExpertSuggestDesc())
);
return Result.success();
}
@Override
public Result<String> delete(String code) {
expertSuggestMapper.delete(new LambdaQueryWrapper<ExpertSuggest>()
.eq(ExpertSuggest::getExpertSuggestId,code)
);
return Result.success();
}
@Override
public ExpertSuggestForm getSuggestById(String code) {
ExpertSuggest expertSuggest = expertSuggestMapper.selectOne(new LambdaQueryWrapper<ExpertSuggest>()
.eq(ExpertSuggest::getExpertSuggestId, code)
);
return expertSuggestConverter.entity2Form(expertSuggest);
}
}

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bellmann.mapper.ExpertSuggestMapper">
<select id="getMaxCode" resultType="java.lang.String">
select max(EXPERT_SUGGEST_ID) EXPERT_SUGGEST_ID from ITMS_EXPERT_SUGGEST
</select>
</mapper>
Loading…
Cancel
Save