kaiyu
2021-06-18 79f939c90e1cac1c15bfdd49671acc85544043ec
screen-api
增加查询组织型号因子单位以及显示单位,报警等级接口
6 files added
3 files modified
302 ■■■■■ changed files
screen-manage/src/main/java/com/moral/api/controller/OrganizationController.java 6 ●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/controller/OrganizationUnitAlarmController.java 50 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java 26 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmQueryDTO.java 30 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmQueryForm.java 33 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/vo/organizationUnitAlarm/OrganizationUnitAlarmQueryVO.java 80 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/vo/organizationUnitAlarm/OrganizationUnitAlarmVO.java 28 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java 10 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java 39 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/controller/OrganizationController.java
@@ -32,7 +32,7 @@
    OrganizationService organizationService;
    @PostMapping("insert")
    public ResultMessage insert(@RequestBody OrganizationInsertForm form, HttpServletRequest request) {
    public ResultMessage insert(@RequestBody OrganizationInsertForm form) {
        //判断是否缺少参数
        if (!form.valid())
@@ -52,7 +52,7 @@
    }
    @PostMapping("update")
    public ResultMessage update(@RequestBody OrganizationUpdateForm form, HttpServletRequest request) {
    public ResultMessage update(@RequestBody OrganizationUpdateForm form) {
        //判断是否缺少参数
        if (!form.valid())
@@ -72,7 +72,7 @@
    }
    @PostMapping("delete")
    public ResultMessage delete(@RequestBody OrganizationDeleteForm form,HttpServletRequest request) {
    public ResultMessage delete(@RequestBody OrganizationDeleteForm form) {
        //判断是否缺少参数
        if (!form.valid())
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
screen-manage/src/main/java/com/moral/api/controller/OrganizationUnitAlarmController.java
New file
@@ -0,0 +1,50 @@
package com.moral.api.controller;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmQueryDTO;
import com.moral.api.pojo.form.organizationUnitAlarm.OrganizationUnitAlarmQueryForm;
import com.moral.api.pojo.vo.organizationUnitAlarm.OrganizationUnitAlarmQueryVO;
import com.moral.api.service.OrganizationUnitAlarmService;
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @ClassName OrganizationUnitAlarmController
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:20
 * @Version TODO
 **/
@Slf4j
@Api(tags = {"组织显示单位报警控制器"})
@CrossOrigin(origins = "*", maxAge = 3600)
@RestController
@RequestMapping("/organizationUnitAlarm")
public class OrganizationUnitAlarmController {
    @Autowired
    OrganizationUnitAlarmService organizationUnitAlarmService;
    @GetMapping("query")
    public ResultMessage query(OrganizationUnitAlarmQueryForm form){
        //判断是否缺少参数
        if (!form.valid())
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
        //处理查询业务
        OrganizationUnitAlarmQueryDTO dto = organizationUnitAlarmService.query(form);
        //转换前端显示参数
        OrganizationUnitAlarmQueryVO vo = OrganizationUnitAlarmQueryVO.convert(dto);
        return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
    }
}
screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java
New file
@@ -0,0 +1,26 @@
package com.moral.api.pojo.dto.organizationUnitAlarm;
import com.moral.api.entity.OrganizationUnitAlarm;
import lombok.AllArgsConstructor;
import lombok.Data;
/**
 * @ClassName OrganizationUnitAlarmDTO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:03
 * @Version TODO
 **/
@Data
public class OrganizationUnitAlarmDTO {
    private Integer code;
    private String msg;
    private OrganizationUnitAlarm organizationUnitAlarm;
    public OrganizationUnitAlarmDTO(OrganizationUnitAlarm organizationUnitAlarm) {
        this.organizationUnitAlarm = organizationUnitAlarm;
    }
}
screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmQueryDTO.java
New file
@@ -0,0 +1,30 @@
package com.moral.api.pojo.dto.organizationUnitAlarm;
import com.moral.api.entity.OrganizationUnitAlarm;
import lombok.Data;
import java.util.List;
/**
 * @ClassName OrganizationUnitAlarmQueryDTO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:02
 * @Version TODO
 **/
@Data
public class OrganizationUnitAlarmQueryDTO {
    private Integer code;
    private String msg;
    private long pages;
    private long total;
    private long current;
    private long size;
    private List<OrganizationUnitAlarmDTO> organizationUnitAlarmDTOS;
}
screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmQueryForm.java
New file
@@ -0,0 +1,33 @@
package com.moral.api.pojo.form.organizationUnitAlarm;
import lombok.Data;
import org.springframework.util.ObjectUtils;
/**
 * @ClassName OrganizationUnitAlarmQueryForm
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:09
 * @Version TODO
 **/
@Data
public class OrganizationUnitAlarmQueryForm {
    private Integer organizationId;
    private Integer versionId;
    private Integer page;
    private Integer size;
    public boolean valid(){
        if(ObjectUtils.isEmpty(page)||
                ObjectUtils.isEmpty(size)||
                ObjectUtils.isEmpty(versionId)||
                ObjectUtils.isEmpty(organizationId))
            return false;
        return true;
    }
}
screen-manage/src/main/java/com/moral/api/pojo/vo/organizationUnitAlarm/OrganizationUnitAlarmQueryVO.java
New file
@@ -0,0 +1,80 @@
package com.moral.api.pojo.vo.organizationUnitAlarm;
import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.moral.api.entity.OrganizationUnitAlarm;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmDTO;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmQueryDTO;
import com.moral.constant.ResponseCodeEnum;
import lombok.Data;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.List;
/**
 * @ClassName organizationUnitAlarmQueryVO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:46
 * @Version TODO
 **/
@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class OrganizationUnitAlarmQueryVO {
    private long pages;
    private long total;
    private long current;
    private long size;
    private List<OrganizationUnitAlarmVO> organizations;
    public static OrganizationUnitAlarmQueryVO convert(OrganizationUnitAlarmQueryDTO dto) {
        if (dto.getCode() != ResponseCodeEnum.SUCCESS.getCode())
            return null;
        OrganizationUnitAlarmQueryVO vo = new OrganizationUnitAlarmQueryVO();
        long pages = dto.getPages();
        long size = dto.getSize();
        long current = dto.getCurrent();
        long total = dto.getTotal();
        List<OrganizationUnitAlarmDTO> organizationUnitAlarmDTOS = dto.getOrganizationUnitAlarmDTOS();
        List<OrganizationUnitAlarmVO> organizations = new ArrayList<>();
        for (OrganizationUnitAlarmDTO organizationUnitAlarmDTO : organizationUnitAlarmDTOS) {
            organizations.add(convertToQueryPage(organizationUnitAlarmDTO));
        }
        vo.setCurrent(current);
        vo.setPages(pages);
        vo.setSize(size);
        vo.setTotal(total);
        vo.setOrganizations(organizations);
        return vo;
    }
    private static OrganizationUnitAlarmVO convertToQueryPage(OrganizationUnitAlarmDTO dto) {
        OrganizationUnitAlarmVO vo = new OrganizationUnitAlarmVO();
        OrganizationUnitAlarm organizationUnitAlarm = dto.getOrganizationUnitAlarm();
        vo.setId(organizationUnitAlarm.getId());
        vo.setSensorCode(organizationUnitAlarm.getSensorCode());
        vo.setUnitKey(organizationUnitAlarm.getUnitKey());
        vo.setShowUnitKey(organizationUnitAlarm.getShowUnitKey());
        //alarmLevel Json字符串转集合
        if (!ObjectUtils.isEmpty(organizationUnitAlarm.getAlarmLevel())) {
            StringBuilder alarmLevelStr = new StringBuilder(organizationUnitAlarm.getAlarmLevel());
            List<Integer> alarmLevel = new ArrayList<>();
            alarmLevelStr.deleteCharAt(0);
            alarmLevelStr.deleteCharAt(alarmLevelStr.length() - 1);
            String[] alarmLevels = alarmLevelStr.toString().replace(" ", "").split(",");
            for (String level : alarmLevels) {
                alarmLevel.add(Integer.parseInt(level));
            }
            vo.setAlarmLevel(alarmLevel);
        }
        return vo;
    }
}
screen-manage/src/main/java/com/moral/api/pojo/vo/organizationUnitAlarm/OrganizationUnitAlarmVO.java
New file
@@ -0,0 +1,28 @@
package com.moral.api.pojo.vo.organizationUnitAlarm;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;
import java.lang.reflect.Array;
import java.util.List;
/**
 * @ClassName OgrniazationUnitAlarmVO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/6/18 13:46
 * @Version TODO
 **/
@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class OrganizationUnitAlarmVO {
    private Integer id;
    private String sensorCode;
    private String unitKey;
    private String showUnitKey;
    private List<Integer> alarmLevel;
}
screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java
@@ -2,6 +2,8 @@
import com.moral.api.entity.OrganizationUnitAlarm;
import com.baomidou.mybatisplus.extension.service.IService;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmQueryDTO;
import com.moral.api.pojo.form.organizationUnitAlarm.OrganizationUnitAlarmQueryForm;
/**
 * <p>
@@ -13,4 +15,12 @@
 */
public interface OrganizationUnitAlarmService extends IService<OrganizationUnitAlarm> {
    /**
    * @Description: 根据组织id,型号id查询组织对应型号拥有的因子
            * @Param: [OrganizationUnitAlarmQueryForm form]
            * @return: com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmQueryDTO
            * @Author: 陈凯裕
            * @Date: 2021/6/18
            */
    OrganizationUnitAlarmQueryDTO query(OrganizationUnitAlarmQueryForm form);
}
screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java
@@ -1,10 +1,21 @@
package com.moral.api.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.moral.api.entity.OrganizationUnitAlarm;
import com.moral.api.mapper.OrganizationUnitAlarmMapper;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmDTO;
import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmQueryDTO;
import com.moral.api.pojo.form.organizationUnitAlarm.OrganizationUnitAlarmQueryForm;
import com.moral.api.service.OrganizationUnitAlarmService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.constant.Constants;
import com.moral.constant.ResponseCodeEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
 * <p>
@@ -17,4 +28,32 @@
@Service
public class OrganizationUnitAlarmServiceImpl extends ServiceImpl<OrganizationUnitAlarmMapper, OrganizationUnitAlarm> implements OrganizationUnitAlarmService {
    @Autowired
    OrganizationUnitAlarmMapper organizationUnitAlarmMapper;
    @Override
    public OrganizationUnitAlarmQueryDTO query(OrganizationUnitAlarmQueryForm form) {
        //创建返回对象
        OrganizationUnitAlarmQueryDTO dto = new OrganizationUnitAlarmQueryDTO();
        //取参
        Integer pageCount = form.getPage();
        Integer size = form.getSize();
        Integer organizationId = form.getOrganizationId();
        Integer versionId = form.getVersionId();
        //构造查询条件
        QueryWrapper<OrganizationUnitAlarm> wrapper = new QueryWrapper<>();
        wrapper.eq("is_delete", Constants.NOT_DELETE);
        wrapper.eq("organization_id",organizationId);
        wrapper.eq("version_id",versionId);
        Page<OrganizationUnitAlarm> wrapperPage = new Page<>(pageCount, size);
        Page<OrganizationUnitAlarm> resultPage = organizationUnitAlarmMapper.selectPage(wrapperPage, wrapper);
        List<OrganizationUnitAlarm> records = resultPage.getRecords();
        //封装返回结果
        List<OrganizationUnitAlarmDTO> dtos = new ArrayList<>();
        records.forEach(value->dtos.add(new OrganizationUnitAlarmDTO(value)));
        dto.setOrganizationUnitAlarmDTOS(dtos);
        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
        return dto;
    }
}