Commit fe7499ab by tutingyin

refactor: 配置策略适配 功能策略适配

parent b7e1729d
package com.skr.mdm.bean.dto; package com.skr.mdm.bean.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -43,7 +41,6 @@ public class OaLeaveDTO implements Serializable { ...@@ -43,7 +41,6 @@ public class OaLeaveDTO implements Serializable {
@ApiModelProperty("请假结束时间") @ApiModelProperty("请假结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
@ApiModelProperty("事由") @ApiModelProperty("事由")
......
...@@ -33,7 +33,7 @@ public class ExportLogExcelMiddleQO implements Serializable { ...@@ -33,7 +33,7 @@ public class ExportLogExcelMiddleQO implements Serializable {
private String deviceName; private String deviceName;
/** /**
* 设备类型 1:手机 2:手环 3:记录仪 * 设备类型 1:手机 2:手环 3:记录仪 4: PC
*/ */
private String deviceType; private String deviceType;
......
package com.skr.mdm.bean.qo; package com.skr.mdm.bean.qo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -24,18 +24,20 @@ public class AppStrategyQO extends BaseStrategyQO { ...@@ -24,18 +24,20 @@ public class AppStrategyQO extends BaseStrategyQO {
@NotBlank(message = "策略名称不能为空") @NotBlank(message = "策略名称不能为空")
private String strategyName; private String strategyName;
@ApiModelProperty(value = "应用商店安装黑白名单")
private AppStrategyInfoQO appStoreInstallSourceQO;
@ApiModelProperty(value = "应用安装黑白名单") @ApiModelProperty(value = "应用安装黑白名单")
private AppStrategyInfoQO appStrategyInstallQO; private AppStrategyInfoQO appStrategyInstallQO;
@ApiModelProperty(value = "应用运行黑白名单")
private AppStrategyInfoQO appStrategyRunQO;
@ApiModelProperty(value = "安装来源")
private AppStrategyInfoQO appStrategyInstallSourceQO;
@ApiModelProperty(value = "应用防卸载") @ApiModelProperty(value = "应用防卸载")
private List<Integer> notUninstallAppIdList; private List<Integer> notUninstallAppIdList;
@ApiModelProperty(value = "应用运行黑白名单")
private AppStrategyInfoQO appStrategyRunQO;
@ApiModelProperty(value = "快捷应用") @ApiModelProperty(value = "快捷应用")
private List<Integer> shortcutsAppIdList; private List<Integer> shortcutsAppIdList;
......
package com.skr.mdm.bean.qo.strategy;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author tty
* @date 2024/9/13 9:56
*/
@Data
public class ConfigQO {
@ApiModelProperty(value = "类型 0:无 1:黑 2:白")
private Integer type;
@ApiModelProperty(value = "配置集合")
private List<Object> configList;
}
\ No newline at end of file
...@@ -3,6 +3,8 @@ package com.skr.mdm.bean.qo.strategy; ...@@ -3,6 +3,8 @@ package com.skr.mdm.bean.qo.strategy;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @author nfq * @author nfq
* @date 2020/8/26 9:56 * @date 2020/8/26 9:56
...@@ -25,26 +27,17 @@ public class ConfigStrategyInfoQO { ...@@ -25,26 +27,17 @@ public class ConfigStrategyInfoQO {
@ApiModelProperty(value = "结束时间") @ApiModelProperty(value = "结束时间")
private String endTime; private String endTime;
@ApiModelProperty(value = "热点白名单") @ApiModelProperty(value = "usb黑白名单配置")
private String hotSpotWhitelist; private ConfigQO usbQO;
@ApiModelProperty(value = "蓝牙白名单")
private String bluetoothWhitelist;
@ApiModelProperty(value = "通话白名单")
private String callWhitelist;
@ApiModelProperty(value = "密码配置")
private PasswordConfigQO passwordConfigQO;
@ApiModelProperty(value = "apn配置") @ApiModelProperty(value = "wifi黑白名单配置")
private ApnConfigQO apnConfigQO; private ConfigQO wifiQO;
@ApiModelProperty(value = "vpn配置") @ApiModelProperty(value = "蓝牙黑白名单配置")
private VpnConfigQO vpnConfigQO; private ConfigQO bluetoothQO;
@ApiModelProperty(value = "wifi白名单") @ApiModelProperty(value = "热点黑白名单配置")
private WifiWhitelistQO wifiWhitelistQO; private ConfigQO hotSpotQO;
@ApiModelProperty(value = "锁屏壁纸") @ApiModelProperty(value = "锁屏壁纸")
private String wingPaper; private String wingPaper;
......
...@@ -20,28 +20,10 @@ public class StrategyNetworkIsolationQO extends BaseStrategyQO { ...@@ -20,28 +20,10 @@ public class StrategyNetworkIsolationQO extends BaseStrategyQO {
@NotBlank(message = "策略名称不能为空") @NotBlank(message = "策略名称不能为空")
@ApiModelProperty(value = "策略名称") @ApiModelProperty(value = "策略名称")
private String strategyName; private String strategyName;
@ApiModelProperty(value = "url 主要字段 可有多条数据 ',' 分割 json数组格式传参 列: '[1,2,3,4,5]'")
@ApiModelProperty(value = "作用域 (1:个人域 2:工作域 3:个人域和工作域)")
private Integer actionScope;
@ApiModelProperty(value = "1: 有围栏策略 0:无围栏策略")
private Integer rail;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
@ApiModelProperty(value = "半径")
private String radius;
@ApiModelProperty(value = "自定义范围")
private String locs;
@ApiModelProperty(value = "url")
private String url; private String url;
@ApiModelProperty(value = "ip") @ApiModelProperty(value = "ip 主要字段 可有多条数据 ',' 分割 json数组格式传参 列: '[1,2,3,4,5]'")
private String ip; private String ip;
@ApiModelProperty(value = "dns") @ApiModelProperty(value = "dns 主要字段 可有多条数据 ',' 分割 json数组格式传参 列: '[1,2,3,4,5]'")
private String dns; private String dns;
} }
\ No newline at end of file
package com.skr.mdm.bean.qo.strategy;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author tty
* @date 2024/9/13 9:56
*/
@Data
public class UsbConfigQO {
@ApiModelProperty(value = "pid")
private Integer pid;
@ApiModelProperty(value = "pid")
private Integer vid;
}
\ No newline at end of file
package com.skr.mdm.bean.qo.violation; package com.skr.mdm.bean.qo.violation;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -30,7 +29,6 @@ public class ViolationStatisticsQO implements Serializable { ...@@ -30,7 +29,6 @@ public class ViolationStatisticsQO implements Serializable {
@ApiModelProperty("违规时间") @ApiModelProperty("违规时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String violationTime; private String violationTime;
} }
\ No newline at end of file
...@@ -31,6 +31,8 @@ public class ReloadSO { ...@@ -31,6 +31,8 @@ public class ReloadSO {
private List<RailStrategySO> railStrategyList; private List<RailStrategySO> railStrategyList;
@ApiModelProperty(value = "配置策略") @ApiModelProperty(value = "配置策略")
private List<ConfigStrategySO> configStrategyList; private List<ConfigStrategySO> configStrategyList;
@ApiModelProperty(value = "內外网隔离策略")
private List<NetworkIsoStrategySO> networkIsolationStrategyList;
@ApiModelProperty(value = "合规策略") @ApiModelProperty(value = "合规策略")
private List<SystemComplianceSO> complianceStrategyList; private List<SystemComplianceSO> complianceStrategyList;
@ApiModelProperty(value = "应用策略") @ApiModelProperty(value = "应用策略")
......
...@@ -36,7 +36,7 @@ public class DeviceExcelInfoSO implements Serializable { ...@@ -36,7 +36,7 @@ public class DeviceExcelInfoSO implements Serializable {
private String userName; private String userName;
/** /**
* 设备类型 1:手机 2:手环 3:记录仪 * 设备类型 1:手机 2:手环 3:记录仪 4: PC
*/ */
@ExcelProperty("类型") @ExcelProperty("类型")
private String deviceType; private String deviceType;
......
package com.skr.mdm.bean.so.oaleave; package com.skr.mdm.bean.so.oaleave;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.skr.mdm.bean.so.AppStrategySO; import com.skr.mdm.bean.so.AppStrategySO;
import com.skr.mdm.bean.so.strategy.*; import com.skr.mdm.bean.so.strategy.*;
import lombok.Builder; import lombok.Builder;
...@@ -26,11 +25,9 @@ public class OaLeaveStrategySO { ...@@ -26,11 +25,9 @@ public class OaLeaveStrategySO {
private Integer id; private Integer id;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime; private Date startTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
private List<RailStrategySO> railStrategySOList; private List<RailStrategySO> railStrategySOList;
......
package com.skr.mdm.bean.so.strategy;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author tty
* @date 2024/9/13 11:56
*/
@Data
public class ConfigSO {
@ApiModelProperty(value = "类型 0:无 1:黑 2:白")
private Integer type;
@ApiModelProperty(value = "配置信息")
private String msg;
}
\ No newline at end of file
...@@ -38,16 +38,19 @@ public class ConfigStrategyInfoSO { ...@@ -38,16 +38,19 @@ public class ConfigStrategyInfoSO {
@ApiModelProperty(value = "结束时间") @ApiModelProperty(value = "结束时间")
@JsonSerialize(using = DateConvertUtil.class) @JsonSerialize(using = DateConvertUtil.class)
private Date endTime; private Date endTime;
@ApiModelProperty(value = "蓝牙白名单")
private String bluetoothWhitelist; @ApiModelProperty(value = "usb黑白名单配置")
@ApiModelProperty(value = "密码配置") private ConfigSO usbSO;
private PasswordConfigSO passwordConfigSO;
@ApiModelProperty(value = "apn配置") @ApiModelProperty(value = "wifi黑白名单配置")
private ApnConfigSO apnConfigSO; private ConfigSO wifiSO;
@ApiModelProperty(value = "vpn配置")
private VpnConfigSO vpnConfigSO; @ApiModelProperty(value = "蓝牙黑白名单配置")
@ApiModelProperty(value = "wifi白名单") private ConfigSO bluetoothSO;
private WifiWhitelistSO wifiWhitelistSO;
@ApiModelProperty(value = "热点黑白名单配置")
private ConfigSO hotSpotSO;
@ApiModelProperty(value = "策略全局类型(1:公司全局 2:部门全局 3:个人)") @ApiModelProperty(value = "策略全局类型(1:公司全局 2:部门全局 3:个人)")
private Integer globalType; private Integer globalType;
......
...@@ -38,13 +38,13 @@ public class NetworkIsoStrategySO { ...@@ -38,13 +38,13 @@ public class NetworkIsoStrategySO {
private String locs; private String locs;
@ApiModelProperty(value = "url") @ApiModelProperty(value = "url")
private String url; private Object url;
@ApiModelProperty(value = "ip") @ApiModelProperty(value = "ip")
private String ip; private Object ip;
@ApiModelProperty(value = "dns") @ApiModelProperty(value = "dns")
private String dns; private Object dns;
@ApiModelProperty(value = "下发时间") @ApiModelProperty(value = "下发时间")
private Long sendTime; private Long sendTime;
......
package com.skr.mdm.bean.vo.access; package com.skr.mdm.bean.vo.access;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -176,7 +175,6 @@ public class WechatQqStrategyInfoVO implements Serializable { ...@@ -176,7 +175,6 @@ public class WechatQqStrategyInfoVO implements Serializable {
* 创建时间 * 创建时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(hidden = true) @ApiModelProperty(hidden = true)
private Date createTime; private Date createTime;
...@@ -184,7 +182,6 @@ public class WechatQqStrategyInfoVO implements Serializable { ...@@ -184,7 +182,6 @@ public class WechatQqStrategyInfoVO implements Serializable {
* 修改时间 * 修改时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(hidden = true) @ApiModelProperty(hidden = true)
private Date updateTime; private Date updateTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.alarm; package com.skr.mdm.bean.vo.alarm;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -20,6 +19,5 @@ public class AlarmReceiverVO { ...@@ -20,6 +19,5 @@ public class AlarmReceiverVO {
private String phoneNumber; private String phoneNumber;
@ApiModelProperty(value = "状态(1 未确认 2:已确认)") @ApiModelProperty(value = "状态(1 未确认 2:已确认)")
private Integer state; private Integer state;
private Date confirmTime; private Date confirmTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.alarm; package com.skr.mdm.bean.vo.alarm;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -27,7 +26,6 @@ public class AlarmRecordVO implements Serializable { ...@@ -27,7 +26,6 @@ public class AlarmRecordVO implements Serializable {
private String address; private String address;
@ApiModelProperty(value = "状态(1 未确认 2:已确认)") @ApiModelProperty(value = "状态(1 未确认 2:已确认)")
private Integer state; private Integer state;
private Date alarmTime; private Date alarmTime;
......
package com.skr.mdm.bean.vo.app; package com.skr.mdm.bean.vo.app;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.app; package com.skr.mdm.bean.vo.app;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.appstore; package com.skr.mdm.bean.vo.appstore;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -4,7 +4,7 @@ import com.alibaba.excel.annotation.ExcelProperty; ...@@ -4,7 +4,7 @@ import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.appstore; package com.skr.mdm.bean.vo.appstore;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -142,7 +142,6 @@ public class AppStoreVO implements Serializable { ...@@ -142,7 +142,6 @@ public class AppStoreVO implements Serializable {
* 修改时间 * 修改时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime;
/** /**
......
package com.skr.mdm.bean.vo.appstore; package com.skr.mdm.bean.vo.appstore;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.cmd; package com.skr.mdm.bean.vo.cmd;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.communication; package com.skr.mdm.bean.vo.communication;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -5,7 +5,7 @@ import com.alibaba.excel.annotation.ExcelProperty; ...@@ -5,7 +5,7 @@ import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentStyle; import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.write.style.HeadStyle; import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.communication; package com.skr.mdm.bean.vo.communication;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
......
package com.skr.mdm.bean.vo.communication; package com.skr.mdm.bean.vo.communication;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.communication; package com.skr.mdm.bean.vo.communication;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.communication; package com.skr.mdm.bean.vo.communication;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.company; package com.skr.mdm.bean.vo.company;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.compliance; package com.skr.mdm.bean.vo.compliance;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.content; package com.skr.mdm.bean.vo.content;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -33,7 +33,6 @@ public class ContentVO implements Serializable { ...@@ -33,7 +33,6 @@ public class ContentVO implements Serializable {
@ApiModelProperty("修改时间") @ApiModelProperty("修改时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime;
@ApiModelProperty("操作者") @ApiModelProperty("操作者")
......
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
...@@ -21,7 +21,6 @@ public class AppInstallVO { ...@@ -21,7 +21,6 @@ public class AppInstallVO {
private String appName; private String appName;
private String packageName; private String packageName;
private String versionCode; private String versionCode;
private Date installTime; private Date installTime;
private String isInstall; private String isInstall;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -37,12 +37,10 @@ public class ClientOaLeaveVO implements Serializable { ...@@ -37,12 +37,10 @@ public class ClientOaLeaveVO implements Serializable {
@ApiModelProperty("请假开始时间") @ApiModelProperty("请假开始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime; private Date startTime;
@ApiModelProperty("请假结束时间") @ApiModelProperty("请假结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
@ApiModelProperty("事由") @ApiModelProperty("事由")
...@@ -53,7 +51,6 @@ public class ClientOaLeaveVO implements Serializable { ...@@ -53,7 +51,6 @@ public class ClientOaLeaveVO implements Serializable {
@ApiModelProperty("提交时间") @ApiModelProperty("提交时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime; private Date createTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -37,7 +37,6 @@ public class DeviceComplianceStrategyVO implements Serializable { ...@@ -37,7 +37,6 @@ public class DeviceComplianceStrategyVO implements Serializable {
@ApiModelProperty(value = "下发时间") @ApiModelProperty(value = "下发时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date issuedTime; private Date issuedTime;
@ApiModelProperty(value = "状态 (1:下发中 2:下发成功 3:执行中 4:执行成功 )") @ApiModelProperty(value = "状态 (1:下发中 2:下发成功 3:执行中 4:执行成功 )")
...@@ -51,6 +50,5 @@ public class DeviceComplianceStrategyVO implements Serializable { ...@@ -51,6 +50,5 @@ public class DeviceComplianceStrategyVO implements Serializable {
@ApiModelProperty(value = "违规时间") @ApiModelProperty(value = "违规时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date violationTime; private Date violationTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -111,7 +111,6 @@ public class DeviceEquipmentInfoVO { ...@@ -111,7 +111,6 @@ public class DeviceEquipmentInfoVO {
private String longitude; private String longitude;
@ApiModelProperty("位置更新时间") @ApiModelProperty("位置更新时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String posCorrentionTime; private String posCorrentionTime;
@ApiModelProperty("root 状态 0:未 ROOT 1:已 ROOT") @ApiModelProperty("root 状态 0:未 ROOT 1:已 ROOT")
private String rootStatus; private String rootStatus;
......
...@@ -45,9 +45,9 @@ public class DeviceEquipmentVO { ...@@ -45,9 +45,9 @@ public class DeviceEquipmentVO {
private String departmentName; private String departmentName;
/** /**
* 设备类型 1:手机 2:手环 3:记录仪 * 设备类型 1:手机 2:手环 3:记录仪 9: PC
*/ */
@ApiModelProperty("设备类型 1:手机 2:手环 3:记录仪") @ApiModelProperty("设备类型 1:手机 2:手环 3:记录仪 9: PC")
private Integer equipmentType; private Integer equipmentType;
/** /**
...@@ -80,6 +80,7 @@ public class DeviceEquipmentVO { ...@@ -80,6 +80,7 @@ public class DeviceEquipmentVO {
@ApiModelProperty("设备型号") @ApiModelProperty("设备型号")
private String equipmentModel; private String equipmentModel;
@ApiModelProperty("序列号")
private String serialNumber; private String serialNumber;
/** /**
...@@ -109,8 +110,6 @@ public class DeviceEquipmentVO { ...@@ -109,8 +110,6 @@ public class DeviceEquipmentVO {
@ApiModelProperty("最后在线时间") @ApiModelProperty("最后在线时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date offlineTime; private Date offlineTime;
@ApiModelProperty(value = "机卡绑定(0:未绑定 1:绑定)")
private Integer isCardBinding;
@ApiModelProperty(value = "解绑密码") @ApiModelProperty(value = "解绑密码")
private String cardUnbindPassword; private String cardUnbindPassword;
@ApiModelProperty(value = "离线解锁码") @ApiModelProperty(value = "离线解锁码")
......
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.equipment; package com.skr.mdm.bean.vo.equipment;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -45,17 +45,14 @@ public class OaLeaveVO implements Serializable { ...@@ -45,17 +45,14 @@ public class OaLeaveVO implements Serializable {
@ApiModelProperty("请假开始时间") @ApiModelProperty("请假开始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime; private Date startTime;
@ApiModelProperty("请假结束时间") @ApiModelProperty("请假结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
@ApiModelProperty("销假时间") @ApiModelProperty("销假时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date reportTime; private Date reportTime;
@ApiModelProperty("事由") @ApiModelProperty("事由")
...@@ -69,7 +66,6 @@ public class OaLeaveVO implements Serializable { ...@@ -69,7 +66,6 @@ public class OaLeaveVO implements Serializable {
@ApiModelProperty("提交时间") @ApiModelProperty("提交时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime; private Date createTime;
} }
\ No newline at end of file
...@@ -33,15 +33,10 @@ public class SendCmdMessageInfoVO { ...@@ -33,15 +33,10 @@ public class SendCmdMessageInfoVO {
private String state; private String state;
@ApiModelProperty("点名状态 1:未点 2:已点") @ApiModelProperty("点名状态 1:未点 2:已点")
private Integer rollCallStatus; private Integer rollCallStatus;
@ApiModelProperty("imei") @ApiModelProperty("serialNumber")
private String imei; private String serialNumber;
@ApiModelProperty("uuid ")
private String uuid;
@ApiModelProperty("oaid")
private String oaid;
@ApiModelProperty("下发时间") @ApiModelProperty("下发时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String sendTime; private String sendTime;
@ApiModelProperty("流量状态(1:未超 2:已超)") @ApiModelProperty("流量状态(1:未超 2:已超)")
private Integer flowStatus; private Integer flowStatus;
...@@ -52,7 +47,6 @@ public class SendCmdMessageInfoVO { ...@@ -52,7 +47,6 @@ public class SendCmdMessageInfoVO {
@ApiModelProperty("通知查看状态 1:未查看 2:已查看") @ApiModelProperty("通知查看状态 1:未查看 2:已查看")
private Integer readStatus; private Integer readStatus;
@ApiModelProperty("点名应答时间") @ApiModelProperty("点名应答时间")
private Date responseTime; private Date responseTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.function; package com.skr.mdm.bean.vo.function;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
...@@ -13,5 +13,6 @@ public class IndexEquipmentTypeVO { ...@@ -13,5 +13,6 @@ public class IndexEquipmentTypeVO {
private long braceletCount; private long braceletCount;
private long recorderCount; private long recorderCount;
private long watchesCount; private long watchesCount;
private long pcCount;
private long otherCount; private long otherCount;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -2,7 +2,7 @@ package com.skr.mdm.bean.vo.log; ...@@ -2,7 +2,7 @@ package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.log; package com.skr.mdm.bean.vo.log;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.report; package com.skr.mdm.bean.vo.report;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.report; package com.skr.mdm.bean.vo.report;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.report; package com.skr.mdm.bean.vo.report;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
......
package com.skr.mdm.bean.vo.role; package com.skr.mdm.bean.vo.role;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.sensitive; package com.skr.mdm.bean.vo.sensitive;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.sensitive; package com.skr.mdm.bean.vo.sensitive;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.sensitive; package com.skr.mdm.bean.vo.sensitive;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.skr.mdm.bean.so.strategy.ConfigSO;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -49,19 +50,16 @@ public class ConfigStrategyInfoVO { ...@@ -49,19 +50,16 @@ public class ConfigStrategyInfoVO {
@ApiModelProperty(value = "结束时间") @ApiModelProperty(value = "结束时间")
private Date endTime; private Date endTime;
@ApiModelProperty(value = "蓝牙白名单") @ApiModelProperty(value = "蓝牙黑白名单配置")
private String bluetoothWhitelist; private ConfigVO bluetoothVO;
@ApiModelProperty(value = "密码配置")
private PasswordConfigVO passwordConfigVO;
@ApiModelProperty(value = "apn配置") @ApiModelProperty(value = "usb配置")
private ApnConfigVO apnConfigVO; private ConfigVO usbVO;
@ApiModelProperty(value = "vpn配置") @ApiModelProperty(value = "热点")
private VpnConfigVO vpnConfigVO; private ConfigVO hotSpotVO;
@ApiModelProperty(value = "wifi白名单") @ApiModelProperty(value = "wifi白名单")
private WifiWhitelistVO wifiWhitelistVO; private ConfigVO wifiVO;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -39,13 +39,13 @@ public class StrategyNetworkIsolationVO { ...@@ -39,13 +39,13 @@ public class StrategyNetworkIsolationVO {
private String locs; private String locs;
@ApiModelProperty(value = "url") @ApiModelProperty(value = "url")
private String url; private Object url;
@ApiModelProperty(value = "ip") @ApiModelProperty(value = "ip")
private String ip; private Object ip;
@ApiModelProperty(value = "dns") @ApiModelProperty(value = "dns")
private String dns; private Object dns;
@ApiModelProperty(value = "策略全局类型(1:公司全局 2:部门全局 3:个人)") @ApiModelProperty(value = "策略全局类型(1:公司全局 2:部门全局 3:个人)")
private Integer globalType; private Integer globalType;
......
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -37,7 +37,6 @@ public class StrategyUserVO { ...@@ -37,7 +37,6 @@ public class StrategyUserVO {
private Integer state; private Integer state;
@ApiModelProperty(value = "下发时间") @ApiModelProperty(value = "下发时间")
private Date issuedTime; private Date issuedTime;
} }
\ No newline at end of file
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -27,7 +27,6 @@ public class StrategyVO { ...@@ -27,7 +27,6 @@ public class StrategyVO {
private Integer strategyType; private Integer strategyType;
@ApiModelProperty(value = "操作时间") @ApiModelProperty(value = "操作时间")
private Date operateTime; private Date operateTime;
@ApiModelProperty(value = "操作者") @ApiModelProperty(value = "操作者")
......
package com.skr.mdm.bean.vo.strategy; package com.skr.mdm.bean.vo.strategy;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -28,7 +28,6 @@ public class LogAdminVO { ...@@ -28,7 +28,6 @@ public class LogAdminVO {
@ApiModelProperty(name = "createTime", value = "创建时间") @ApiModelProperty(name = "createTime", value = "创建时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime; private Date createTime;
@ApiModelProperty(name = "operator", value = "操作人") @ApiModelProperty(name = "operator", value = "操作人")
......
package com.skr.mdm.bean.vo.system; package com.skr.mdm.bean.vo.system;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -40,11 +40,9 @@ public class SysChangeCertificateVO { ...@@ -40,11 +40,9 @@ public class SysChangeCertificateVO {
private String issuerDn; private String issuerDn;
@ApiModelProperty("起始时间") @ApiModelProperty("起始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date beginTime; private Date beginTime;
@ApiModelProperty("到期时间") @ApiModelProperty("到期时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
@ApiModelProperty("证书名称") @ApiModelProperty("证书名称")
private String certificateName; private String certificateName;
......
...@@ -19,7 +19,7 @@ public class UserEquipmentVO implements Serializable { ...@@ -19,7 +19,7 @@ public class UserEquipmentVO implements Serializable {
private Integer id; private Integer id;
private Integer userId; private Integer userId;
@ApiModelProperty("设备类型(1:手机 2:手环 3:记录仪)") @ApiModelProperty("设备类型(1:手机 2:手环 3:记录仪 4: PC)")
private String equipmentType; private String equipmentType;
@ApiModelProperty("设备名称") @ApiModelProperty("设备名称")
......
package com.skr.mdm.bean.vo.user; package com.skr.mdm.bean.vo.user;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.warn; package com.skr.mdm.bean.vo.warn;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.warn; package com.skr.mdm.bean.vo.warn;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.warn; package com.skr.mdm.bean.vo.warn;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.bean.vo.warn; package com.skr.mdm.bean.vo.warn;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
package com.skr.mdm.controller;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dto.LoginUserDTO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService;
import com.skr.mdm.service.StrategyFactory;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.security.core.Authentication;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
/**
* @author nfq
* @date 2020/8/11 16:52
*/
@RestController
@RequestMapping("configStrategy")
@Api(tags = "配置策略")
public class ConfigStrategyController {
@PostMapping("callback")
@ApiOperation("配置策略下发回调")
public ResponseResult configStrategyCallback(@RequestParam @ApiParam(value = "回调内容", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
CmdHandlerService strategy = StrategyFactory.getStrategy(CmdTypeConstants.CONFIG_STRATEGY_CALLBACK);
return strategy.cmdHandler(loginUserDTO.getId(), data);
}
}
\ No newline at end of file
package com.skr.mdm.controller;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dto.LoginUserDTO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService;
import com.skr.mdm.service.StrategyFactory;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.security.core.Authentication;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
/**
* @author nfq
* @date 2020/8/11 16:52
*/
@RestController
@RequestMapping("networkStrategy")
@Api(tags = "内外网隔离策略")
public class NetworkIosStrategyController {
@PostMapping("callback")
@ApiOperation("内外网隔离策略下发回调")
public ResponseResult configStrategyCallback(@RequestParam @ApiParam(value = "回调内容", required = true) String data,
@ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
CmdHandlerService strategy = StrategyFactory.getStrategy(CmdTypeConstants.NETWORK_ISOLATION);
return strategy.cmdHandler(loginUserDTO.getId(), data);
}
}
\ No newline at end of file
package com.skr.mdm.controller;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dto.LoginUserDTO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.bean.so.strategy.RailStrategySO;
import com.skr.mdm.service.CmdHandlerService;
import com.skr.mdm.service.StrategyFactory;
import io.swagger.annotations.*;
import org.springframework.security.core.Authentication;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
/**
* @author nfq
* @date 2020/8/11 17:20
*/
@RestController
@RequestMapping("railStrategy")
@Api(tags = "功能策略")
public class RailStrategyController {
@PostMapping("callback")
@ApiOperation("功能策略下发回调")
@ApiResponses({
@ApiResponse(code = 200, message = "成功", response = RailStrategySO.class)
})
public ResponseResult callback(@RequestParam @ApiParam(value = "回调内容", required = true) String data, @ApiIgnore Authentication authentication) {
LoginUserDTO loginUserDTO = (LoginUserDTO) authentication.getPrincipal();
CmdHandlerService strategy = StrategyFactory.getStrategy(CmdTypeConstants.RAIL_ISSUED_CALLBACK);
return strategy.cmdHandler(loginUserDTO.getId(), data);
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.reload.handler;
import com.skr.mdm.annotation.MdmReloadHandler;
import com.skr.mdm.bean.bo.StrategyIssuedBO;
import com.skr.mdm.bean.so.ReloadSO;
import com.skr.mdm.bean.so.strategy.ConfigStrategySO;
import com.skr.mdm.dao.StrategyConfigDao;
import com.skr.mdm.enums.StrategyEquipmentStateEnum;
import com.skr.mdm.enums.StrategyStateEnum;
import com.skr.mdm.manager.ConfigStrategyManager;
import com.skr.mdm.service.impl.reload.ReloadHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author nfq
* @date 2022/06/10 11:51
*/
@MdmReloadHandler
@Slf4j
public class ConfigStrategyReloadHandler implements ReloadHandler {
@Autowired
private StrategyConfigDao strategyConfigDao;
@Autowired
private ConfigStrategyManager configStrategyManager;
@Override
public void doHandler(ReloadSO reloadSO, Integer equipmentId) {
try {
List<StrategyIssuedBO> strategyIssuedBOList = strategyConfigDao.listStrategyIdByEquipmentId(equipmentId,
StrategyStateEnum.DISABLE.getState(), StrategyEquipmentStateEnum.ISSUING.getState());
List<ConfigStrategySO> configStrategySOList = new ArrayList<>(strategyIssuedBOList.size());
if (CollectionUtils.isNotEmpty(strategyIssuedBOList)) {
List<Integer> strategyIdList = strategyIssuedBOList.stream().map(StrategyIssuedBO::getStrategyId)
.collect(Collectors.toList());
configStrategySOList = configStrategyManager.getConfigStrategySO(strategyIdList, System.currentTimeMillis());
Map<Integer, StrategyIssuedBO> strategyIssuedBOMap = strategyIssuedBOList.stream()
.collect(Collectors.toMap(StrategyIssuedBO::getStrategyId, strategyIssuedBO -> strategyIssuedBO));
configStrategySOList.forEach(configStrategySO -> {
if (strategyIssuedBOMap.containsKey(configStrategySO.getId())) {
StrategyIssuedBO strategyIssuedBO = strategyIssuedBOMap.get(configStrategySO.getId());
configStrategySO.setSendTime(strategyIssuedBO.getSendTime().getTime());
}
});
}
reloadSO.setConfigStrategyList(configStrategySOList);
} catch (Exception e) {
log.error("卸载重装配置策略异常:" + equipmentId, e);
}
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.reload.handler;
import com.skr.mdm.annotation.MdmReloadHandler;
import com.skr.mdm.bean.bo.StrategyIssuedBO;
import com.skr.mdm.bean.so.ReloadSO;
import com.skr.mdm.bean.so.strategy.RailStrategySO;
import com.skr.mdm.dao.RailStrategyDao;
import com.skr.mdm.enums.StrategyEquipmentStateEnum;
import com.skr.mdm.enums.StrategyStateEnum;
import com.skr.mdm.manager.FunctionStrategyManager;
import com.skr.mdm.service.impl.reload.ReloadHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author nfq
* @date 2022/06/10 11:46
*/
@MdmReloadHandler
@Slf4j
public class FunctionStrategyReloadHandler implements ReloadHandler {
@Autowired
private RailStrategyDao strategyDao;
@Autowired
private FunctionStrategyManager functionStrategyManager;
@Override
public void doHandler(ReloadSO reloadSO, Integer equipmentId) {
try {
List<StrategyIssuedBO> strategyIssuedBOList = strategyDao.listStrategyIdByEquipmentId(equipmentId, StrategyStateEnum.DISABLE.getState(), StrategyEquipmentStateEnum.ISSUING.getState());
List<RailStrategySO> railStrategySOList = new ArrayList<>(strategyIssuedBOList.size());
if (CollectionUtils.isNotEmpty(strategyIssuedBOList)) {
List<Integer> strategyIdList = strategyIssuedBOList.stream().map(StrategyIssuedBO::getStrategyId)
.collect(Collectors.toList());
railStrategySOList = functionStrategyManager.getRailStrategySOList(strategyIdList, System.currentTimeMillis());
Map<Integer, StrategyIssuedBO> strategyIssuedBOMap = strategyIssuedBOList.stream()
.collect(Collectors.toMap(StrategyIssuedBO::getStrategyId, strategyIssuedBO -> strategyIssuedBO));
railStrategySOList.forEach(railStrategySO -> {
if (strategyIssuedBOMap.containsKey(railStrategySO.getId())) {
StrategyIssuedBO strategyIssuedBO = strategyIssuedBOMap.get(railStrategySO.getId());
railStrategySO.setSendTime(strategyIssuedBO.getSendTime().getTime());
}
});
}
reloadSO.setRailStrategyList(railStrategySOList);
} catch (Exception e) {
log.error("卸载重装功能策略异常:" + equipmentId, e);
}
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.reload.handler;
import com.skr.mdm.annotation.MdmReloadHandler;
import com.skr.mdm.bean.bo.StrategyIssuedBO;
import com.skr.mdm.bean.so.ReloadSO;
import com.skr.mdm.bean.so.strategy.NetworkIsoStrategySO;
import com.skr.mdm.dao.StrategyNetworkIsolationDao;
import com.skr.mdm.enums.StrategyEquipmentStateEnum;
import com.skr.mdm.enums.StrategyStateEnum;
import com.skr.mdm.manager.NetworkIsoStrategyManager;
import com.skr.mdm.service.impl.reload.ReloadHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author nfq
* @date 2022/06/10 11:51
*/
@MdmReloadHandler
@Slf4j
public class NetworkIsoStrategyReloadHandler implements ReloadHandler {
@Autowired
private StrategyNetworkIsolationDao networkIsolationDao;
@Autowired
private NetworkIsoStrategyManager networkIsoStrategyManager;
@Override
public void doHandler(ReloadSO reloadSO, Integer equipmentId) {
try {
List<StrategyIssuedBO> strategyIssuedBOList = networkIsolationDao.listStrategyIdByEquipmentId(equipmentId,
StrategyStateEnum.DISABLE.getState(), StrategyEquipmentStateEnum.ISSUING.getState());
List<NetworkIsoStrategySO> networkIsoStrategySOList = new ArrayList<>(strategyIssuedBOList.size());
if (CollectionUtils.isNotEmpty(strategyIssuedBOList)) {
List<Integer> strategyIdList = strategyIssuedBOList.stream().map(StrategyIssuedBO::getStrategyId)
.collect(Collectors.toList());
networkIsoStrategySOList = networkIsoStrategyManager.getStrategySO(strategyIdList, System.currentTimeMillis());
Map<Integer, StrategyIssuedBO> strategyIssuedBOMap = strategyIssuedBOList.stream()
.collect(Collectors.toMap(StrategyIssuedBO::getStrategyId, strategyIssuedBO -> strategyIssuedBO));
networkIsoStrategySOList.forEach(configStrategySO -> {
if (strategyIssuedBOMap.containsKey(configStrategySO.getId())) {
StrategyIssuedBO strategyIssuedBO = strategyIssuedBOMap.get(configStrategySO.getId());
configStrategySO.setSendTime(strategyIssuedBO.getSendTime().getTime());
}
});
}
reloadSO.setNetworkIsolationStrategyList(networkIsoStrategySOList);
} catch (Exception e) {
log.error("卸载重装配置策略异常:" + equipmentId, e);
}
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.strategy;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.skr.mdm.annotation.CmdHandler;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dao.StrategyConfigUserDao;
import com.skr.mdm.dto.StrategyCallbackInfoDTO;
import com.skr.mdm.entity.StrategyConfigUserDO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
/**
* @author nfq
* @date 2020/8/3 11:53
*/
@Slf4j
@CmdHandler(cmdType = CmdTypeConstants.CONFIG_STRATEGY_CALLBACK)
public class ConfigStrategyServiceImpl implements CmdHandlerService {
@Autowired
private StrategyConfigUserDao strategyConfigUserDao;
@Override
public ResponseResult cmdHandler(Integer equipmentId, String data) {
// 配置策略下发回调
try {
JSONArray jsonArray = JSONUtil.parseArray(data);
List<StrategyCallbackInfoDTO> strategyCallbackInfoDTOList = JSONUtil.toList(jsonArray, StrategyCallbackInfoDTO.class);
List<Integer> cidList = new ArrayList<>(strategyCallbackInfoDTOList.size());
strategyCallbackInfoDTOList.forEach(strategyCallbackInfoDTO -> {
LambdaUpdateChainWrapper<StrategyConfigUserDO> updateChainWrapper = new LambdaUpdateChainWrapper<>(strategyConfigUserDao);
updateChainWrapper
.set(strategyCallbackInfoDTO.getState() != null, StrategyConfigUserDO::getState, strategyCallbackInfoDTO.getState())
.set(strategyCallbackInfoDTO.getMdmStatus() != null, StrategyConfigUserDO::getMdmStatus, strategyCallbackInfoDTO.getMdmStatus())
.eq(StrategyConfigUserDO::getStrategyId, strategyCallbackInfoDTO.getStrategyId())
.eq(StrategyConfigUserDO::getEquipmentId, equipmentId)
.update();
cidList.add(strategyCallbackInfoDTO.getCid());
});
return ResponseResult.success(JSONUtil.toJsonStr(cidList));
} catch (Exception e) {
log.error("配置策略回调异常:" + equipmentId + data, e);
return ResponseResult.failure();
}
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.strategy;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.skr.mdm.annotation.CmdHandler;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dao.StrategyNetworkIsolationUserDao;
import com.skr.mdm.dto.StrategyCallbackInfoDTO;
import com.skr.mdm.entity.StrategyNetworkIsolationUserDO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
/**
* @author tty
* @date 2024/9/12 16:33
*/
@Slf4j
@CmdHandler(cmdType = CmdTypeConstants.NETWORK_ISOLATION)
public class NetworkIsoStrategyServiceImpl implements CmdHandlerService {
@Autowired
private StrategyNetworkIsolationUserDao networkIsolationUserDao;
@Override
public ResponseResult cmdHandler(Integer equipmentId, String data) {
try {
JSONArray jsonArray = JSONUtil.parseArray(data);
List<StrategyCallbackInfoDTO> strategyCallbackInfoDTOList = JSONUtil.toList(jsonArray, StrategyCallbackInfoDTO.class);
List<Integer> cidList = new ArrayList<>(strategyCallbackInfoDTOList.size());
strategyCallbackInfoDTOList.forEach(strategyCallbackInfoDTO -> {
LambdaUpdateChainWrapper<StrategyNetworkIsolationUserDO> updateChainWrapper = new LambdaUpdateChainWrapper<>(networkIsolationUserDao);
updateChainWrapper
.set(strategyCallbackInfoDTO.getState() != null, StrategyNetworkIsolationUserDO::getState, strategyCallbackInfoDTO.getState())
.set(strategyCallbackInfoDTO.getMdmStatus() != null, StrategyNetworkIsolationUserDO::getMdmStatus, strategyCallbackInfoDTO.getMdmStatus())
.eq(StrategyNetworkIsolationUserDO::getStrategyId, strategyCallbackInfoDTO.getStrategyId())
.eq(StrategyNetworkIsolationUserDO::getEquipmentId, equipmentId)
.update();
cidList.add(strategyCallbackInfoDTO.getCid());
});
return ResponseResult.success(JSONUtil.toJsonStr(cidList));
} catch (Exception e) {
log.error("内外网隔离策略回调异常:" + equipmentId + data, e);
return ResponseResult.failure();
}
}
}
\ No newline at end of file
package com.skr.mdm.service.impl.strategy;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.skr.mdm.annotation.CmdHandler;
import com.skr.mdm.constant.CmdTypeConstants;
import com.skr.mdm.dao.RailStrategyUserDao;
import com.skr.mdm.dto.StrategyCallbackInfoDTO;
import com.skr.mdm.entity.RailStrategyUserDO;
import com.skr.mdm.result.ResponseResult;
import com.skr.mdm.service.CmdHandlerService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.List;
/**
* @author nfq
* @date 2020/8/3 11:51
*/
@Slf4j
@CmdHandler(cmdType = CmdTypeConstants.RAIL_ISSUED_CALLBACK)
public class RailStrategyServiceImpl implements CmdHandlerService {
@Autowired
private RailStrategyUserDao railStrategyUserDao;
@Override
public ResponseResult cmdHandler(Integer equipmentId, String data) {
// 围栏策略下发回调
try {
JSONArray jsonArray = JSONUtil.parseArray(data);
List<StrategyCallbackInfoDTO> strategyCallbackInfoDTOList = JSONUtil.toList(jsonArray, StrategyCallbackInfoDTO.class);
List<Integer> cidList = new ArrayList<>(strategyCallbackInfoDTOList.size());
strategyCallbackInfoDTOList.forEach(strategyCallbackInfoDTO -> {
LambdaUpdateChainWrapper<RailStrategyUserDO> updateChainWrapper = new LambdaUpdateChainWrapper<RailStrategyUserDO>(railStrategyUserDao);
updateChainWrapper
.set(strategyCallbackInfoDTO.getState() != null, RailStrategyUserDO::getState, strategyCallbackInfoDTO.getState())
.set(strategyCallbackInfoDTO.getMdmStatus() != null, RailStrategyUserDO::getMdmStatus, strategyCallbackInfoDTO.getMdmStatus())
.eq(RailStrategyUserDO::getStrategyId, strategyCallbackInfoDTO.getStrategyId())
.eq(RailStrategyUserDO::getEquipmentId, equipmentId)
.update();
cidList.add(strategyCallbackInfoDTO.getCid());
});
return ResponseResult.success(JSONUtil.toJsonStr(cidList));
} catch (Exception e) {
log.error("功能策略回调异常:" + equipmentId + data, e);
return ResponseResult.failure();
}
}
}
\ No newline at end of file
...@@ -355,5 +355,10 @@ public class CmdTypeConstants { ...@@ -355,5 +355,10 @@ public class CmdTypeConstants {
*/ */
public static final short URL_CALL_BACK = 0x3F0; public static final short URL_CALL_BACK = 0x3F0;
/**
* 内外网网络隔离策略回调
*/
public static final short NETWORK_ISOLATION = 0x3F1;
} }
\ No newline at end of file
...@@ -18,6 +18,7 @@ public enum EquipmentTypeEnum { ...@@ -18,6 +18,7 @@ public enum EquipmentTypeEnum {
WRISTBAND(2, "手环"), WRISTBAND(2, "手环"),
RECORDER(3, "记录仪"), RECORDER(3, "记录仪"),
WATCHES(4, "手表"), WATCHES(4, "手表"),
PC(9, "PC端"),
OTHER(5, "其他"); OTHER(5, "其他");
private Integer type; private Integer type;
......
...@@ -17,13 +17,17 @@ public enum StrategyCmdEnum { ...@@ -17,13 +17,17 @@ public enum StrategyCmdEnum {
ISSUED_RAIL_STRATEGY("围栏策略下发","issuedRailStrategy"), ISSUED_RAIL_STRATEGY("围栏策略下发","issuedRailStrategy"),
ISSUED_CONFIG_STRATEGY("配置策略下发", "issuedConfigStrategy"), ISSUED_CONFIG_STRATEGY("配置策略下发", "issuedConfigStrategy"),
ISSUED_COMPLIANCE_STRATEGY("合规策略下发", "issuedComplianceStrategy"), ISSUED_COMPLIANCE_STRATEGY("合规策略下发", "issuedComplianceStrategy"),
ISSUED_NETWORK_STRATEGY("内外网隔离策略下发", "issuedNetworkStrategy"),
DELETE_RAIL_STRATEGY("围栏策略删除下发", "deleteRailStrategy"), DELETE_RAIL_STRATEGY("围栏策略删除下发", "deleteRailStrategy"),
DELETE_CONFIG_STRATEGY("配置策略删除下发", "deleteConfigStrategy"), DELETE_CONFIG_STRATEGY("配置策略删除下发", "deleteConfigStrategy"),
DELETE_NETWORK_STRATEGY("内外网隔离策略删除下发", "deleteNetworkStrategy"),
DELETE_COMPLIANCE_STRATEGY("合规策略删除下发", "deleteComplianceStrategy"), DELETE_COMPLIANCE_STRATEGY("合规策略删除下发", "deleteComplianceStrategy"),
ENABLE_RAIL_STRATEGY("启用围栏策略", "enableRailStrategy"), ENABLE_RAIL_STRATEGY("启用围栏策略", "enableRailStrategy"),
DISABLE_RAIL_STRATEGY("禁用围栏策略", "disableRailStrategy"), DISABLE_RAIL_STRATEGY("禁用围栏策略", "disableRailStrategy"),
ENABLE_CONFIG_STRATEGY("启用配置策略", "enableConfigStrategy"), ENABLE_CONFIG_STRATEGY("启用配置策略", "enableConfigStrategy"),
DISABLE_CONFIG_STRATEGY("禁用配置策略", "disableConfigStrategy"), DISABLE_CONFIG_STRATEGY("禁用配置策略", "disableConfigStrategy"),
ENABLE_NETWORK_STRATEGY("启用内外网隔离策略", "enableNetworkStrategy"),
DISABLE_NETWORK_STRATEGY("禁用内外网隔离策略", "disableNetworkStrategy"),
ENABLE_COMPLIANCE_STRATEGY("启用合规策略", "enableComplianceStrategy"), ENABLE_COMPLIANCE_STRATEGY("启用合规策略", "enableComplianceStrategy"),
DISABLE_COMPLIANCE_STRATEGY("禁用合规策略", "disableComplianceStrategy"); DISABLE_COMPLIANCE_STRATEGY("禁用合规策略", "disableComplianceStrategy");
......
...@@ -17,6 +17,7 @@ public enum StrategyTypeEnum { ...@@ -17,6 +17,7 @@ public enum StrategyTypeEnum {
FUNCTION_STRATEGY(1, "功能策略"), FUNCTION_STRATEGY(1, "功能策略"),
CONFIG_STRATEGY(2, "配置策略"), CONFIG_STRATEGY(2, "配置策略"),
URL_STRATEGY(3, "网址策略"), URL_STRATEGY(3, "网址策略"),
NETWORK_ISO(4, "内外网隔离"),
SYSTEM_COMPLIANCE_STRATEGY(1, "系统合规策略"), SYSTEM_COMPLIANCE_STRATEGY(1, "系统合规策略"),
APP_COMPLIANCE_STRATEGY(2, "应用合规策略"), APP_COMPLIANCE_STRATEGY(2, "应用合规策略"),
NETWORK_COMPLIANCE_STRATEGY(3, "网络合规策略"), NETWORK_COMPLIANCE_STRATEGY(3, "网络合规策略"),
......
package com.skr.mdm.license; package com.skr.mdm.license;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
......
package com.skr.mdm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.skr.mdm.bean.bo.StrategyIssuedBO;
import com.skr.mdm.bean.qo.StrategyQueryQO;
import com.skr.mdm.bean.vo.strategy.StrategyVO;
import com.skr.mdm.entity.StrategyConfigDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* 策略信息主表(StrategyConfig)表数据库访问层
*
* @author nfq
* @since 2020-08-26 10:26:49
*/
@Repository
public interface StrategyConfigDao extends BaseMapper<StrategyConfigDO> {
/**
* 根据公司ID删除
* @param companyId 公司ID
*/
void deleteByCompanyId(@Param("companyId") Integer companyId);
/**
* 获取未禁用配置策略
* @param equipmentId
* @param state
* @return
*/
List<StrategyIssuedBO> listStrategyIdByEquipmentId(@Param("equipmentId") Integer equipmentId, @Param("state") Integer state, @Param("issuedState") Integer issuedState);
/**
* 策略列表
* @param strategyQueryQO
* @return
*/
List<StrategyVO> listStrategy(StrategyQueryQO strategyQueryQO);
}
\ No newline at end of file
package com.skr.mdm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.skr.mdm.entity.StrategyConfigInfoDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* 策略配置时间段表(StrategyConfigInfo)表数据库访问层
*
* @author nfq
* @since 2020-08-26 10:26:49
*/
@Repository
public interface StrategyConfigInfoDao extends BaseMapper<StrategyConfigInfoDO> {
/**
* 根据公司ID删除
* @param companyId 公司ID
*/
void deleteByCompanyId(@Param("companyId") Integer companyId);
}
\ No newline at end of file
package com.skr.mdm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.skr.mdm.entity.StrategyConfigInfoListDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@Repository
public interface StrategyConfigInfoListDao extends BaseMapper<StrategyConfigInfoListDO> {
void deleteByCompanyId(@Param("companyId") Integer companyId);
int deleteByPrimaryKey(Integer id);
int insert(StrategyConfigInfoListDO record);
int insertSelective(StrategyConfigInfoListDO record);
StrategyConfigInfoListDO selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(StrategyConfigInfoListDO record);
int updateByPrimaryKey(StrategyConfigInfoListDO record);
}
\ No newline at end of file
package com.skr.mdm.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.skr.mdm.bean.qo.controller.LargeScreenQO;
import com.skr.mdm.bean.vo.strategy.StrategyUserVO;
import com.skr.mdm.entity.StrategyConfigUserDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.Date;
import java.util.List;
/**
* 策略作用人(StrategyConfigUser)表数据库访问层
*
* @author nfq
* @since 2020-08-03 16:58:13
*/
@Repository
public interface StrategyConfigUserDao extends BaseMapper<StrategyConfigUserDO> {
/**
* 根据设备ID删除
* @param equipmentIdList 设备ID集合
*/
void deleteByEquipmentIdList(@Param("equipmentIdList") List<Integer> equipmentIdList);
/**
* 批量添加
* @param list
*/
void insertBatch(@Param("list") List<StrategyConfigUserDO> list);
/**
* 配置策略作用人列表
* @param strategyId
* @return
*/
List<StrategyUserVO> listStrategyUser(@Param("strategyId") Integer strategyId,
@Param("searchType") Integer searchType,
@Param("searchValue") String searchValue);
/**
* 批量更新
* @param list
*/
void updateBatch(@Param("list") List<StrategyConfigUserDO> list);
/**
* 批量更新设备状态
* @param strategyId
* @param equipmentIdList
* @param issuedTime
* @param state
* @return
*/
int updateStateByStrategyId(@Param("strategyId") Integer strategyId, @Param("equipmentIdList") List<Integer> equipmentIdList, @Param("issuedTime") Date issuedTime, @Param("state") Integer state);
/**
* 获取策略设备id
* @param list
* @return
*/
List<Integer> listEquipmentIdByStrategyIds(@Param("list") List<Integer> list);
List<Integer> queryConfigStrategyStatistics(LargeScreenQO largeScreenQO);
void insertStrategyConfigUser(@Param("deviceIdList") List<Integer> deviceIdList, @Param("id") Integer id);
List<Integer> listStrategyIdListByEquipmentId(@Param("deviceIdList") List<Integer> deviceIdList);
}
\ No newline at end of file
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
...@@ -55,14 +55,12 @@ public class AppStrategyDO implements Serializable { ...@@ -55,14 +55,12 @@ public class AppStrategyDO implements Serializable {
* 创建时间 * 创建时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime; private Date createTime;
/** /**
* 修改时间 * 修改时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -39,7 +39,6 @@ public class AppTypeDO implements Serializable { ...@@ -39,7 +39,6 @@ public class AppTypeDO implements Serializable {
* 修改时间 * 修改时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
...@@ -31,8 +31,7 @@ public class AuCompanyStatisticsDO implements Serializable { ...@@ -31,8 +31,7 @@ public class AuCompanyStatisticsDO implements Serializable {
private String createTime; private String createTime;
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date updateTime; private Date updateTime;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
......
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
...@@ -78,7 +78,6 @@ public class ContentDocumentDO implements Serializable { ...@@ -78,7 +78,6 @@ public class ContentDocumentDO implements Serializable {
* 文档有效期 全局时有效 * 文档有效期 全局时有效
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date validTime; private Date validTime;
private Date createTime; private Date createTime;
......
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date; import java.util.Date;
/** /**
......
package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Builder;
import lombok.Data;
import java.util.Date;
/**
* 策略配置时间段表(StrategyConfigInfo)实体类
*
* @author nfq
* @since 2020-08-26 10:26:49
*/
@Data
@Builder
@TableName(value = "strategy_config_info")
public class StrategyConfigInfoDO {
private static final long serialVersionUID = 923413920595924851L;
private Integer id;
private Integer strategyId;
private Integer isTimeLimit;
/**
* 法定节假日 1-7:(周一到周日,中间用逗号隔开)
*/
private String workDate;
/**
* 同一时间段开始时间
*/
private Date beginDate;
/**
* 同一时间段结束时间
*/
private Date endDate;
private Date beginTime;
private Date endTime;
private Integer companyId;
private Date createTime;
private Date updateTime;
}
\ No newline at end of file
package com.skr.mdm.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 策略配置时间段表
* strategy_config_info_list
*/
@Data
@TableName("strategy_config_info_list")
public class StrategyConfigInfoListDO implements Serializable {
private Integer id;
private Integer strategyId;
/**
* 1:usb 2:蓝牙 3:热点 4:wifi
*/
private Integer strategyType;
/**
* 0:无 1:黑 2:白
*/
private Integer type;
/**
* 配置名黑白名单表
*/
private Object msg;
private Integer companyId;
private Date createTime;
private Date updateTime;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Builder;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 策略作用人(StrategyConfigUser)实体类
*
* @author nfq
* @since 2020-08-03 16:58:12
*/
@Builder
@Data
@TableName("strategy_config_user")
public class StrategyConfigUserDO implements Serializable {
private static final long serialVersionUID = 456010988835389133L;
private Integer id;
private Integer strategyId;
/**
* 设备id
*/
private Integer equipmentId;
/**
* 状态 1:下发中 2:下发成功 3:执行中 4:执行成功
*/
private Integer state;
/**
* 1:管控中 2:未管控
*/
private Integer mdmStatus;
/**
* 下发时间
*/
private Date issuedTime;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
}
\ No newline at end of file
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
...@@ -51,14 +50,11 @@ public class SysChangeCertificateDO implements Serializable { ...@@ -51,14 +50,11 @@ public class SysChangeCertificateDO implements Serializable {
* 开始时间 * 开始时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date beginTime; private Date beginTime;
/** /**
* 结束时间 * 结束时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime; private Date endTime;
/** /**
...@@ -82,11 +78,9 @@ public class SysChangeCertificateDO implements Serializable { ...@@ -82,11 +78,9 @@ public class SysChangeCertificateDO implements Serializable {
private Integer companyId; private Integer companyId;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime; private Date createTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
package com.skr.mdm.entity; package com.skr.mdm.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
......
...@@ -269,7 +269,7 @@ ...@@ -269,7 +269,7 @@
FROM device_equipment de FROM device_equipment de
JOIN au_user au on de.user_id = au.id JOIN au_user au on de.user_id = au.id
JOIN au_admin_department aad on au.department_id = aad.department_id JOIN au_admin_department aad on au.department_id = aad.department_id
left join device_equipment_info dei on de.id = dei.equipment_id left join device_equipment_info_copy dei on de.id = dei.equipment_id
WHERE de.is_delete = 0 AND de.company_id = #{companyId} AND aad.admin_id = #{adminId} WHERE de.is_delete = 0 AND de.company_id = #{companyId} AND aad.admin_id = #{adminId}
<if test="boundState != null"> <if test="boundState != null">
AND de.bound_state = #{boundState} AND de.bound_state = #{boundState}
......
...@@ -23,12 +23,12 @@ ...@@ -23,12 +23,12 @@
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</select> </select>
<select id="selectSendInfoList" resultType="com.skr.mdm.bean.vo.equipment.SendCmdMessageInfoVO"> <select id="selectSendInfoList" resultType="com.skr.mdm.bean.vo.equipment.SendCmdMessageInfoVO">
SELECT dika.id, dika.create_time as sendTime, dika.cmd_type as isForce, dika.state AS state SELECT dika.id, dika.create_time as sendTime, dika.state AS state
,de.user_name ,de.equipment_name ,de.imei ,de.uuid ,de.oaid, ,de.user_name ,de.equipment_name ,de.serial_number ,de.uuid ,de.oaid,
de.department_name de.department_name
FROM device_instruct_keep_alive dika FROM device_instruct_keep_alive dika
INNER JOIN device_equipment de ON de.id = dika.equipment_id INNER JOIN device_equipment de ON de.id = dika.equipment_id
WHERE de.is_delete = 0 and de.company_id = #{companyId} WHERE de.is_delete = 0 and de.company_id = #{companyId} and dika.cmd_type = #{cmdType}
<if test="searchType == 1 "> <if test="searchType == 1 ">
AND de.user_name like concat('%',#{searchValue},'%') AND de.user_name like concat('%',#{searchValue},'%')
</if> </if>
......
<?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.skr.mdm.dao.StrategyConfigDao">
<resultMap id="BaseResultMap" type="com.skr.mdm.entity.StrategyConfigDO">
<!--@Table strategy_config-->
<result property="id" column="id" jdbcType="INTEGER"/>
<result property="strategyName" column="strategy_name" jdbcType="VARCHAR"/>
<result property="state" column="state" jdbcType="INTEGER"/>
<result property="actionScope" column="action_scope" jdbcType="INTEGER"/>
<result property="rail" column="is_rail" jdbcType="INTEGER"/>
<result property="longitude" column="longitude" jdbcType="VARCHAR"/>
<result property="latitude" column="latitude" jdbcType="VARCHAR"/>
<result property="locs" column="locs" jdbcType="VARCHAR"/>
<result property="radius" column="radius" jdbcType="VARCHAR"/>
<result property="operator" column="operator" jdbcType="VARCHAR"/>
<result property="companyId" column="company_id" jdbcType="INTEGER"/>
<result property="globalType" column="global_type" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<delete id="deleteByCompanyId">
delete
from strategy_config
where company_id = #{companyId}
</delete>
<select id="listStrategyIdByEquipmentId" resultType="com.skr.mdm.bean.bo.StrategyIssuedBO">
select t2.strategy_id, t2.issued_time as sendTime, t1.operate_time from strategy_config t1 join strategy_config_user t2 on t1.id = t2.strategy_id
where t2.equipment_id = #{equipmentId} and t1.state != #{state} and t2.state != #{issuedState}
</select>
<select id="listStrategy" resultType="com.skr.mdm.bean.vo.strategy.StrategyVO">
select t1.id, t1.global_type, t1.strategy_name, t1.state, t1.operate_time, t1.operator, 2 as strategyType,
t1.department_ids from strategy_config t1
left join strategy_config_user t2 on t1.id = t2.strategy_id
left join device_equipment t3 on t2.equipment_id = t3.id
where t1.company_id = #{companyId}
<if test="searchType == 1">
and t1.strategy_name like concat(concat('%', #{searchValue}), '%')
</if>
<if test="searchType == 2">
and date_format(t1.create_time, '%Y-%m-%d') = #{searchValue}
</if>
<if test="searchType == 3">
and t3.user_name like concat(concat('%', #{searchValue}), '%')
</if>
group by t1.id
order by t1.operate_time desc
</select>
</mapper>
\ No newline at end of file
<?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.skr.mdm.dao.StrategyConfigInfoDao">
<resultMap id="BaseResultMap" type="com.skr.mdm.entity.StrategyConfigInfoDO">
<!--@Table strategy_config_info-->
<result property="id" column="id" jdbcType="INTEGER"/>
<result property="strategyId" column="strategy_id" jdbcType="INTEGER"/>
<result property="isTimeLimit" column="is_time_limit" jdbcType="INTEGER"/>
<result property="workDate" column="work_Date" jdbcType="VARCHAR"/>
<result property="beginTime" column="begin_time" jdbcType="TIMESTAMP"/>
<result property="endTime" column="end_time" jdbcType="TIMESTAMP"/>
<result property="companyId" column="company_id" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<delete id="deleteByCompanyId">
delete
from strategy_config_info
where company_id = #{companyId}
</delete>
</mapper>
\ No newline at end of file
<?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.skr.mdm.dao.StrategyConfigInfoListDao">
<resultMap id="BaseResultMap" type="com.skr.mdm.entity.StrategyConfigInfoListDO">
<id column="id" jdbcType="INTEGER" property="id" />
<result column="strategy_id" jdbcType="INTEGER" property="strategyId" />
<result column="strategy_type" jdbcType="TINYINT" property="strategyType" />
<result column="type" jdbcType="TINYINT" property="type" />
<result column="msg" jdbcType="OTHER" property="msg" />
<result column="company_id" jdbcType="INTEGER" property="companyId" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
</resultMap>
<sql id="Base_Column_List">
id, strategy_id, strategy_type, `type`, msg, company_id, create_time, update_time
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from strategy_config_info_list
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from strategy_config_info_list
where id = #{id,jdbcType=INTEGER}
</delete>
<delete id="deleteByCompanyId">
delete
from strategy_config_info_list
where company_id = #{companyId}
</delete>
<insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.skr.mdm.entity.StrategyConfigInfoListDO" useGeneratedKeys="true">
insert into strategy_config_info_list (strategy_id, strategy_type, `type`,
msg, company_id, create_time,
update_time)
values (#{strategyId,jdbcType=INTEGER}, #{strategyType,jdbcType=TINYINT}, #{type,jdbcType=TINYINT},
#{msg,jdbcType=OTHER}, #{companyId,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP})
</insert>
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.skr.mdm.entity.StrategyConfigInfoListDO" useGeneratedKeys="true">
insert into strategy_config_info_list
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="strategyId != null">
strategy_id,
</if>
<if test="strategyType != null">
strategy_type,
</if>
<if test="type != null">
`type`,
</if>
<if test="msg != null">
msg,
</if>
<if test="companyId != null">
company_id,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="strategyId != null">
#{strategyId,jdbcType=INTEGER},
</if>
<if test="strategyType != null">
#{strategyType,jdbcType=TINYINT},
</if>
<if test="type != null">
#{type,jdbcType=TINYINT},
</if>
<if test="msg != null">
#{msg,jdbcType=OTHER},
</if>
<if test="companyId != null">
#{companyId,jdbcType=INTEGER},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.skr.mdm.entity.StrategyConfigInfoListDO">
update strategy_config_info_list
<set>
<if test="strategyId != null">
strategy_id = #{strategyId,jdbcType=INTEGER},
</if>
<if test="strategyType != null">
strategy_type = #{strategyType,jdbcType=TINYINT},
</if>
<if test="type != null">
`type` = #{type,jdbcType=TINYINT},
</if>
<if test="msg != null">
msg = #{msg,jdbcType=OTHER},
</if>
<if test="companyId != null">
company_id = #{companyId,jdbcType=INTEGER},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.skr.mdm.entity.StrategyConfigInfoListDO">
update strategy_config_info_list
set strategy_id = #{strategyId,jdbcType=INTEGER},
strategy_type = #{strategyType,jdbcType=TINYINT},
`type` = #{type,jdbcType=TINYINT},
msg = #{msg,jdbcType=OTHER},
company_id = #{companyId,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP}
where id = #{id,jdbcType=INTEGER}
</update>
</mapper>
\ No newline at end of file
<?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.skr.mdm.dao.StrategyConfigUserDao">
<resultMap id="BaseResultMap" type="com.skr.mdm.entity.StrategyConfigUserDO">
<!--@Table strategy_config_user-->
<result property="id" column="id" jdbcType="INTEGER"/>
<result property="strategyId" column="strategy_id" jdbcType="INTEGER"/>
<result property="equipmentId" column="equipment_id" jdbcType="INTEGER"/>
<result property="state" column="state" jdbcType="INTEGER"/>
<result property="mdmStatus" column="mdm_status" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<delete id="deleteByEquipmentIdList">
delete from strategy_config_user where equipment_id in
<foreach collection="equipmentIdList" open="(" close=")" separator="," item="equipmentId">
#{equipmentId}
</foreach>
</delete>
<insert id="insertBatch">
insert into strategy_config_user(strategy_id, equipment_id, state, issued_time) VALUES
<foreach collection="list" separator="," item="item">
(#{item.strategyId}, #{item.equipmentId}, #{item.state}, #{item.issuedTime})
</foreach>
</insert>
<insert id="insertStrategyConfigUser">
insert into strategy_config_user(strategy_id, equipment_id, state, issued_time) VALUES
<foreach collection="deviceIdList" separator="," item="equipmentId">
(#{id}, #{equipmentId}, 1, now())
</foreach>
</insert>
<select id="listStrategyUser" resultType="com.skr.mdm.bean.vo.strategy.StrategyUserVO">
select t1.id, t2.user_name, t1.equipment_id, t2.equipment_name, t2.equipment_model, t2.department_name, t1.state, t1.issued_time
from strategy_config_user t1
join device_equipment t2 on t1.equipment_id = t2.id
where t1.strategy_id = #{strategyId}
<if test="searchType == 1">
and t2.user_name like concat(concat('%', #{searchValue}), '%')
</if>
<if test="searchType == 2">
and t2.equipment_name like concat(concat('%', #{searchValue}), '%')
</if>
<if test="searchType == 3">
and t2.department_name like concat(concat('%', #{searchValue}), '%')
</if>
<if test="searchType == 4">
and t2.imei like concat(concat('%', #{searchValue}), '%')
</if>
<if test="searchType == 5">
and t1.state = #{searchValue}
</if>
order by t1.issued_time desc, t1.id
</select>
<update id="updateBatch">
<foreach collection="list" separator=";" item="item">
update strategy_config_user set
state = #{item.state},
issued_time = #{item.issuedTime}
where strategy_id = #{item.strategyId} and equipment_id = #{item.equipmentId}
</foreach>
</update>
<update id="updateStateByStrategyId">
update strategy_config_user
set state = #{state},
issued_time = #{issuedTime}
where strategy_id = #{strategyId}
and equipment_id in
<foreach collection="equipmentIdList" open="(" close=")" item="equipmentId" separator=",">
#{equipmentId}
</foreach>
</update>
<select id="listEquipmentIdByStrategyIds" resultType="java.lang.Integer">
select equipment_id from strategy_config_user where strategy_id in
<foreach collection="list" open="(" close=")" separator="," item="strategyId">
#{strategyId}
</foreach>
</select>
<select id="queryConfigStrategyStatistics" resultType="integer">
SELECT scu.state
FROM strategy_config sc
JOIN strategy_config_user scu ON sc.id = scu.strategy_id
WHERE sc.company_id = #{companyId}
<if test="startTime != null and startTime != '' ">
AND scu.update_time &gt;= #{startTime}
</if>
<if test="endTime != null and endTime != '' ">
AND scu.update_time &lt;= #{endTime}
</if>
</select>
<select id="listStrategyIdListByEquipmentId" resultType="java.lang.Integer">
SELECT strategy_id FROM strategy_config_user
WHERE equipment_id IN
<foreach collection="deviceIdList" item="deviceId" open="(" close=")" separator=",">
#{deviceId}
</foreach>
</select>
</mapper>
\ No newline at end of file
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</select> </select>
<select id="listStrategy" resultType="com.skr.mdm.bean.vo.strategy.StrategyVO"> <select id="listStrategy" resultType="com.skr.mdm.bean.vo.strategy.StrategyVO">
select t1.id, t1.global_type, t1.strategy_name, t1.state, t1.operate_time, t1.operator, 2 as strategyType, select t1.id, t1.global_type, t1.strategy_name, t1.state, t1.operate_time, t1.operator, 4 as strategyType,
t1.department_ids from strategy_network_isolation t1 t1.department_ids from strategy_network_isolation t1
left join strategy_network_isolation_user t2 on t1.id = t2.strategy_id left join strategy_network_isolation_user t2 on t1.id = t2.strategy_id
left join device_equipment t3 on t2.equipment_id = t3.id left join device_equipment t3 on t2.equipment_id = t3.id
......
...@@ -33,7 +33,7 @@ public class AppStrategyInstallSourceServiceImpl implements AppStrategyInfoServi ...@@ -33,7 +33,7 @@ public class AppStrategyInstallSourceServiceImpl implements AppStrategyInfoServi
@Override @Override
public void saveAppStrategy(AppStrategyQO appStrategyQO, Integer strategyId) { public void saveAppStrategy(AppStrategyQO appStrategyQO, Integer strategyId) {
saveAppStrategyInstallSource(appStrategyQO.getAppStrategyInstallSourceQO(), strategyId); saveAppStrategyInstallSource(appStrategyQO.getAppStoreInstallSourceQO(), strategyId);
} }
@Override @Override
......
...@@ -16,7 +16,6 @@ import java.util.concurrent.ConcurrentHashMap; ...@@ -16,7 +16,6 @@ import java.util.concurrent.ConcurrentHashMap;
*/ */
@Slf4j @Slf4j
@Component @Component
@Deprecated
public class CmdAdminHandlerFactory implements BeanPostProcessor { public class CmdAdminHandlerFactory implements BeanPostProcessor {
private static final Map<String, CmdAdminProcessHandler> CMD_ADMIN_MAP = new ConcurrentHashMap<>(16); private static final Map<String, CmdAdminProcessHandler> CMD_ADMIN_MAP = new ConcurrentHashMap<>(16);
......
...@@ -24,9 +24,12 @@ import org.springframework.web.bind.annotation.*; ...@@ -24,9 +24,12 @@ import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid; import javax.validation.Valid;
import java.io.File; import java.io.*;
import java.io.FileOutputStream; import java.nio.charset.Charset;
import java.io.IOException; import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
......
...@@ -37,13 +37,6 @@ public class CmdKeepAliveHandler implements CmdAdminProcessHandler { ...@@ -37,13 +37,6 @@ public class CmdKeepAliveHandler implements CmdAdminProcessHandler {
@Override @Override
public ResponseResult cmdUserInfo(CmdQO cmdQO) { public ResponseResult cmdUserInfo(CmdQO cmdQO) {
List<SendCmdMessageInfoVO> sendCmdMessageInfoVOList = deviceInstructKeepAliveDao.selectSendInfoList(cmdQO); List<SendCmdMessageInfoVO> sendCmdMessageInfoVOList = deviceInstructKeepAliveDao.selectSendInfoList(cmdQO);
// 锁屏类型时 更改离线解锁码
if (CmdAdminEnum.LOCK_SCREEN.getCmdValue().equals(cmdQO.getCmdType())) {
for (SendCmdMessageInfoVO sendCmdMessageInfoVO : sendCmdMessageInfoVOList) {
// 随机码转换为离线解锁码
sendCmdMessageInfoVO.setOfflineUnlockCode(HmacShaUtils.getCode(sendCmdMessageInfoVO.getOfflineUnlockCode()));
}
}
return ResponseResult.success(PageUtil.getPageResult(sendCmdMessageInfoVOList)); return ResponseResult.success(PageUtil.getPageResult(sendCmdMessageInfoVOList));
} }
} }
\ No newline at end of file
...@@ -7,7 +7,6 @@ import com.skr.mdm.result.ResponseResult; ...@@ -7,7 +7,6 @@ import com.skr.mdm.result.ResponseResult;
import java.util.List; import java.util.List;
@Deprecated
public interface CmdManageService { public interface CmdManageService {
ResponseResult cmdHandle(CmdPushQO cmdPushQO, LoginAdminDTO loginAdminDTO); ResponseResult cmdHandle(CmdPushQO cmdPushQO, LoginAdminDTO loginAdminDTO);
......
...@@ -73,6 +73,7 @@ public class FunctionScopeServiceImpl implements FunctionScopeService { ...@@ -73,6 +73,7 @@ public class FunctionScopeServiceImpl implements FunctionScopeService {
public List<Map<String, Object>> menuTree(Integer parentId, Integer functionScopeId) { public List<Map<String, Object>> menuTree(Integer parentId, Integer functionScopeId) {
List<AuPermissionDO> permissionDOList = new LambdaQueryChainWrapper<>(permissionDao) List<AuPermissionDO> permissionDOList = new LambdaQueryChainWrapper<>(permissionDao)
.eq(AuPermissionDO::getUsable, 1) .eq(AuPermissionDO::getUsable, 1)
.orderByAsc(AuPermissionDO::getOrderNum)
.list(); .list();
if (CollectionUtils.isNotEmpty(permissionDOList)) { if (CollectionUtils.isNotEmpty(permissionDOList)) {
List<Integer> permissionIdList = new LambdaQueryChainWrapper<>(functionScopePermissionDao) List<Integer> permissionIdList = new LambdaQueryChainWrapper<>(functionScopePermissionDao)
......
...@@ -19,6 +19,7 @@ import com.skr.mdm.dao.DeviceEquipmentDao; ...@@ -19,6 +19,7 @@ import com.skr.mdm.dao.DeviceEquipmentDao;
import com.skr.mdm.entity.AuUserDO; import com.skr.mdm.entity.AuUserDO;
import com.skr.mdm.entity.DeviceEquipmentDO; import com.skr.mdm.entity.DeviceEquipmentDO;
import com.skr.mdm.enums.DeleteStateEnum; import com.skr.mdm.enums.DeleteStateEnum;
import com.skr.mdm.enums.EquipmentTypeEnum;
import com.skr.mdm.manager.oss.MinIoManager; import com.skr.mdm.manager.oss.MinIoManager;
import com.skr.mdm.util.RegisterEquipmentUtil; import com.skr.mdm.util.RegisterEquipmentUtil;
import com.skr.mdm.util.ServerSystemUtil; import com.skr.mdm.util.ServerSystemUtil;
...@@ -271,7 +272,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment ...@@ -271,7 +272,7 @@ public class EquipmentImportDataListener extends AnalysisEventListener<Equipment
equipmentDO.setEquipmentName(equipmentName); equipmentDO.setEquipmentName(equipmentName);
equipmentDO.setUserId(userDO.getId()); equipmentDO.setUserId(userDO.getId());
equipmentDO.setUserName(userDO.getUserName()); equipmentDO.setUserName(userDO.getUserName());
equipmentDO.setEquipmentType(1); equipmentDO.setEquipmentType(EquipmentTypeEnum.PC.getType());
equipmentDO.setSerialNumber(data.getSerialNum()); equipmentDO.setSerialNumber(data.getSerialNum());
equipmentDO.setDepartmentId(userDO.getDepartmentId()); equipmentDO.setDepartmentId(userDO.getDepartmentId());
equipmentDO.setDepartmentName(userDO.getDepartmentName()); equipmentDO.setDepartmentName(userDO.getDepartmentName());
......
...@@ -99,6 +99,8 @@ public class DeviceAssetServiceImpl implements DeviceAssetService { ...@@ -99,6 +99,8 @@ public class DeviceAssetServiceImpl implements DeviceAssetService {
indexEquipmentTypeVO.setRecorderCount(indexEquipmentTypeVO.getRecorderCount() + 1); indexEquipmentTypeVO.setRecorderCount(indexEquipmentTypeVO.getRecorderCount() + 1);
} else if (EquipmentTypeEnum.WATCHES.getType().equals(equipmentType)) { } else if (EquipmentTypeEnum.WATCHES.getType().equals(equipmentType)) {
indexEquipmentTypeVO.setWatchesCount(indexEquipmentTypeVO.getWatchesCount() + 1); indexEquipmentTypeVO.setWatchesCount(indexEquipmentTypeVO.getWatchesCount() + 1);
} else if (EquipmentTypeEnum.PC.getType().equals(equipmentType)) {
indexEquipmentTypeVO.setPcCount(indexEquipmentTypeVO.getOtherCount() + 1);
} else if (EquipmentTypeEnum.OTHER.getType().equals(equipmentType)) { } else if (EquipmentTypeEnum.OTHER.getType().equals(equipmentType)) {
indexEquipmentTypeVO.setOtherCount(indexEquipmentTypeVO.getOtherCount() + 1); indexEquipmentTypeVO.setOtherCount(indexEquipmentTypeVO.getOtherCount() + 1);
} }
......
package com.skr.mdm.api.strategy.controller; package com.skr.mdm.api.strategy.controller;
import com.skr.mdm.api.strategy.service.ConfigStrategyService;
import com.skr.mdm.api.strategy.service.NetworkIsolationStrategyService; import com.skr.mdm.api.strategy.service.NetworkIsolationStrategyService;
import com.skr.mdm.bean.qo.StrategyUserQO; import com.skr.mdm.bean.qo.StrategyUserQO;
import com.skr.mdm.bean.qo.strategy.ConfigStrategyQO; import com.skr.mdm.bean.qo.strategy.StrategyNetworkIsolationQO;
import com.skr.mdm.dto.LoginAdminDTO; import com.skr.mdm.dto.LoginAdminDTO;
import com.skr.mdm.result.ResponseResult; import com.skr.mdm.result.ResponseResult;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -36,32 +35,32 @@ public class NetworkIsolationStrategyController { ...@@ -36,32 +35,32 @@ public class NetworkIsolationStrategyController {
@PostMapping("add") @PostMapping("add")
@ApiOperation(value = "创建") @ApiOperation(value = "创建")
@PreAuthorize("hasAnyAuthority('sys:strategy:config:add')") @PreAuthorize("hasAnyAuthority('sys:strategy:network:add')")
public ResponseResult addStrategy(@RequestBody @Valid ConfigStrategyQO configStrategyQO, public ResponseResult addStrategy(@RequestBody @Valid StrategyNetworkIsolationQO networkIsolationQO,
@ApiIgnore Authentication authentication) { @ApiIgnore Authentication authentication) {
LoginAdminDTO loginAdminDTO = (LoginAdminDTO) authentication.getPrincipal(); LoginAdminDTO loginAdminDTO = (LoginAdminDTO) authentication.getPrincipal();
return networkIsolationStrategyService.addStrategy(configStrategyQO, loginAdminDTO); return networkIsolationStrategyService.addStrategy(networkIsolationQO, loginAdminDTO);
} }
@PostMapping("update") @PostMapping("update")
@ApiOperation(value = "编辑") @ApiOperation(value = "编辑")
@PreAuthorize("hasAnyAuthority('sys:strategy:update')") @PreAuthorize("hasAnyAuthority('sys:strategy:network:update')")
public ResponseResult updateStrategy(@RequestBody @Valid ConfigStrategyQO configStrategyQO, public ResponseResult updateStrategy(@RequestBody @Valid StrategyNetworkIsolationQO networkIsolationQO,
@ApiIgnore Authentication authentication) { @ApiIgnore Authentication authentication) {
LoginAdminDTO loginAdminDTO = (LoginAdminDTO) authentication.getPrincipal(); LoginAdminDTO loginAdminDTO = (LoginAdminDTO) authentication.getPrincipal();
return networkIsolationStrategyService.updateStrategy(configStrategyQO, loginAdminDTO); return networkIsolationStrategyService.updateStrategy(networkIsolationQO, loginAdminDTO);
} }
@PostMapping("user/list") @PostMapping("user/list")
@ApiOperation(value = "作用人列表") @ApiOperation(value = "作用人列表")
@PreAuthorize("hasAnyAuthority('sys:strategy:user:list')") @PreAuthorize("hasAnyAuthority('sys:strategy:network:list')")
public ResponseResult listStrategyUser(@RequestBody @Valid StrategyUserQO strategyUserQO) { public ResponseResult listStrategyUser(@RequestBody @Valid StrategyUserQO strategyUserQO) {
return networkIsolationStrategyService.listStrategyUser(strategyUserQO); return networkIsolationStrategyService.listStrategyUser(strategyUserQO);
} }
@PostMapping("user/delete") @PostMapping("user/delete")
@ApiOperation(value = "作用人删除") @ApiOperation(value = "作用人删除")
@PreAuthorize("hasAnyAuthority('sys:strategy:user:delete')") @PreAuthorize("hasAnyAuthority('sys:strategy:network:user:delete')")
public ResponseResult deleteStrategyUser(@RequestParam @NotNull(message = "策略ID不能为空") Integer strategyId, public ResponseResult deleteStrategyUser(@RequestParam @NotNull(message = "策略ID不能为空") Integer strategyId,
@RequestParam @NotEmpty(message = "设备ID不能为空") List<Integer> equipmentIdList, @RequestParam @NotEmpty(message = "设备ID不能为空") List<Integer> equipmentIdList,
@ApiIgnore Authentication authentication) { @ApiIgnore Authentication authentication) {
...@@ -71,7 +70,7 @@ public class NetworkIsolationStrategyController { ...@@ -71,7 +70,7 @@ public class NetworkIsolationStrategyController {
@PostMapping("state/change") @PostMapping("state/change")
@ApiOperation(value = "启用禁用") @ApiOperation(value = "启用禁用")
@PreAuthorize("hasAnyAuthority('sys:strategy:able')") @PreAuthorize("hasAnyAuthority('sys:strategy:network:able')")
public ResponseResult updateStrategyState(@RequestParam @NotNull(message = "策略ID不能为空") Integer strategyId, public ResponseResult updateStrategyState(@RequestParam @NotNull(message = "策略ID不能为空") Integer strategyId,
@RequestParam @NotNull(message = "策略状态不能为空") Integer state, @RequestParam @NotNull(message = "策略状态不能为空") Integer state,
@ApiIgnore Authentication authentication) { @ApiIgnore Authentication authentication) {
......
...@@ -6,7 +6,7 @@ import com.skr.mdm.bean.vo.strategy.StrategyVO; ...@@ -6,7 +6,7 @@ import com.skr.mdm.bean.vo.strategy.StrategyVO;
import java.util.List; import java.util.List;
public interface ConfigStrategyService { public interface ConfigStrategyService extends DefaultStrategyService{
List<StrategyVO> listStrategy(StrategyQueryQO strategyQueryQO);
} }
\ No newline at end of file
package com.skr.mdm.api.strategy.service.impl; package com.skr.mdm.api.strategy.service.impl;
import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.skr.mdm.api.strategy.service.ConfigStrategyService; import com.skr.mdm.api.strategy.service.ConfigStrategyService;
import com.skr.mdm.api.template.AbstractDefaultStrategyService;
import com.skr.mdm.bean.qo.BaseStrategyQO;
import com.skr.mdm.bean.qo.StrategyQueryQO;
import com.skr.mdm.bean.qo.strategy.*;
import com.skr.mdm.bean.so.strategy.ConfigStrategySO;
import com.skr.mdm.bean.vo.strategy.ConfigStrategyInfoVO;
import com.skr.mdm.bean.vo.strategy.ConfigStrategyVO;
import com.skr.mdm.bean.vo.strategy.StrategyUserVO;
import com.skr.mdm.bean.vo.strategy.StrategyVO;
import com.skr.mdm.dao.*;
import com.skr.mdm.dto.LoginAdminDTO;
import com.skr.mdm.entity.*;
import com.skr.mdm.enums.*;
import com.skr.mdm.handle.IssuedUserHandler;
import com.skr.mdm.handle.LogAdminHandler;
import com.skr.mdm.manager.ConfigStrategyManager;
import com.skr.mdm.util.MdmListUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.stream.Collectors;
/** /**
* @author nfq * @author nfq
...@@ -12,6 +44,425 @@ import org.springframework.stereotype.Service; ...@@ -12,6 +44,425 @@ import org.springframework.stereotype.Service;
*/ */
@Service @Service
@Slf4j @Slf4j
public class ConfigStrategyServiceImpl implements ConfigStrategyService { public class ConfigStrategyServiceImpl extends AbstractDefaultStrategyService implements ConfigStrategyService {
private final String MODULE = "配置策略";
private ConfigStrategyQO configStrategyQO;
private StrategyConfigDO strategyConfigDO;
@Autowired
private StrategyConfigDao configStrategyDao;
@Autowired
private StrategyConfigInfoDao strategyConfigInfoDao;
@Autowired
private StrategyConfigUserDao configStrategyUserDao;
@Autowired
private LogAdminHandler logAdminHandler;
@Autowired
private IssuedUserHandler issuedUserHandler;
@Autowired
private DeviceEquipmentDao equipmentDao;
@Autowired
private StrategyConfigInfoListDao strategyConfigInfoListDao;
@Autowired
private ConfigStrategyManager configStrategyManager;
@Override
protected Object getStrategyInfo(Integer strategyId) {
StrategyConfigDO strategyConfigDO = configStrategyDao.selectById(strategyId);
ConfigStrategyVO configStrategyVO = new ConfigStrategyVO();
BeanUtils.copyProperties(strategyConfigDO, configStrategyVO);
List<StrategyConfigInfoDO> strategyConfigInfoDOList = new LambdaQueryChainWrapper<>(strategyConfigInfoDao)
.eq(StrategyConfigInfoDO::getStrategyId, strategyId)
.list();
List<ConfigStrategyInfoVO> configStrategyInfoVOList = new ArrayList<>(strategyConfigInfoDOList.size());
if (CollectionUtils.isNotEmpty(strategyConfigInfoDOList)) {
strategyConfigInfoDOList.forEach(strategyConfigInfoDO -> {
ConfigStrategyInfoVO configStrategyInfoVO = new ConfigStrategyInfoVO();
BeanUtils.copyProperties(strategyConfigInfoDO, configStrategyInfoVO);
configStrategyManager.getConfigStrategyInfoVO(strategyId, configStrategyInfoVO);
configStrategyInfoVOList.add(configStrategyInfoVO);
});
}
configStrategyVO.setConfigStrategyInfoVOList(configStrategyInfoVOList);
return configStrategyVO;
}
@Override
protected long strategyStateCheck(List<Integer> strategyIdList) {
return new LambdaQueryChainWrapper<>(configStrategyDao)
.eq(StrategyConfigDO::getState, StrategyStateEnum.DISABLE.getState())
.in(StrategyConfigDO::getId, strategyIdList)
.count();
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateStrategyIssuedState(List<Integer> strategyIdList, BaseStrategyQO baseStrategyQO) {
new LambdaUpdateChainWrapper<>(configStrategyDao)
.set(StrategyConfigDO::getState, baseStrategyQO.getState())
.in(StrategyConfigDO::getId, strategyIdList)
.update();
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateStrategyDeptGlobal(List<Integer> strategyIdList, List<Integer> departmentIdList) {
new LambdaUpdateChainWrapper<>(configStrategyDao)
.set(StrategyConfigDO::getDepartmentIds, JSONUtil.toJsonStr(departmentIdList))
.in(StrategyConfigDO::getId, strategyIdList)
.update();
}
@Override
protected List<Integer> getEquipmentIdListByStrategyIdList(List<Integer> strategyIdList) {
return configStrategyUserDao.listEquipmentIdByStrategyIds(strategyIdList);
}
@Override
protected List<Integer> getEquipmentIdListByStrategyIdListForDeptGlobal(List<Integer> strategyIdList) {
List<StrategyConfigDO> strategyConfigDOList = configStrategyDao.selectBatchIds(strategyIdList);
if (CollectionUtils.isNotEmpty(strategyConfigDOList) && StringUtils.isNotBlank(strategyConfigDOList.get(0).getDepartmentIds())) {
List<Integer> departmentIdList = JSONUtil.toList(JSONUtil.parseArray(
strategyConfigDOList.get(0).getDepartmentIds()), Integer.class);
if (CollectionUtils.isNotEmpty(departmentIdList)) {
return equipmentDao.listEquipmentIdByDepartmentIdList(departmentIdList);
}
}
return Collections.emptyList();
}
@Override
protected void adminLogIssuedStrategy(List<Integer> strategyIdList, BaseStrategyQO baseStrategyQO, LoginAdminDTO loginAdminDTO) {
String content = "";
List<StrategyConfigDO> strategyConfigDOList = configStrategyDao.selectBatchIds(strategyIdList);
if (CollectionUtils.isNotEmpty(strategyConfigDOList)) {
List<String> strategyNameList = strategyConfigDOList.stream().map(StrategyConfigDO::getStrategyName)
.collect(Collectors.toList());
content = "下发配置策略 策略名:" + StringUtils.join(strategyNameList, ",");
}
logAdminHandler.log(baseStrategyQO, loginAdminDTO, LogAdminTypeEnum.STRATEGY_TYPE.getLogType(), content, MODULE);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveStrategyUser(List<Integer> strategyIdList, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
Date date = new Date();
strategyIdList.forEach(strategyId -> {
List<Integer> listEquipmentIdByStrategyIds = configStrategyUserDao.listEquipmentIdByStrategyIds(ListUtil.toList(strategyId));
List<Integer> addEquipmentIdList = MdmListUtil.difference(equipmentIdList, listEquipmentIdByStrategyIds);
List<Integer> updateEquipmentIdList = MdmListUtil.intersection(equipmentIdList, listEquipmentIdByStrategyIds);
// 新增
if (CollectionUtils.isNotEmpty(addEquipmentIdList)) {
List<StrategyConfigUserDO> strategyConfigUserDOList = new ArrayList<>(addEquipmentIdList.size());
addEquipmentIdList.forEach(equipmentId -> {
StrategyConfigUserDO railStrategyUserDO = StrategyConfigUserDO.builder()
.equipmentId(equipmentId)
.strategyId(strategyId)
.state(StrategyEquipmentStateEnum.ISSUING.getState())
.issuedTime(date)
.build();
strategyConfigUserDOList.add(railStrategyUserDO);
});
configStrategyUserDao.insertBatch(strategyConfigUserDOList);
}
// 更新
if (CollectionUtils.isNotEmpty(updateEquipmentIdList)) {
new LambdaUpdateChainWrapper<>(configStrategyUserDao)
.set(StrategyConfigUserDO::getState, StrategyEquipmentStateEnum.ISSUING.getState())
.set(StrategyConfigUserDO::getIssuedTime, date)
.eq(StrategyConfigUserDO::getStrategyId, strategyId)
.in(StrategyConfigUserDO::getEquipmentId, updateEquipmentIdList)
.update();
}
});
}
@Override
@Transactional(rollbackFor = Exception.class)
public void doIssuedStrategy(List<Integer> strategyIdList, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
long currentTimeMillis = System.currentTimeMillis();
List<ConfigStrategySO> configStrategySOList = configStrategyManager.getConfigStrategySO(strategyIdList, currentTimeMillis);
if (CollectionUtils.isNotEmpty(configStrategySOList)) {
issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.ISSUED_CONFIG_STRATEGY.getCmd(),
JSONUtil.toJsonStr(configStrategySOList));
}
}
@Override
protected long checkDuplicateStrategy(Object operationObject, LoginAdminDTO loginAdminDTO) {
this.configStrategyQO = (ConfigStrategyQO) operationObject;
return new LambdaQueryChainWrapper<>(configStrategyDao)
.eq(StrategyConfigDO::getStrategyName, configStrategyQO.getStrategyName())
.eq(StrategyConfigDO::getCompanyId, loginAdminDTO.getCompanyId())
.ne(configStrategyQO.getId() != null, StrategyConfigDO::getId, configStrategyQO.getId())
.count();
}
@Override
@Transactional(rollbackFor = Exception.class)
public Integer saveStrategy(Object operationObject, LoginAdminDTO loginAdminDTO) {
StrategyConfigDO strategyConfigDO = StrategyConfigDO.builder()
.companyId(loginAdminDTO.getCompanyId())
.operator(loginAdminDTO.getAdminName())
.operateTime(new Date())
.departmentIds("")
.build();
BeanUtils.copyProperties(configStrategyQO, strategyConfigDO);
if (IssuedTypeEnum.DEPT_GLOBAL.getIssuedType().equals(configStrategyQO.getGlobalType()) &&
CollectionUtils.isNotEmpty(configStrategyQO.getCandidateIdList())) {
strategyConfigDO.setDepartmentIds(JSONUtil.toJsonStr(configStrategyQO.getCandidateIdList()));
}
configStrategyDao.insert(strategyConfigDO);
// 添加配置策略信息
if (CollectionUtils.isNotEmpty(configStrategyQO.getConfigStrategyInfoQOList())) {
configStrategyQO.getConfigStrategyInfoQOList().forEach(configStrategyInfoQO -> {
addConfigStrategyInfo(configStrategyInfoQO, loginAdminDTO.getCompanyId(), strategyConfigDO.getId());
});
}
return strategyConfigDO.getId();
}
@Override
protected void adminLogAddStrategy(LoginAdminDTO loginAdminDTO) {
String logContent = "配置策略 策略名:" + configStrategyQO.getStrategyName();
if (configStrategyQO.getId() == null) {
logContent = "创建" + logContent;
} else {
logContent = "编辑" + logContent;
}
logAdminHandler.log(loginAdminDTO, LogAdminTypeEnum.STRATEGY_TYPE.getLogType(), logContent, MODULE, Collections.emptyList());
}
@Override
@Transactional(rollbackFor = Exception.class)
public Integer updateStrategyById(Object operationObject, LoginAdminDTO loginAdminDTO) {
StrategyConfigDO strategyConfigDO = StrategyConfigDO.builder()
.operator(loginAdminDTO.getAdminName())
.operateTime(new Date())
.build();
BeanUtils.copyProperties(configStrategyQO, strategyConfigDO);
if (IssuedTypeEnum.DEPT_GLOBAL.getIssuedType().equals(configStrategyQO.getGlobalType()) &&
CollectionUtils.isNotEmpty(configStrategyQO.getCandidateIdList())) {
strategyConfigDO.setDepartmentIds(JSONUtil.toJsonStr(configStrategyQO.getCandidateIdList()));
}
configStrategyDao.updateById(strategyConfigDO);
if (CollectionUtils.isNotEmpty(configStrategyQO.getConfigStrategyInfoQOList())) {
// 删除重新添加
deleteConfigStrategyInfo(ListUtil.toList(configStrategyQO.getId()));
configStrategyQO.getConfigStrategyInfoQOList().forEach(configStrategyInfoQO -> {
addConfigStrategyInfo(configStrategyInfoQO, loginAdminDTO.getCompanyId(), strategyConfigDO.getId());
});
}
return strategyConfigDO.getId();
}
@Override
@Transactional(rollbackFor = Exception.class)
public void issuedStrategyDelete(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO) {
List<Integer> listEquipmentIdByStrategyIds = configStrategyUserDao.listEquipmentIdByStrategyIds(strategyIdList);
issuedUserHandler.issuedUser(listEquipmentIdByStrategyIds, loginAdminDTO.getCompanyId(),
StrategyCmdEnum.DELETE_CONFIG_STRATEGY.getCmd(), JSONUtil.toJsonStr(strategyIdList));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void doDeleteStrategy(List<Integer> strategyIdList) {
deleteConfigStrategyInfo(strategyIdList);
configStrategyDao.deleteBatchIds(strategyIdList);
configStrategyUserDao.delete(Wrappers.lambdaQuery(StrategyConfigUserDO.class)
.in(StrategyConfigUserDO::getStrategyId, strategyIdList));
}
@Override
protected void adminLogDeleteStrategy(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO) {
strategyIdList.forEach(strategyId -> {
StrategyConfigDO configDO = configStrategyDao.selectById(strategyId);
List<Integer> listEquipmentIdByStrategyIds = configStrategyUserDao.listEquipmentIdByStrategyIds(Collections.singletonList(strategyId));
String content = "删除配置策略 策略名:" + configDO.getStrategyName();
logAdminHandler.log(loginAdminDTO, LogAdminTypeEnum.STRATEGY_TYPE.getLogType(), content, MODULE, listEquipmentIdByStrategyIds);
});
}
@Override
@Transactional(rollbackFor = Exception.class)
public void doUpdateStrategyState(Integer strategyId, Integer state, LoginAdminDTO loginAdminDTO) {
new LambdaUpdateChainWrapper<>(configStrategyDao)
.set(state != null, StrategyConfigDO::getState, state)
.set(StrategyConfigDO::getOperator, loginAdminDTO.getAdminName())
.set(StrategyConfigDO::getOperateTime, new Date())
.eq(StrategyConfigDO::getId, strategyId)
.update();
}
@Override
protected BaseStrategyQO createBaseStrategyQO(Integer strategyId) {
StrategyConfigDO configStrategyDO = configStrategyDao.selectById(strategyId);
if (configStrategyDO == null) {
return null;
}
this.strategyConfigDO = configStrategyDO;
BaseStrategyQO baseStrategyQO = new BaseStrategyQO();
baseStrategyQO.setState(configStrategyDO.getState());
baseStrategyQO.setGlobalType(configStrategyDO.getGlobalType());
return baseStrategyQO;
}
@Override
protected void adminLogUpdateStrategyState(Integer strategyId, Integer state, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
String logContent = "配置策略 策略名:" + strategyConfigDO.getStrategyName();
if (StrategyStateEnum.ISSUED.getState().equals(state)) {
logContent = "启用" + logContent;
}
if (StrategyStateEnum.DISABLE.getState().equals(state)) {
logContent = "禁用" + logContent;
}
logAdminHandler.log(loginAdminDTO, LogAdminTypeEnum.STRATEGY_TYPE.getLogType(), logContent, MODULE, equipmentIdList);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void issuedStrategyState(Integer strategyId, Integer state, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
if (CollectionUtils.isNotEmpty(equipmentIdList)) {
String cmdType = "";
if (StrategyStateEnum.ISSUED.getState().equals(state)) {
cmdType = StrategyCmdEnum.ENABLE_CONFIG_STRATEGY.getCmd();
}
if (StrategyStateEnum.DISABLE.getState().equals(state)) {
cmdType = StrategyCmdEnum.DISABLE_CONFIG_STRATEGY.getCmd();
}
List<ConfigStrategySO> configStrategySOList = configStrategyManager.getConfigStrategySO(ListUtil.toList(strategyId), System.currentTimeMillis());
if (CollectionUtils.isNotEmpty(configStrategySOList)) {
issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), cmdType, JSONUtil.toJsonStr(configStrategySOList));
}
}
}
@Override
protected List<StrategyUserVO> getStrategyUserList(Integer strategyId, Integer searchType, String searchValue) {
return configStrategyUserDao.listStrategyUser(strategyId, searchType, searchValue);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void issuedStrategyUserDelete(Integer strategyId, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.DELETE_CONFIG_STRATEGY.getCmd(), JSONUtil.toJsonStr(ListUtil.toList(strategyId)));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void doDeleteStrategyUser(Integer strategyId, List<Integer> equipmentIdList) {
configStrategyUserDao.delete(
Wrappers.lambdaQuery(StrategyConfigUserDO.class)
.eq(StrategyConfigUserDO::getStrategyId, strategyId)
.in(StrategyConfigUserDO::getEquipmentId, equipmentIdList));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void adminLogDeleteStrategyUser(Integer strategyId, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
StrategyConfigDO configStrategyDO = configStrategyDao.selectById(strategyId);
if (configStrategyDO == null) {
log.warn("configStrategyDO 不应该为null");
return;
}
String content = "配置策略作用人删除 策略名:" + configStrategyDO.getStrategyName();
logAdminHandler.log(loginAdminDTO, LogAdminTypeEnum.STRATEGY_TYPE.getLogType(), content, MODULE, equipmentIdList);
}
/**
* 添加配置策略信息
*
* @param configStrategyInfoQO
* @param companyId
* @param strategyId
*/
@Transactional(rollbackFor = Exception.class)
public void addConfigStrategyInfo(ConfigStrategyInfoQO configStrategyInfoQO, Integer companyId, Integer strategyId) {
saveBlackOrWhitelist(companyId, strategyId, configStrategyInfoQO.getBluetoothQO(),StrategyConfigEnum.BLUETOOTH);
saveBlackOrWhitelist(companyId, strategyId, configStrategyInfoQO.getUsbQO(),StrategyConfigEnum.USB);
saveBlackOrWhitelist(companyId, strategyId, configStrategyInfoQO.getHotSpotQO(),StrategyConfigEnum.HOT_SPOT);
saveBlackOrWhitelist(companyId, strategyId, configStrategyInfoQO.getWifiQO(),StrategyConfigEnum.WIFI);
configStrategyInfoQO.setStrategyId(strategyId);
if (Objects.nonNull(configStrategyInfoQO.getIsTimeLimit()) && configStrategyInfoQO.getIsTimeLimit() == 1) {
// 有时间限制
timeLimit(configStrategyInfoQO, companyId);
} else {
// 无时间限制
noTimeLimit(configStrategyInfoQO, companyId);
}
}
@Transactional(rollbackFor = Exception.class)
public void timeLimit(ConfigStrategyInfoQO configStrategyInfoQO, Integer companyId) {
String beginTime = configStrategyInfoQO.getBeginTime();
String endTime = configStrategyInfoQO.getEndTime();
if (StringUtils.isNotBlank(beginTime) && StringUtils.isNotBlank(endTime)) {
List<String> beginTimeList = StrUtil.split(beginTime, ";", 0, true, true);
List<String> endTimeList = StrUtil.split(endTime, ";", 0, true, true);
String beginDate = beginTimeList.get(0);
String endDate = endTimeList.get(endTimeList.size() - 1);
for (int i = 0; i < beginTimeList.size(); i++) {
String begin = beginTimeList.get(i);
String end = endTimeList.get(i);
StrategyConfigInfoDO configInfoDO = StrategyConfigInfoDO.builder()
.isTimeLimit(configStrategyInfoQO.getIsTimeLimit())
.beginDate(DateUtil.parse(beginDate))
.endDate(DateUtil.parse(endDate))
.beginTime(DateUtil.parse(begin))
.endTime(DateUtil.parse(end))
.workDate(configStrategyInfoQO.getWorkDate())
.strategyId(configStrategyInfoQO.getStrategyId())
.companyId(companyId)
.build();
strategyConfigInfoDao.insert(configInfoDO);
}
}
}
@Transactional(rollbackFor = Exception.class)
public void noTimeLimit(ConfigStrategyInfoQO configStrategyInfoQO, Integer companyId) {
StrategyConfigInfoDO configInfoDO = StrategyConfigInfoDO.builder()
.isTimeLimit(configStrategyInfoQO.getIsTimeLimit())
.workDate(configStrategyInfoQO.getWorkDate())
.strategyId(configStrategyInfoQO.getStrategyId())
.companyId(companyId)
.build();
strategyConfigInfoDao.insert(configInfoDO);
}
/**
* 配置策略信息删除
*
* @param strategyIdList
*/
@Transactional(rollbackFor = Exception.class)
public void deleteConfigStrategyInfo(List<Integer> strategyIdList) {
if (CollectionUtils.isNotEmpty(strategyIdList)) {
strategyConfigInfoDao.delete(Wrappers.lambdaQuery(StrategyConfigInfoDO.class)
.in(StrategyConfigInfoDO::getStrategyId, strategyIdList));
}
}
@Transactional(rollbackFor = Exception.class)
public void saveBlackOrWhitelist(Integer companyId, Integer strategyId, ConfigQO configQO, StrategyConfigEnum strategyConfigEnum) {
StrategyConfigInfoListDO strategyConfigInfoListDO = new StrategyConfigInfoListDO();
strategyConfigInfoListDO.setCompanyId(companyId);
strategyConfigInfoListDO.setStrategyId(strategyId);
strategyConfigInfoListDO.setStrategyType(strategyConfigEnum.getStrategyType());
strategyConfigInfoListDO.setType(configQO.getType());
strategyConfigInfoListDO.setMsg(JSONUtil.toJsonStr(configQO.getConfigList()));
strategyConfigInfoListDao.insertSelective(strategyConfigInfoListDO);
}
@Override
public List<StrategyVO> listStrategy(StrategyQueryQO strategyQueryQO) {
return configStrategyDao.listStrategy(strategyQueryQO);
}
} }
\ No newline at end of file
...@@ -168,7 +168,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy ...@@ -168,7 +168,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy
long currentTimeMillis = System.currentTimeMillis(); long currentTimeMillis = System.currentTimeMillis();
List<NetworkIsoStrategySO> isoStrategySOList = isoStrategyManager.getStrategySO(strategyIdList, currentTimeMillis); List<NetworkIsoStrategySO> isoStrategySOList = isoStrategyManager.getStrategySO(strategyIdList, currentTimeMillis);
if (CollectionUtils.isNotEmpty(isoStrategySOList)) { if (CollectionUtils.isNotEmpty(isoStrategySOList)) {
issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.ISSUED_CONFIG_STRATEGY.getCmd(), issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.ISSUED_NETWORK_STRATEGY.getCmd(),
JSONUtil.toJsonStr(isoStrategySOList)); JSONUtil.toJsonStr(isoStrategySOList));
} }
} }
...@@ -197,7 +197,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy ...@@ -197,7 +197,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy
CollectionUtils.isNotEmpty(networkIsolationQO.getCandidateIdList())) { CollectionUtils.isNotEmpty(networkIsolationQO.getCandidateIdList())) {
strategyConfigDO.setDepartmentIds(JSONUtil.toJsonStr(networkIsolationQO.getCandidateIdList())); strategyConfigDO.setDepartmentIds(JSONUtil.toJsonStr(networkIsolationQO.getCandidateIdList()));
} }
networkIsolationDao.insert(strategyConfigDO); networkIsolationDao.insertSelective(strategyConfigDO);
return strategyConfigDO.getId(); return strategyConfigDO.getId();
} }
...@@ -233,7 +233,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy ...@@ -233,7 +233,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy
public void issuedStrategyDelete(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO) { public void issuedStrategyDelete(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO) {
List<Integer> listEquipmentIdByStrategyIds = networkIsolationUserDao.listEquipmentIdByStrategyIds(strategyIdList); List<Integer> listEquipmentIdByStrategyIds = networkIsolationUserDao.listEquipmentIdByStrategyIds(strategyIdList);
issuedUserHandler.issuedUser(listEquipmentIdByStrategyIds, loginAdminDTO.getCompanyId(), issuedUserHandler.issuedUser(listEquipmentIdByStrategyIds, loginAdminDTO.getCompanyId(),
StrategyCmdEnum.DELETE_CONFIG_STRATEGY.getCmd(), JSONUtil.toJsonStr(strategyIdList)); StrategyCmdEnum.DELETE_NETWORK_STRATEGY.getCmd(), JSONUtil.toJsonStr(strategyIdList));
} }
@Override @Override
...@@ -296,10 +296,10 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy ...@@ -296,10 +296,10 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy
if (CollectionUtils.isNotEmpty(equipmentIdList)) { if (CollectionUtils.isNotEmpty(equipmentIdList)) {
String cmdType = ""; String cmdType = "";
if (StrategyStateEnum.ISSUED.getState().equals(state)) { if (StrategyStateEnum.ISSUED.getState().equals(state)) {
cmdType = StrategyCmdEnum.ENABLE_CONFIG_STRATEGY.getCmd(); cmdType = StrategyCmdEnum.ENABLE_NETWORK_STRATEGY.getCmd();
} }
if (StrategyStateEnum.DISABLE.getState().equals(state)) { if (StrategyStateEnum.DISABLE.getState().equals(state)) {
cmdType = StrategyCmdEnum.DISABLE_CONFIG_STRATEGY.getCmd(); cmdType = StrategyCmdEnum.DISABLE_NETWORK_STRATEGY.getCmd();
} }
List<NetworkIsoStrategySO> networkIsoStrategySOList = isoStrategyManager.getStrategySO(ListUtil.toList(strategyId), System.currentTimeMillis()); List<NetworkIsoStrategySO> networkIsoStrategySOList = isoStrategyManager.getStrategySO(ListUtil.toList(strategyId), System.currentTimeMillis());
if (CollectionUtils.isNotEmpty(networkIsoStrategySOList)) { if (CollectionUtils.isNotEmpty(networkIsoStrategySOList)) {
...@@ -316,7 +316,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy ...@@ -316,7 +316,7 @@ public class NetworkIsolationStrategyServiceImpl extends AbstractDefaultStrategy
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void issuedStrategyUserDelete(Integer strategyId, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) { public void issuedStrategyUserDelete(Integer strategyId, List<Integer> equipmentIdList, LoginAdminDTO loginAdminDTO) {
issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.DELETE_CONFIG_STRATEGY.getCmd(), JSONUtil.toJsonStr(ListUtil.toList(strategyId))); issuedUserHandler.issuedUser(equipmentIdList, loginAdminDTO.getCompanyId(), StrategyCmdEnum.DELETE_NETWORK_STRATEGY.getCmd(), JSONUtil.toJsonStr(ListUtil.toList(strategyId)));
} }
@Override @Override
......
package com.skr.mdm.api.strategy.service.impl; package com.skr.mdm.api.strategy.service.impl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.skr.mdm.api.strategy.service.ConfigStrategyService; import com.skr.mdm.api.strategy.service.*;
import com.skr.mdm.api.strategy.service.FunctionStrategyService;
import com.skr.mdm.api.strategy.service.StrategyService;
import com.skr.mdm.api.strategy.service.UrlStrategyService;
import com.skr.mdm.bean.qo.StrategyQueryQO; import com.skr.mdm.bean.qo.StrategyQueryQO;
import com.skr.mdm.bean.qo.StrategyTypeIssuedQO; import com.skr.mdm.bean.qo.StrategyTypeIssuedQO;
import com.skr.mdm.bean.qo.StrategyTypeQO; import com.skr.mdm.bean.qo.StrategyTypeQO;
...@@ -36,6 +33,8 @@ public class StrategyServiceImpl implements StrategyService { ...@@ -36,6 +33,8 @@ public class StrategyServiceImpl implements StrategyService {
private ConfigStrategyService configStrategyService; private ConfigStrategyService configStrategyService;
@Autowired @Autowired
private UrlStrategyService urlStrategyService; private UrlStrategyService urlStrategyService;
@Autowired
private NetworkIsolationStrategyService networkIsolationStrategyService;
@Override @Override
...@@ -45,12 +44,15 @@ public class StrategyServiceImpl implements StrategyService { ...@@ -45,12 +44,15 @@ public class StrategyServiceImpl implements StrategyService {
if (StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) { if (StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) {
return ResponseResult.success(PageUtil.getPageResult(strategyDao.listStrategy(strategyQueryQO))); return ResponseResult.success(PageUtil.getPageResult(strategyDao.listStrategy(strategyQueryQO)));
} }
// if (StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) { if (StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) {
// return ResponseResult.success(PageUtil.getPageResult(configStrategyService.listStrategy(strategyQueryQO))); return ResponseResult.success(PageUtil.getPageResult(configStrategyService.listStrategy(strategyQueryQO)));
// } }
if (StrategyTypeEnum.URL_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) { if (StrategyTypeEnum.URL_STRATEGY.getStrategyType().equals(strategyQueryQO.getStrategyType())) {
return ResponseResult.success(PageUtil.getPageResult(urlStrategyService.listStrategy(strategyQueryQO))); return ResponseResult.success(PageUtil.getPageResult(urlStrategyService.listStrategy(strategyQueryQO)));
} }
if (StrategyTypeEnum.NETWORK_ISO.getStrategyType().equals(strategyQueryQO.getStrategyType())) {
return ResponseResult.success(PageUtil.getPageResult(networkIsolationStrategyService.listStrategy(strategyQueryQO)));
}
return ResponseResult.success(); return ResponseResult.success();
} }
...@@ -62,13 +64,17 @@ public class StrategyServiceImpl implements StrategyService { ...@@ -62,13 +64,17 @@ public class StrategyServiceImpl implements StrategyService {
StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType()), StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType()),
strategyTypeIssuedQO, loginAdminDTO)); strategyTypeIssuedQO, loginAdminDTO));
// ResponseResultManager.add(configStrategyService.issuedStrategy( ResponseResultManager.add(configStrategyService.issuedStrategy(
// StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType()), StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType()),
// strategyTypeIssuedQO, loginAdminDTO)); strategyTypeIssuedQO, loginAdminDTO));
ResponseResultManager.add(urlStrategyService.issuedStrategy( ResponseResultManager.add(urlStrategyService.issuedStrategy(
StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.URL_STRATEGY.getStrategyType()), StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.URL_STRATEGY.getStrategyType()),
strategyTypeIssuedQO, loginAdminDTO)); strategyTypeIssuedQO, loginAdminDTO));
ResponseResultManager.add(networkIsolationStrategyService.issuedStrategy(
StrategyManager.getStrategyIdList(strategyTypeQOList, StrategyTypeEnum.NETWORK_ISO.getStrategyType()),
strategyTypeIssuedQO, loginAdminDTO));
} }
return ResponseResultManager.get(); return ResponseResultManager.get();
} }
...@@ -79,11 +85,14 @@ public class StrategyServiceImpl implements StrategyService { ...@@ -79,11 +85,14 @@ public class StrategyServiceImpl implements StrategyService {
ResponseResultManager.add(functionStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList, ResponseResultManager.add(functionStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList,
StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType()), loginAdminDTO)); StrategyTypeEnum.FUNCTION_STRATEGY.getStrategyType()), loginAdminDTO));
// ResponseResultManager.add(configStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList, ResponseResultManager.add(configStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList,
// StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType()), loginAdminDTO)); StrategyTypeEnum.CONFIG_STRATEGY.getStrategyType()), loginAdminDTO));
ResponseResultManager.add(urlStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList, ResponseResultManager.add(urlStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList,
StrategyTypeEnum.URL_STRATEGY.getStrategyType()), loginAdminDTO)); StrategyTypeEnum.URL_STRATEGY.getStrategyType()), loginAdminDTO));
ResponseResultManager.add(networkIsolationStrategyService.deleteStrategy(StrategyManager.getStrategyIdList(strategyTypeQOList,
StrategyTypeEnum.NETWORK_ISO.getStrategyType()), loginAdminDTO));
} }
return ResponseResultManager.get(); return ResponseResultManager.get();
} }
......
...@@ -59,7 +59,7 @@ public interface DefaultStrategyService { ...@@ -59,7 +59,7 @@ public interface DefaultStrategyService {
*/ */
ResponseResult deleteStrategy(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO); ResponseResult deleteStrategy(List<Integer> strategyIdList, LoginAdminDTO loginAdminDTO);
/** /**a
* 策略启用禁用 * 策略启用禁用
* *
* @param strategyId 策略ID集合 * @param strategyId 策略ID集合
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment