kaiyu
2021-05-14 b526f6b437912fe92f6da3e26d948f4dea50711d
screen-manage
建立型号表,以及型号因子单位关系表
13 files added
1 files modified
461 ■■■■■ changed files
screen-manage/src/main/java/com/moral/api/entity/Sensor.java 5 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/entity/Version.java 72 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java 69 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/mapper/VersionMapper.java 16 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/mapper/VersionSensorUnitMapper.java 16 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java 27 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionQueryDTO.java 30 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java 51 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/VersionSensorUnitService.java 16 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/VersionService.java 27 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/impl/VersionSensorUnitServiceImpl.java 20 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java 81 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/resources/mapper/VersionMapper.xml 15 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/resources/mapper/VersionSensorUnitMapper.xml 16 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/entity/Sensor.java
@@ -63,6 +63,11 @@
     */
    private String isDelete;
    @TableField(exist = false)
    private String unit;
    @TableField(exist = false)
    private String unitKey;
    @Override
    protected Serializable pkVal() {
screen-manage/src/main/java/com/moral/api/entity/Version.java
New file
@@ -0,0 +1,72 @@
package com.moral.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * <p>
 * 型号表
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class Version extends Model<Version> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 名称
     */
    private String name;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 是否删除
     */
    private String isDelete;
    /**
     * 描述
     */
    @TableField(value = "`desc`")
    private String desc;
    /*
    * 版本拥有的因子
    * */
    private List<Sensor> sensors;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java
New file
@@ -0,0 +1,69 @@
package com.moral.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * <p>
 * 型号表因子单位关系表
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class VersionSensorUnit extends Model<VersionSensorUnit> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 型号id
     */
    private Integer versionId;
    /**
     * 因子code
     */
    private String sensorCode;
    /**
     * 单位字典key
     */
    private String unitKey;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 是否删除
     */
    private String isDelete;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
screen-manage/src/main/java/com/moral/api/mapper/VersionMapper.java
New file
@@ -0,0 +1,16 @@
package com.moral.api.mapper;
import com.moral.api.entity.Version;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 型号表 Mapper 接口
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
public interface VersionMapper extends BaseMapper<Version> {
}
screen-manage/src/main/java/com/moral/api/mapper/VersionSensorUnitMapper.java
New file
@@ -0,0 +1,16 @@
package com.moral.api.mapper;
import com.moral.api.entity.VersionSensorUnit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 型号表因子单位关系表 Mapper 接口
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
public interface VersionSensorUnitMapper extends BaseMapper<VersionSensorUnit> {
}
screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionDTO.java
New file
@@ -0,0 +1,27 @@
package com.moral.api.pojo.dto.version;
import com.moral.api.entity.Sensor;
import com.moral.api.entity.Version;
import lombok.Data;
import java.util.List;
/**
 * @ClassName VersionDTO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/5/14 9:55
 * @Version TODO
 **/
@Data
public class VersionDTO {
    private Integer code;
    private String msg;
    private Version version;
    private List<Sensor> sensors;
}
screen-manage/src/main/java/com/moral/api/pojo/dto/version/VersionQueryDTO.java
New file
@@ -0,0 +1,30 @@
package com.moral.api.pojo.dto.version;
import lombok.Data;
import java.util.List;
/**
 * @ClassName VersionQueryDTO
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/5/14 9:59
 * @Version TODO
 **/
@Data
public class VersionQueryDTO {
    private Integer code;
    private String msg;
    private long pages;
    private long total;
    private long current;
    private long size;
    private List<VersionDTO> versionDTOS;
}
screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryForm.java
New file
@@ -0,0 +1,51 @@
package com.moral.api.pojo.form.version;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.util.ObjectUtils;
import java.util.Date;
/**
 * @ClassName VersionQueryForm
 * @Description TODO
 * @Author 陈凯裕
 * @Date 2021/5/14 10:03
 * @Version TODO
 **/
@Data
public class VersionQueryForm {
    private Integer page;
    private Integer size;
    private String name;
    private String order;
    private String orderType;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date createStartTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date createEndTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date updateStartTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date updateEndTime;
    public boolean valid(){
        if(ObjectUtils.isEmpty(page)||ObjectUtils.isEmpty(size))
            return false;
        return true;
    }
}
screen-manage/src/main/java/com/moral/api/service/VersionSensorUnitService.java
New file
@@ -0,0 +1,16 @@
package com.moral.api.service;
import com.moral.api.entity.VersionSensorUnit;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 型号表因子单位关系表 服务类
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
public interface VersionSensorUnitService extends IService<VersionSensorUnit> {
}
screen-manage/src/main/java/com/moral/api/service/VersionService.java
New file
@@ -0,0 +1,27 @@
package com.moral.api.service;
import com.moral.api.entity.Version;
import com.baomidou.mybatisplus.extension.service.IService;
import com.moral.api.pojo.dto.version.VersionQueryDTO;
import com.moral.api.pojo.form.version.VersionQueryForm;
/**
 * <p>
 * 型号表 服务类
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
public interface VersionService extends IService<Version> {
    /**
    * @Description: 分页查询所有型号
            * @Param: [form]
            * @return: com.moral.api.pojo.dto.version.VersionQueryDTO
            * @Author: 陈凯裕
            * @Date: 2021/5/14
            */
    VersionQueryDTO query(VersionQueryForm form);
}
screen-manage/src/main/java/com/moral/api/service/impl/VersionSensorUnitServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.moral.api.service.impl;
import com.moral.api.entity.VersionSensorUnit;
import com.moral.api.mapper.VersionSensorUnitMapper;
import com.moral.api.service.VersionSensorUnitService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 型号表因子单位关系表 服务实现类
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
@Service
public class VersionSensorUnitServiceImpl extends ServiceImpl<VersionSensorUnitMapper, VersionSensorUnit> implements VersionSensorUnitService {
}
screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
New file
@@ -0,0 +1,81 @@
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.config.mybatis.wrapper.NullFilterWrapper;
import com.moral.api.entity.User;
import com.moral.api.entity.Version;
import com.moral.api.entity.VersionSensorUnit;
import com.moral.api.mapper.VersionMapper;
import com.moral.api.mapper.VersionSensorUnitMapper;
import com.moral.api.pojo.dto.version.VersionQueryDTO;
import com.moral.api.pojo.form.version.VersionQueryForm;
import com.moral.api.service.VersionService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.constant.Constants;
import com.moral.util.ConvertUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * <p>
 * 型号表 服务实现类
 * </p>
 *
 * @author moral
 * @since 2021-05-14
 */
@Service
public class VersionServiceImpl extends ServiceImpl<VersionMapper, Version> implements VersionService {
    @Autowired
    VersionMapper versionMapper;
    @Autowired
    VersionSensorUnitMapper versionSensorUnitMapper;
    @Override
    public VersionQueryDTO query(VersionQueryForm form) {
        //创建返回对象
        VersionQueryDTO dto = new VersionQueryDTO();
        //取参
        Integer page = form.getPage();
        Integer size = form.getSize();
        String name = form.getName();
        Date createStartTime = form.getCreateStartTime();
        Date createEndTime = form.getCreateEndTime();
        Date updateStartTime = form.getUpdateStartTime();
        Date updateEndTime = form.getUpdateEndTime();
        String order = form.getOrder();
        String orderType = form.getOrderType();
        //组装查询条件
        Page<Version> queryPage = new Page<>(page, size);
        NullFilterWrapper<Version> wrapper = new NullFilterWrapper<>();
        wrapper.like("name",name);
        wrapper.between("create_time", createStartTime, createEndTime);
        wrapper.between("update_time", updateStartTime, updateEndTime);
        //排序顺序条件构造
        if (!ObjectUtils.isEmpty(order) && !ObjectUtils.isEmpty(orderType)) {
            if (orderType.equals(Constants.ORDER_ASC))
                wrapper.orderByAsc(ConvertUtils.toLine(order));
            else
                wrapper.orderByDesc(ConvertUtils.toLine(order));
        }
        //查询结果
        Page<Version> versionsPage = versionMapper.selectPage(queryPage,wrapper);
        List<Version> versions = versionsPage.getRecords();
        //查询版本对应的因子和单位
        List<Integer> versionsIds = new ArrayList<>();
        versions.forEach(value->versionsIds.add(value.getId()));
        if(!ObjectUtils.isEmpty(versionsIds)){
            QueryWrapper<VersionSensorUnit> sensorUnitQueryWrapper = new QueryWrapper<>();
        }
        return null;
    }
}
screen-manage/src/main/resources/mapper/VersionMapper.xml
New file
@@ -0,0 +1,15 @@
<?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.moral.api.mapper.VersionMapper">
        <!-- 通用查询映射结果 -->
        <resultMap id="BaseResultMap" type="com.moral.api.entity.Version">
                    <id column="id" property="id" />
                    <result column="name" property="name" />
                    <result column="create_time" property="createTime" />
                    <result column="update_time" property="updateTime" />
                    <result column="is_delete" property="isDelete" />
                    <result column="desc" property="desc" />
        </resultMap>
</mapper>
screen-manage/src/main/resources/mapper/VersionSensorUnitMapper.xml
New file
@@ -0,0 +1,16 @@
<?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.moral.api.mapper.VersionSensorUnitMapper">
        <!-- 通用查询映射结果 -->
        <resultMap id="BaseResultMap" type="com.moral.api.entity.VersionSensorUnit">
                    <id column="id" property="id" />
                    <result column="version_id" property="versionId" />
                    <result column="sensor_code" property="sensorCode" />
                    <result column="unit_key" property="unitKey" />
                    <result column="create_time" property="createTime" />
                    <result column="update_time" property="updateTime" />
                    <result column="is_delete" property="isDelete" />
        </resultMap>
</mapper>