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>