14 changed files with 431 additions and 57 deletions
-
8archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java
-
92storeroom/src/main/java/com/storeroom/modules/device/domain/DeseCabinet.java
-
50storeroom/src/main/java/com/storeroom/modules/device/domain/DeviceArchivesTag.java
-
62storeroom/src/main/java/com/storeroom/modules/device/domain/DeviceInfo.java
-
11storeroom/src/main/java/com/storeroom/modules/device/repository/DeseCabinetRepository.java
-
8storeroom/src/main/java/com/storeroom/modules/device/repository/DeviceArchivesTagRepository.java
-
8storeroom/src/main/java/com/storeroom/modules/device/repository/DeviceInfoRepository.java
-
28storeroom/src/main/java/com/storeroom/modules/device/service/DeviceService.java
-
56storeroom/src/main/java/com/storeroom/modules/device/service/dto/DeseCabinetDto.java
-
46storeroom/src/main/java/com/storeroom/modules/device/service/dto/DeviceInfoDto.java
-
37storeroom/src/main/java/com/storeroom/modules/device/service/dto/SupplierDto.java
-
60storeroom/src/main/java/com/storeroom/modules/device/service/impl/DenseCabinetImpl.java
-
11storeroom/src/main/java/com/storeroom/modules/device/service/mapstruct/DeseCabinetMapper.java
-
11storeroom/src/main/java/com/storeroom/modules/device/service/mapstruct/DeviceInfoMapper.java
@ -0,0 +1,92 @@ |
|||
package com.storeroom.modules.device.domain; |
|||
|
|||
|
|||
import com.storeroom.base.BaseEntity; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
|
|||
import javax.persistence.*; |
|||
import javax.validation.constraints.NotNull; |
|||
import java.io.Serializable; |
|||
import java.util.Objects; |
|||
|
|||
/** |
|||
* 密集架实体 |
|||
*/ |
|||
@Entity |
|||
@Getter |
|||
@Setter |
|||
@Table(name = "dese_cabinet") |
|||
public class DeseCabinet extends BaseEntity implements Serializable { |
|||
|
|||
|
|||
@Id |
|||
@Column(name = "id") |
|||
@NotNull(groups = Update.class) |
|||
@ApiModelProperty(value = "ID", hidden = true) |
|||
private String id; |
|||
|
|||
@OneToOne |
|||
@JoinColumn(name = "device_info_id") |
|||
@ApiModelProperty(value = "设备信息") |
|||
private DeviceInfo deviceInfo; |
|||
|
|||
@Column(name = "tid") |
|||
@ApiModelProperty(value = "设备标签") |
|||
private String tid; |
|||
|
|||
@Column(name = "storeroom_code") |
|||
@ApiModelProperty(value = "库房代码") |
|||
private String storeroomCode; |
|||
|
|||
@Column(name = "device_id") |
|||
@ApiModelProperty(value = "设备id") |
|||
private String deviceId; |
|||
|
|||
@Column(name = "row_No") |
|||
@ApiModelProperty(value = "层数") |
|||
private Integer rowNo; |
|||
|
|||
@Column(name = "area_No") |
|||
@ApiModelProperty(value = "区号") |
|||
private Integer areaNo; |
|||
|
|||
@Column(name = "sum_column_No") |
|||
@ApiModelProperty(value = "总列数") |
|||
private Integer sumColumnNo; |
|||
|
|||
@Column(name = "first_column_No") |
|||
@ApiModelProperty(value = "起始列号") |
|||
private Integer firstColumnNo; |
|||
|
|||
@Column(name = "part_No") |
|||
@ApiModelProperty(value = "节数") |
|||
private Integer partNo; |
|||
|
|||
@Column(name = "is_linkage") |
|||
@ApiModelProperty(value = "联动操作") |
|||
private Integer isLinkage; |
|||
|
|||
@Column(name = "is_callback") |
|||
@ApiModelProperty(value = "回调确认") |
|||
private Integer isCallback; |
|||
|
|||
|
|||
@Column(name = "is_notice") |
|||
@ApiModelProperty(value = "下发通知") |
|||
private Integer isNotice; |
|||
|
|||
@Override |
|||
public boolean equals(Object o) { |
|||
if (this == o) return true; |
|||
if (o == null || getClass() != o.getClass()) return false; |
|||
DeseCabinet that = (DeseCabinet) o; |
|||
return Objects.equals(id, that.id) && Objects.equals(deviceInfo, that.deviceInfo) && Objects.equals(tid, that.tid) && Objects.equals(storeroomCode, that.storeroomCode) && Objects.equals(deviceId, that.deviceId) && Objects.equals(rowNo, that.rowNo) && Objects.equals(areaNo, that.areaNo) && Objects.equals(sumColumnNo, that.sumColumnNo) && Objects.equals(firstColumnNo, that.firstColumnNo) && Objects.equals(partNo, that.partNo) && Objects.equals(isLinkage, that.isLinkage) && Objects.equals(isCallback, that.isCallback) && Objects.equals(isNotice, that.isNotice); |
|||
} |
|||
|
|||
@Override |
|||
public int hashCode() { |
|||
return Objects.hash(id, deviceInfo, tid, storeroomCode, deviceId, rowNo, areaNo, sumColumnNo, firstColumnNo, partNo, isLinkage, isCallback, isNotice); |
|||
} |
|||
} |
@ -0,0 +1,50 @@ |
|||
package com.storeroom.modules.device.domain; |
|||
|
|||
import com.storeroom.base.BaseEntity; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
|
|||
import javax.persistence.*; |
|||
import javax.validation.constraints.NotNull; |
|||
import java.io.Serializable; |
|||
import java.util.Objects; |
|||
|
|||
@Entity |
|||
@Getter |
|||
@Setter |
|||
public class DeviceArchivesTag extends BaseEntity implements Serializable { |
|||
|
|||
@Id |
|||
@Column(name = "id") |
|||
@NotNull(groups = Update.class) |
|||
@ApiModelProperty(value = "ID", hidden = true) |
|||
private String id; |
|||
|
|||
@Column(name = "tid") |
|||
@ApiModelProperty(value = "标签id") |
|||
private String tid; |
|||
|
|||
@ManyToOne |
|||
@JoinColumn(name = "deviceinfo_id") |
|||
@ApiModelProperty(value = "设备id") |
|||
private DeviceInfo deviceInfoId; |
|||
|
|||
@Column(name = "position") |
|||
@ApiModelProperty(name = "层架位和柜架位") |
|||
private String position; |
|||
|
|||
|
|||
@Override |
|||
public boolean equals(Object o) { |
|||
if (this == o) return true; |
|||
if (o == null || getClass() != o.getClass()) return false; |
|||
DeviceArchivesTag that = (DeviceArchivesTag) o; |
|||
return Objects.equals(id, that.id) && Objects.equals(tid, that.tid) && Objects.equals(deviceInfoId, that.deviceInfoId) && Objects.equals(position, that.position); |
|||
} |
|||
|
|||
@Override |
|||
public int hashCode() { |
|||
return Objects.hash(id, tid, deviceInfoId, position); |
|||
} |
|||
} |
@ -0,0 +1,11 @@ |
|||
package com.storeroom.modules.device.repository; |
|||
|
|||
import com.storeroom.modules.device.domain.DeseCabinet; |
|||
import org.springframework.data.jpa.repository.JpaRepository; |
|||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor; |
|||
|
|||
public interface DeseCabinetRepository extends JpaRepository<DeseCabinet,String>, JpaSpecificationExecutor<DeseCabinet> { |
|||
|
|||
|
|||
|
|||
} |
@ -0,0 +1,8 @@ |
|||
package com.storeroom.modules.device.repository; |
|||
|
|||
import com.storeroom.modules.device.domain.DeviceArchivesTag; |
|||
import org.springframework.data.jpa.repository.JpaRepository; |
|||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor; |
|||
|
|||
public interface DeviceArchivesTagRepository extends JpaRepository<DeviceArchivesTag,String>, JpaSpecificationExecutor<DeviceArchivesTag> { |
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.storeroom.modules.device.service; |
|||
|
|||
import com.storeroom.modules.device.service.dto.DeseCabinetDto; |
|||
|
|||
public interface DeviceService { |
|||
|
|||
/** |
|||
* 设备新增 |
|||
*/ |
|||
void create(DeseCabinetDto deseCabinetDto); |
|||
|
|||
/** |
|||
* 设备修改 |
|||
*/ |
|||
void update(DeseCabinetDto deseCabinetDto); |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
void delete(String id); |
|||
|
|||
/** |
|||
* 获取状态 |
|||
* @return / |
|||
*/ |
|||
Boolean getState(); |
|||
|
|||
} |
@ -0,0 +1,56 @@ |
|||
package com.storeroom.modules.device.service.dto; |
|||
|
|||
import com.storeroom.base.BaseDTO; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Objects; |
|||
|
|||
|
|||
/** |
|||
* 密集架DTO |
|||
*/ |
|||
@Getter |
|||
@Setter |
|||
public class DeseCabinetDto extends BaseDTO implements Serializable { |
|||
|
|||
private String id; |
|||
|
|||
private DeviceInfoDto deviceInfo; |
|||
|
|||
private String tid; |
|||
|
|||
private String storeroomCode; |
|||
|
|||
private String deviceId; |
|||
|
|||
private Integer rowNo; |
|||
|
|||
private Integer areaNo; |
|||
|
|||
private Integer sumColumnNo; |
|||
|
|||
private Integer firstColumnNo; |
|||
|
|||
private Integer partNo; |
|||
|
|||
private Integer isLinkage; |
|||
|
|||
private Integer isCallback; |
|||
|
|||
private Integer isNotice; |
|||
|
|||
@Override |
|||
public boolean equals(Object o) { |
|||
if (this == o) return true; |
|||
if (o == null || getClass() != o.getClass()) return false; |
|||
DeseCabinetDto that = (DeseCabinetDto) o; |
|||
return Objects.equals(id, that.id) && Objects.equals(deviceInfo, that.deviceInfo) && Objects.equals(tid, that.tid) && Objects.equals(storeroomCode, that.storeroomCode) && Objects.equals(deviceId, that.deviceId) && Objects.equals(rowNo, that.rowNo) && Objects.equals(areaNo, that.areaNo) && Objects.equals(sumColumnNo, that.sumColumnNo) && Objects.equals(firstColumnNo, that.firstColumnNo) && Objects.equals(partNo, that.partNo) && Objects.equals(isLinkage, that.isLinkage) && Objects.equals(isCallback, that.isCallback) && Objects.equals(isNotice, that.isNotice); |
|||
} |
|||
|
|||
@Override |
|||
public int hashCode() { |
|||
return Objects.hash(id, deviceInfo, tid, storeroomCode, deviceId, rowNo, areaNo, sumColumnNo, firstColumnNo, partNo, isLinkage, isCallback, isNotice); |
|||
} |
|||
} |
@ -0,0 +1,46 @@ |
|||
package com.storeroom.modules.device.service.dto; |
|||
|
|||
import com.storeroom.base.BaseDTO; |
|||
import com.storeroom.modules.device.domain.DeviceInfo; |
|||
import com.storeroom.modules.device.domain.Storeroom; |
|||
import com.storeroom.modules.device.domain.Supplier; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Objects; |
|||
|
|||
|
|||
@Getter |
|||
@Setter |
|||
public class DeviceInfoDto extends BaseDTO implements Serializable { |
|||
|
|||
private String id; |
|||
|
|||
private Supplier supplierId; |
|||
|
|||
private Storeroom storeroomId; |
|||
|
|||
private String deviceName; |
|||
|
|||
private String deviceIp; |
|||
|
|||
private Integer devicePort; |
|||
|
|||
private Integer deviceState; |
|||
|
|||
private Integer sequence; |
|||
|
|||
@Override |
|||
public boolean equals(Object o) { |
|||
if (this == o) return true; |
|||
if (o == null || getClass() != o.getClass()) return false; |
|||
DeviceInfoDto that = (DeviceInfoDto) o; |
|||
return Objects.equals(id, that.id) && Objects.equals(supplierId, that.supplierId) && Objects.equals(storeroomId, that.storeroomId) && Objects.equals(deviceName, that.deviceName) && Objects.equals(deviceIp, that.deviceIp) && Objects.equals(devicePort, that.devicePort) && Objects.equals(deviceState, that.deviceState) && Objects.equals(sequence, that.sequence); |
|||
} |
|||
|
|||
@Override |
|||
public int hashCode() { |
|||
return Objects.hash(id, supplierId, storeroomId, deviceName, deviceIp, devicePort, deviceState, sequence); |
|||
} |
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.storeroom.modules.device.service.dto; |
|||
|
|||
|
|||
import com.storeroom.base.BaseDTO; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Objects; |
|||
|
|||
@Getter |
|||
@Setter |
|||
public class SupplierDto extends BaseDTO implements Serializable { |
|||
|
|||
private String id; |
|||
|
|||
private String name; |
|||
|
|||
private String remark; |
|||
|
|||
private String phone; |
|||
|
|||
private String deviceModel; |
|||
|
|||
@Override |
|||
public boolean equals(Object o) { |
|||
if (this == o) return true; |
|||
if (o == null || getClass() != o.getClass()) return false; |
|||
SupplierDto that = (SupplierDto) o; |
|||
return Objects.equals(id, that.id) && Objects.equals(name, that.name) && Objects.equals(remark, that.remark) && Objects.equals(phone, that.phone) && Objects.equals(deviceModel, that.deviceModel); |
|||
} |
|||
|
|||
@Override |
|||
public int hashCode() { |
|||
return Objects.hash(id, name, remark, phone, deviceModel); |
|||
} |
|||
} |
@ -0,0 +1,60 @@ |
|||
package com.storeroom.modules.device.service.impl; |
|||
|
|||
import com.storeroom.exception.BaseException; |
|||
import com.storeroom.modules.device.domain.DeseCabinet; |
|||
import com.storeroom.modules.device.domain.DeviceInfo; |
|||
import com.storeroom.modules.device.repository.DeseCabinetRepository; |
|||
import com.storeroom.modules.device.repository.DeviceInfoRepository; |
|||
import com.storeroom.modules.device.service.DeviceService; |
|||
import com.storeroom.modules.device.service.dto.DeseCabinetDto; |
|||
import com.storeroom.modules.device.service.mapstruct.DeseCabinetMapper; |
|||
import com.storeroom.utils.NanoIdUtils; |
|||
import lombok.RequiredArgsConstructor; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.util.ObjectUtils; |
|||
|
|||
|
|||
@Service |
|||
@RequiredArgsConstructor |
|||
public class DenseCabinetImpl implements DeviceService { |
|||
|
|||
private final DeseCabinetRepository deseCabinetRepository; |
|||
private final DeviceInfoRepository deviceInfoRepository; |
|||
private final DeseCabinetMapper deseCabinetMapper; |
|||
|
|||
|
|||
@Override |
|||
public void create(DeseCabinetDto deseCabinetDto) { |
|||
|
|||
DeseCabinet deseCabinet = deseCabinetMapper.toEntity(deseCabinetDto); |
|||
DeviceInfo deviceInfo = deviceInfoRepository.findByDeviceIpAndDevicePort(deseCabinetDto.getDeviceInfo().getDeviceIp(), deseCabinetDto.getDeviceInfo().getDevicePort()); |
|||
if (!ObjectUtils.isEmpty(deviceInfo)) { |
|||
throw new BaseException("同一IP和端口号下不能重复添加设备"); |
|||
} |
|||
deseCabinet.getDeviceInfo().setId(NanoIdUtils.randomNanoId()); |
|||
deseCabinet.setId(NanoIdUtils.randomNanoId()); |
|||
deseCabinetRepository.save(deseCabinet); |
|||
} |
|||
|
|||
@Override |
|||
public void update(DeseCabinetDto deseCabinetDto) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public void delete(String id) { |
|||
|
|||
} |
|||
|
|||
@Override |
|||
public Boolean getState() { |
|||
return null; |
|||
} |
|||
|
|||
/** |
|||
* 生成层位 |
|||
*/ |
|||
public void createLayer() { |
|||
|
|||
} |
|||
} |
@ -0,0 +1,11 @@ |
|||
package com.storeroom.modules.device.service.mapstruct; |
|||
|
|||
import com.storeroom.base.BaseMapper; |
|||
import com.storeroom.modules.device.domain.DeseCabinet; |
|||
import com.storeroom.modules.device.service.dto.DeseCabinetDto; |
|||
import org.mapstruct.Mapper; |
|||
import org.mapstruct.ReportingPolicy; |
|||
|
|||
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) |
|||
public interface DeseCabinetMapper extends BaseMapper<DeseCabinetDto, DeseCabinet> { |
|||
} |
@ -0,0 +1,11 @@ |
|||
package com.storeroom.modules.device.service.mapstruct; |
|||
|
|||
import com.storeroom.base.BaseMapper; |
|||
import com.storeroom.modules.device.domain.DeviceInfo; |
|||
import com.storeroom.modules.device.service.dto.DeviceInfoDto; |
|||
import org.mapstruct.Mapper; |
|||
import org.mapstruct.ReportingPolicy; |
|||
|
|||
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) |
|||
public interface DeviceInfoMapper extends BaseMapper<DeviceInfoDto, DeviceInfo> { |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue