From c6cac8c32091ff631a0d41f41d40f2d1da0a765f Mon Sep 17 00:00:00 2001 From: HuangXin Date: Mon, 27 Jul 2020 19:38:35 +0800 Subject: [PATCH] =?UTF-8?q?OCT=20REM:=201.=20=E6=9B=B4=E6=96=B0=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6=202.=20=E5=A2=9E=E5=8A=A0=E5=A4=84?= =?UTF-8?q?=E7=BD=AE=E8=AE=BE=E5=A4=87=E8=A1=A8=203.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87=E8=83=BD=E5=8A=9B=E8=A1=A8?= =?UTF-8?q?=204.=20=E5=A2=9E=E5=8A=A0=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E8=83=BD=E5=8A=9B=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/application-local.properties | 2 +- .../dispose/common/DisposeCapacityType.java | 68 +++++++ .../com/dispose/common/DisposeObjectType.java | 60 ++++++ .../java/com/dispose/common/IpAddrType.java | 55 ++++++ ...erAccountStatus.java => ObjectStatus.java} | 4 +- .../com/dispose/config/AuthConfigure.java | 2 +- .../dispose/controller/AuthController.java | 4 +- .../dispose/mapper/DisposeCapacityMapper.java | 52 +++++ .../dispose/mapper/DisposeDeviceMapper.java | 23 +++ .../dispose/pojo/entity/DisposeCapacity.java | 69 +++++++ .../dispose/pojo/entity/DisposeDevice.java | 129 ++++++++++++ .../service/impl/UserAccountServiceImpl.java | 4 +- .../java/com/dispose/setup/SystemInitial.java | 19 +- .../resources/mappers/DisposeCapacity.xml | 31 +++ src/main/resources/mappers/DisposeDevice.xml | 14 ++ src/main/resources/mappers/UserAccount.xml | 10 +- .../test/manager/UserAccountManagerTest.java | 10 +- .../mapper/DisposeCapacityMapperTest.java | 184 ++++++++++++++++++ .../test/mapper/DisposeDeviceMapper.java | 24 +++ .../test/mapper/UserAccountMapperTest.java | 10 +- 20 files changed, 742 insertions(+), 32 deletions(-) create mode 100644 src/main/java/com/dispose/common/DisposeCapacityType.java create mode 100644 src/main/java/com/dispose/common/DisposeObjectType.java create mode 100644 src/main/java/com/dispose/common/IpAddrType.java rename src/main/java/com/dispose/common/{UserAccountStatus.java => ObjectStatus.java} (92%) create mode 100644 src/main/java/com/dispose/mapper/DisposeCapacityMapper.java create mode 100644 src/main/java/com/dispose/mapper/DisposeDeviceMapper.java create mode 100644 src/main/java/com/dispose/pojo/entity/DisposeCapacity.java create mode 100644 src/main/java/com/dispose/pojo/entity/DisposeDevice.java create mode 100644 src/main/resources/mappers/DisposeCapacity.xml create mode 100644 src/main/resources/mappers/DisposeDevice.xml create mode 100644 src/test/java/com/dispose/test/mapper/DisposeCapacityMapperTest.java create mode 100644 src/test/java/com/dispose/test/mapper/DisposeDeviceMapper.java diff --git a/config/application-local.properties b/config/application-local.properties index 5e8406aa..1fc1a3cd 100644 --- a/config/application-local.properties +++ b/config/application-local.properties @@ -62,7 +62,7 @@ dispose.request-timeout-second=5 # 迪普设备配置 # 发送超时时间(ms) -#dptech.soap-conn-timeout-second=60 +dptech.soap-conn-timeout-second=60 # 接收超时时间(ms) dptech.soap-recv-timeout-second=60 diff --git a/src/main/java/com/dispose/common/DisposeCapacityType.java b/src/main/java/com/dispose/common/DisposeCapacityType.java new file mode 100644 index 00000000..62ed664c --- /dev/null +++ b/src/main/java/com/dispose/common/DisposeCapacityType.java @@ -0,0 +1,68 @@ +package com.dispose.common; + +/** + * The enum Dispose capacity type. + * + * @author + */ +public enum DisposeCapacityType { + /** + * The Cleanup. + */ + CLEANUP(0, "清洗能力"), + /** + * The Hidepend. + */ + HIDEPEND(1, "高防能力"), + /** + * The Blackhool. + */ + BLACKHOOL(2, "黑洞能力"), + /** + * The Detecive. + */ + DETECIVE(3, "检测能力"), + + /** + * Blocking dispose capacity type. + */ + BLOCKING(4, "封堵"); + + /** + * The Code. + */ + private final int code; + /** + * The Readme. + */ + private final String readme; + + /** + * Instantiates a new Dispose capacity type. + * + * @param code the code + * @param readme the readme + */ + DisposeCapacityType(int code, String readme) { + this.code = code; + this.readme = readme; + } + + /** + * Gets code. + * + * @return the code + */ + public int getCode() { + return this.code; + } + + /** + * Gets readme. + * + * @return the readme + */ + public String getReadme() { + return this.readme; + } +} diff --git a/src/main/java/com/dispose/common/DisposeObjectType.java b/src/main/java/com/dispose/common/DisposeObjectType.java new file mode 100644 index 00000000..8a4172d9 --- /dev/null +++ b/src/main/java/com/dispose/common/DisposeObjectType.java @@ -0,0 +1,60 @@ +package com.dispose.common; + +/** + * The enum Dispose object type. + * + * @author + */ +public enum DisposeObjectType { + /** + * The Ip. + */ + IP(1, "IP地址"), + /** + * The Domain. + */ + DOMAIN(1 << 1, "域名"), + + /** + * The Url. + */ + URL(1 << 2, "URL"); + + /** + * The Code. + */ + private final int code; + /** + * The Readme. + */ + private final String readme; + + /** + * Instantiates a new Dispose object type. + * + * @param code the code + * @param readme the readme + */ + DisposeObjectType(int code, String readme) { + this.code = code; + this.readme = readme; + } + + /** + * Gets code. + * + * @return the code + */ + public int getCode() { + return this.code; + } + + /** + * Gets readme. + * + * @return the readme + */ + public String getReadme() { + return this.readme; + } +} diff --git a/src/main/java/com/dispose/common/IpAddrType.java b/src/main/java/com/dispose/common/IpAddrType.java new file mode 100644 index 00000000..c6ebb5f2 --- /dev/null +++ b/src/main/java/com/dispose/common/IpAddrType.java @@ -0,0 +1,55 @@ +package com.dispose.common; + +/** + * The enum Ip addr type. + * + * @author + */ +public enum IpAddrType { + /** + * Ip v 4 ip addr type. + */ + IPV4(1, "禁用"), + /** + * Ip v 6 ip addr type. + */ + IPV6(1 << 1, "禁用"); + + /** + * The Code. + */ + private final int code; + /** + * The Readme. + */ + private final String readme; + + /** + * Instantiates a new Ip addr type. + * + * @param code the code + * @param readme the readme + */ + IpAddrType(int code, String readme) { + this.code = code; + this.readme = readme; + } + + /** + * Gets code. + * + * @return the code + */ + public int getCode() { + return this.code; + } + + /** + * Gets readme. + * + * @return the readme + */ + public String getReadme() { + return this.readme; + } +} diff --git a/src/main/java/com/dispose/common/UserAccountStatus.java b/src/main/java/com/dispose/common/ObjectStatus.java similarity index 92% rename from src/main/java/com/dispose/common/UserAccountStatus.java rename to src/main/java/com/dispose/common/ObjectStatus.java index b4e1b8bd..4a9dcc1a 100644 --- a/src/main/java/com/dispose/common/UserAccountStatus.java +++ b/src/main/java/com/dispose/common/ObjectStatus.java @@ -5,7 +5,7 @@ package com.dispose.common; * * @author */ -public enum UserAccountStatus { +public enum ObjectStatus { /** * Normal user account status. */ @@ -38,7 +38,7 @@ public enum UserAccountStatus { * @param code the code * @param readme the readme */ - UserAccountStatus(int code, String readme) { + ObjectStatus(int code, String readme) { this.code = code; this.readme = readme; } diff --git a/src/main/java/com/dispose/config/AuthConfigure.java b/src/main/java/com/dispose/config/AuthConfigure.java index 9a300acb..e41482cc 100644 --- a/src/main/java/com/dispose/config/AuthConfigure.java +++ b/src/main/java/com/dispose/config/AuthConfigure.java @@ -18,5 +18,5 @@ public class AuthConfigure { /** * The Token timout value. */ - private String tokenTimoutMinute; + private String tokenTimeoutMinute; } diff --git a/src/main/java/com/dispose/controller/AuthController.java b/src/main/java/com/dispose/controller/AuthController.java index 7de4d6dc..e76f0109 100644 --- a/src/main/java/com/dispose/controller/AuthController.java +++ b/src/main/java/com/dispose/controller/AuthController.java @@ -58,7 +58,6 @@ public class AuthController { @Validated(ValidGroups.LoginReqValid.class) @RequestBody ProtocolReqDTO mr) throws NoSuchAlgorithmException { - // 登录 MulReturnType ret = userAccountService.loginService(mr.getMsgContent().getUserName(), mr.getMsgContent().getPassword()); @@ -97,8 +96,7 @@ public class AuthController { @ApiOperation("注销") public ProtocolRespDTO userLogout(@Validated(ValidGroups.LogoutReqValid.class) @RequestBody ProtocolReqDTO mr, - @RequestHeader HttpHeaders headers) { - // 注销用户登录 + @RequestHeader HttpHeaders headers) { // 注销用户登录 ErrorCode err = userAccountService.logoutService(mr.getMsgContent().getUserName(), mr.getAuthToken(headers)); diff --git a/src/main/java/com/dispose/mapper/DisposeCapacityMapper.java b/src/main/java/com/dispose/mapper/DisposeCapacityMapper.java new file mode 100644 index 00000000..cd190cac --- /dev/null +++ b/src/main/java/com/dispose/mapper/DisposeCapacityMapper.java @@ -0,0 +1,52 @@ +package com.dispose.mapper; + +import com.dispose.pojo.entity.DisposeCapacity; +import org.apache.ibatis.annotations.Param; +import tk.mybatis.mapper.common.IdsMapper; +import tk.mybatis.mapper.common.Mapper; +import tk.mybatis.mapper.common.MySqlMapper; + +import java.util.List; + +/** + * The interface Dispose capacity mapper. + * + * @author + */ +public interface DisposeCapacityMapper extends Mapper, + IdsMapper, MySqlMapper { + + /** + * Add new dispose capacity int. + * + * @param devCaps the dev caps + * @return the int + */ + int addNewDisposeCapacity(@Param("devCaps") List devCaps); + + /** + * Del dispose capacity int. + * + * @param deviceId the device id + * @param capacityType the capacity type + * @return the int + */ + int delDisposeCapacity(@Param("deviceId") Long deviceId, + @Param("capacityType") Integer capacityType); + + /** + * Del device dispose capacity int. + * + * @param deviceId the device id + * @return the int + */ + int delDeviceDisposeCapacity(@Param("deviceId") Long deviceId); + + /** + * Gets device dispose capacity. + * + * @param deviceId the device id + * @return the device dispose capacity + */ + List getDeviceDisposeCapacity(@Param("deviceId") Long deviceId); +} diff --git a/src/main/java/com/dispose/mapper/DisposeDeviceMapper.java b/src/main/java/com/dispose/mapper/DisposeDeviceMapper.java new file mode 100644 index 00000000..a41cd300 --- /dev/null +++ b/src/main/java/com/dispose/mapper/DisposeDeviceMapper.java @@ -0,0 +1,23 @@ +package com.dispose.mapper; + +import com.dispose.pojo.entity.DisposeDevice; +import tk.mybatis.mapper.common.IdsMapper; +import tk.mybatis.mapper.common.Mapper; +import tk.mybatis.mapper.common.MySqlMapper; + +/** + * The interface Dispose device mapper. + * + * @author + */ +public interface DisposeDeviceMapper extends Mapper, + IdsMapper, MySqlMapper { + + /** + * Add new dispose device int. + * + * @param dev the dev + * @return the int + */ + int addNewDisposeDevice(DisposeDevice dev); +} diff --git a/src/main/java/com/dispose/pojo/entity/DisposeCapacity.java b/src/main/java/com/dispose/pojo/entity/DisposeCapacity.java new file mode 100644 index 00000000..607d1c17 --- /dev/null +++ b/src/main/java/com/dispose/pojo/entity/DisposeCapacity.java @@ -0,0 +1,69 @@ +package com.dispose.pojo.entity; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; +import tk.mybatis.mapper.annotation.KeySql; +import tk.mybatis.mapper.annotation.NameStyle; +import tk.mybatis.mapper.code.Style; + +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * The type Dispose capacity. + * + * @author + */ +@Getter +@Setter +@ToString +@NoArgsConstructor +@AllArgsConstructor +@Builder +@JsonInclude(JsonInclude.Include.NON_NULL) +@Table(name = "dispose_capacity") +@NameStyle(Style.normal) +public class DisposeCapacity { + + /** + * The constant serialVersionUID. + */ + private static final long serialVersionUID = 1L; + + /** + * The Id. + */ + @Id + @KeySql(useGeneratedKeys = true) + private Long id; + + /** + * The Device id. + */ + private Long deviceId; + + /** + * The Capacity type. + */ + private Integer capacityType; + + /** + * The Object type. + */ + private Integer objectType; + + /** + * The Ip type. + */ + private Integer ipType; + + /** + * The Protect ip. + */ + private String protectIp; +} diff --git a/src/main/java/com/dispose/pojo/entity/DisposeDevice.java b/src/main/java/com/dispose/pojo/entity/DisposeDevice.java new file mode 100644 index 00000000..4c6430e9 --- /dev/null +++ b/src/main/java/com/dispose/pojo/entity/DisposeDevice.java @@ -0,0 +1,129 @@ +package com.dispose.pojo.entity; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; +import tk.mybatis.mapper.annotation.KeySql; +import tk.mybatis.mapper.annotation.NameStyle; +import tk.mybatis.mapper.code.Style; + +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.Transient; +import java.io.Serializable; +import java.util.List; + +/** + * The type Dispose device. + * + * @author + */ +@Getter +@Setter +@ToString +@NoArgsConstructor +@AllArgsConstructor +@Builder +@JsonInclude(JsonInclude.Include.NON_NULL) +@Table(name = "dispose_device") +@NameStyle(Style.normal) +public class DisposeDevice implements Serializable { + /** + * The constant serialVersionUID. + */ + private static final long serialVersionUID = 1L; + + /** + * The Id. + */ + @Id + @KeySql(useGeneratedKeys = true) + private Long id; + + /** + * The Ip addr. + */ + private String ipAddr; + + /** + * The Device type. + */ + private Integer deviceType; + + /** + * The Area code. + */ + private Integer areaCode; + + /** + * The Name. + */ + private String name; + + /** + * The Manufacturer. + */ + private String manufacturer; + + /** + * The Model. + */ + private String model; + + /** + * The Version. + */ + private String version; + + /** + * The User name. + */ + private String userName; + + /** + * The Password. + */ + private String password; + + /** + * The Url path. + */ + private String urlPath; + + /** + * The Url type. + */ + private Integer urlType; + + /** + * The Readme. + */ + private String readme; + + /** + * The Status. + */ + private Integer status; + + /** + * The Dev capacity. + */ + @Transient + private List devCapacity; + + /** + * The Dev info. + */ + //@Transient + //private DeviceInfo devInfo; + + /** + * The Link status. + */ + //@Transient + //private Integer linkStatus; +} diff --git a/src/main/java/com/dispose/service/impl/UserAccountServiceImpl.java b/src/main/java/com/dispose/service/impl/UserAccountServiceImpl.java index ab07713e..64b07ebc 100644 --- a/src/main/java/com/dispose/service/impl/UserAccountServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/UserAccountServiceImpl.java @@ -2,7 +2,7 @@ package com.dispose.service.impl; import com.dispose.common.AuthConfigValue; import com.dispose.common.ErrorCode; -import com.dispose.common.UserAccountStatus; +import com.dispose.common.ObjectStatus; import com.dispose.config.DisposeConfigure; import com.dispose.manager.UserAccountManager; import com.dispose.pojo.entity.UserAccount; @@ -71,7 +71,7 @@ public class UserAccountServiceImpl implements UserAccountService { } // 用户是否被锁定 - if (loginUser.getStatus() == UserAccountStatus.LOCKED.getCode()) { + if (loginUser.getStatus() == ObjectStatus.LOCKED.getCode()) { log.error("User {} is locked", username); return MulReturnType.builder().firstParam(ErrorCode.ERR_USERLOCK).build(); } diff --git a/src/main/java/com/dispose/setup/SystemInitial.java b/src/main/java/com/dispose/setup/SystemInitial.java index bdeba585..7795283a 100644 --- a/src/main/java/com/dispose/setup/SystemInitial.java +++ b/src/main/java/com/dispose/setup/SystemInitial.java @@ -44,32 +44,35 @@ public class SystemInitial implements CommandLineRunner { private void loadConfigure() { try { - AuthConfigValue.TOKEN_EXPIRED_TIME_MS = Long.parseLong(authConfigure.getTokenTimoutMinute()) * 60 * 1000; + AuthConfigValue.TOKEN_EXPIRED_TIME_MS = Long.parseLong(authConfigure.getTokenTimeoutMinute()) * 60 * 1000; } catch (Exception ex) { log.error("load TOKEN_EXPIRED_TIME_MS configure error: {}", ex.getMessage()); } try { - DpTechConfigValue.SOAP_CONNECT_TIMEOUT_SECOND = Integer.parseInt(dpTechConfigure.getSoapConnTimeoutSecond()); - } catch(Exception ex) { + DpTechConfigValue.SOAP_CONNECT_TIMEOUT_SECOND = + Integer.parseInt(dpTechConfigure.getSoapConnTimeoutSecond()); + } catch (Exception ex) { log.error("load SOAP_CONNECT_TIMEOUT_SECOND configure error: {}", ex.getMessage()); } try { - DpTechConfigValue.SOAP_RECEIVE_TIMEOUT_SECOND = Integer.parseInt(dpTechConfigure.getSoapRecvTimeoutSecond()); - } catch(Exception ex) { + DpTechConfigValue.SOAP_RECEIVE_TIMEOUT_SECOND = + Integer.parseInt(dpTechConfigure.getSoapRecvTimeoutSecond()); + } catch (Exception ex) { log.error("load SOAP_RECEIVE_TIMEOUT_SECOND configure error: {}", ex.getMessage()); } try { DisposeConfigValue.REQUEST_TIMEOUT_MS = Integer.parseInt(disposeConfigure.getRequestTimeoutSecond()) * 1000; - } catch(Exception ex) { + } catch (Exception ex) { log.error("load REQUEST_TIMEOUT_MS configure error: {}", ex.getMessage()); } try { - DisposeConfigValue.CHECK_PROTO_REQUEST_TIMEOUT = Boolean.parseBoolean(disposeConfigure.getCheckProtocolTimeout()); - } catch(Exception ex) { + DisposeConfigValue.CHECK_PROTO_REQUEST_TIMEOUT = + Boolean.parseBoolean(disposeConfigure.getCheckProtocolTimeout()); + } catch (Exception ex) { log.error("load CHECK_PROTO_REQUEST_TIMEOUT configure error: {}", ex.getMessage()); } } diff --git a/src/main/resources/mappers/DisposeCapacity.xml b/src/main/resources/mappers/DisposeCapacity.xml new file mode 100644 index 00000000..22e3f87b --- /dev/null +++ b/src/main/resources/mappers/DisposeCapacity.xml @@ -0,0 +1,31 @@ + + + + + INSERT IGNORE INTO dispose_capacity(deviceId, capacityType, objectType, ipType, protectIp) + VALUES + + (#{cap.deviceId}, #{cap.capacityType}, #{cap.objectType}, #{cap.ipType}, #{cap.protectIp}) + + + + + DELETE + FROM dispose_capacity + WHERE dispose_capacity.deviceId = #{deviceId} + AND dispose_capacity.capacityType = #{capacityType} + + + + DELETE + FROM dispose_capacity + WHERE dispose_capacity.deviceId = #{deviceId} + + + + \ No newline at end of file diff --git a/src/main/resources/mappers/DisposeDevice.xml b/src/main/resources/mappers/DisposeDevice.xml new file mode 100644 index 00000000..5469dc4c --- /dev/null +++ b/src/main/resources/mappers/DisposeDevice.xml @@ -0,0 +1,14 @@ + + + + + INSERT IGNORE INTO dispose_device(ipAddr, deviceType, + areaCode, deviceName, manufacturer, + model, version, userName, password, urlPath, urlType, readme, status) + VALUES (#{ipAddr}, #{deviceType}, + #{areaCode}, #{deviceName}, #{manufacturer}, + #{model}, #{version}, #{userName}, #{password}, #{urlPath}, #{urlType}, #{readme}, + ${@com.dispose.common.ObjectStatus@NORMAL.getCode()}) + + \ No newline at end of file diff --git a/src/main/resources/mappers/UserAccount.xml b/src/main/resources/mappers/UserAccount.xml index 9cabfbad..51c7a34b 100644 --- a/src/main/resources/mappers/UserAccount.xml +++ b/src/main/resources/mappers/UserAccount.xml @@ -4,7 +4,7 @@