61 changed files with 1816 additions and 43 deletions
			
			
		@ -0,0 +1,36 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.TableName; | 
				
			||||||
 | 
					import com.fasterxml.jackson.annotation.JsonFormat; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.DateUtil; | 
				
			||||||
 | 
					import org.springframework.format.annotation.DateTimeFormat; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.time.LocalDateTime; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份DTO对象") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsDTO extends ParamBackupsEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("开始时间") | 
				
			||||||
 | 
					    @JsonFormat(pattern = DateUtil.PATTERN_DATETIME) | 
				
			||||||
 | 
					    @DateTimeFormat(pattern = DateUtil.PATTERN_DATETIME) | 
				
			||||||
 | 
					    private LocalDateTime startTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("结束时间") | 
				
			||||||
 | 
					    @JsonFormat(pattern = DateUtil.PATTERN_DATETIME) | 
				
			||||||
 | 
					    @DateTimeFormat(pattern = DateUtil.PATTERN_DATETIME) | 
				
			||||||
 | 
					    private LocalDateTime endTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数备份详情列表") | 
				
			||||||
 | 
					    private List<ParamBackupsDetailDTO> details; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份详情DTO对象") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsDetailDTO extends ParamBackupsDetailEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,42 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@ApiModel("下发参数") | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    private String name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("标识") | 
				
			||||||
 | 
					    private String signage; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("关联设备") | 
				
			||||||
 | 
					    private String facDeviceId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("hz3000关联id") | 
				
			||||||
 | 
					    private String facDeviceFuncId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数标识") | 
				
			||||||
 | 
					    private String parameterTag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    private String parameterName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("值") | 
				
			||||||
 | 
					    private String value; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最大值") | 
				
			||||||
 | 
					    private String maxValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最小值") | 
				
			||||||
 | 
					    private String minValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,37 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamVO; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@ApiModel("参数下发请求体") | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamDistributeDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("站点编号") | 
				
			||||||
 | 
					    @NotBlank | 
				
			||||||
 | 
					    private String stationCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("设备编码") | 
				
			||||||
 | 
					    @NotBlank | 
				
			||||||
 | 
					    private String emCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("是否延迟发布") | 
				
			||||||
 | 
					    private Boolean delay; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("机器码") | 
				
			||||||
 | 
					    @NotBlank | 
				
			||||||
 | 
					    private String machineCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数列表") | 
				
			||||||
 | 
					    @NotBlank | 
				
			||||||
 | 
					    private List<ParamDTO> paramList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,54 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.TableName; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.QueryField; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.SqlCondition; | 
				
			||||||
 | 
					import org.springblade.core.tenant.mp.TenantEntity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份详情表") | 
				
			||||||
 | 
					@TableName("HZIMS_PARAM_BACKUPS_DETAIL") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsDetailEntity extends TenantEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("备份主表ID") | 
				
			||||||
 | 
					    private Long backupsId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("标识") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String signage; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("关联设备") | 
				
			||||||
 | 
					    private String facDeviceId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("hz3000关联id") | 
				
			||||||
 | 
					    private String facDeviceFuncId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数标识") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String parameterTag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String parameterName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("值") | 
				
			||||||
 | 
					    private String value; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最大值") | 
				
			||||||
 | 
					    private String maxValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最小值") | 
				
			||||||
 | 
					    private String minValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,41 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.SqlCondition; | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.TableName; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.QueryField; | 
				
			||||||
 | 
					import org.springblade.core.tenant.mp.TenantEntity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份表") | 
				
			||||||
 | 
					@TableName("hzims_param_backups") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsEntity extends TenantEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("备份名称") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("站点编号") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private String stationCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("设备编号") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private String emCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("是否延迟发布") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private Boolean delay; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("机器码") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private String machineCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,63 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.SqlCondition; | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.annotation.TableName; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.QueryField; | 
				
			||||||
 | 
					import org.springblade.core.tenant.mp.TenantEntity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@ApiModel("HZ100C参数模板实体类") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@TableName("HZIMS_EM_PARAM_MODEL") | 
				
			||||||
 | 
					public class ParamModelEntity extends TenantEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("编号") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String code; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("名称") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.LIKE) | 
				
			||||||
 | 
					    private String name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("单位") | 
				
			||||||
 | 
					    private String unit; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("小数位") | 
				
			||||||
 | 
					    private Integer decimalDigit; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最大值") | 
				
			||||||
 | 
					    private Double maxValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最小值") | 
				
			||||||
 | 
					    private Double minValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("宽度") | 
				
			||||||
 | 
					    private Double width; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("类型") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private Integer type; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("数据类型") | 
				
			||||||
 | 
					    @QueryField(condition = SqlCondition.EQUAL) | 
				
			||||||
 | 
					    private Integer dataType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("地址") | 
				
			||||||
 | 
					    private Integer address; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("起始位") | 
				
			||||||
 | 
					    private Integer initDigital; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("所在显示组") | 
				
			||||||
 | 
					    private Integer group; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("注释") | 
				
			||||||
 | 
					    private String remark; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1 @@ | 
				
			|||||||
 | 
					### HZ100C 参数下发功能 | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份详情VO对象") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsDetailVO extends ParamBackupsDetailEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,20 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("下发参数备份VO对象") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamBackupsVO extends ParamBackupsEntity implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("下发参数备份参数列表") | 
				
			||||||
 | 
					    private List<ParamBackupsDetailVO> detailList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,21 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("HZ100C参数分组VO") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamGroupVO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数分组ID") | 
				
			||||||
 | 
					    private String groupId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数分组名称") | 
				
			||||||
 | 
					    private String groupName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,22 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("HZ100C参数树VO") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamTreeVO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数分组") | 
				
			||||||
 | 
					    private ParamGroupVO paramGroup; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数列表") | 
				
			||||||
 | 
					    private List<ParamVO> paramList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,64 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @ClassName ParamVO | 
				
			||||||
 | 
					 * @description: | 
				
			||||||
 | 
					 * @author: hx | 
				
			||||||
 | 
					 * @create: 2023-10-17 14:13 | 
				
			||||||
 | 
					 * @Version 4.0 | 
				
			||||||
 | 
					 **/ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("HZ100C参数VO") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class ParamVO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    private String name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("标识") | 
				
			||||||
 | 
					    private String signage; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("关联设备") | 
				
			||||||
 | 
					    private String facDeviceId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("hz3000关联id") | 
				
			||||||
 | 
					    private String facDeviceAttrId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数标识") | 
				
			||||||
 | 
					    private String parameterTag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数名称") | 
				
			||||||
 | 
					    private String parameterName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("是否只读") | 
				
			||||||
 | 
					    private Integer isReadOnly; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("数据类型") | 
				
			||||||
 | 
					    private String dbType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数分组") | 
				
			||||||
 | 
					    private Long modelClassifyId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("参数分组名称") | 
				
			||||||
 | 
					    private String modelClassifyName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("单位") | 
				
			||||||
 | 
					    private String units; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("值") | 
				
			||||||
 | 
					    private String value; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最大值") | 
				
			||||||
 | 
					    private String maxValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("最小值") | 
				
			||||||
 | 
					    private String minValue; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,27 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.vo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModel; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiModelProperty; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					import lombok.EqualsAndHashCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					@ApiModel("实时数据VO对象") | 
				
			||||||
 | 
					@EqualsAndHashCode | 
				
			||||||
 | 
					public class RealDataVO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("采集点ID") | 
				
			||||||
 | 
					    private String realId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("采集点实时数据") | 
				
			||||||
 | 
					    private String value; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("采集点时间") | 
				
			||||||
 | 
					    private String time; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @ApiModelProperty("有效值") | 
				
			||||||
 | 
					    private String q; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,26 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.wrapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsDetailVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsVO; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.BaseEntityWrapper; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @ClassName ParamBackupsDetailWrapper | 
				
			||||||
 | 
					 * @description: | 
				
			||||||
 | 
					 * @author: hx | 
				
			||||||
 | 
					 * @create: 2023-10-17 17:07 | 
				
			||||||
 | 
					 * @Version 4.0 | 
				
			||||||
 | 
					 **/ | 
				
			||||||
 | 
					public class ParamBackupsDetailWrapper extends BaseEntityWrapper<ParamBackupsDetailEntity, ParamBackupsDetailVO> { | 
				
			||||||
 | 
					    public static ParamBackupsDetailWrapper build() { | 
				
			||||||
 | 
					        return new ParamBackupsDetailWrapper(); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public ParamBackupsDetailVO entityVO(ParamBackupsDetailEntity entity) { | 
				
			||||||
 | 
					        ParamBackupsDetailVO vo = BeanUtil.copy(entity, ParamBackupsDetailVO.class); | 
				
			||||||
 | 
					        return vo; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,21 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.wrapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsVO; | 
				
			||||||
 | 
					import org.apache.ibatis.reflection.wrapper.BaseWrapper; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.BaseEntityWrapper; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class ParamBackupsWrapper extends BaseEntityWrapper<ParamBackupsEntity,ParamBackupsVO> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static ParamBackupsWrapper build() { | 
				
			||||||
 | 
					        return new ParamBackupsWrapper(); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public ParamBackupsVO entityVO(ParamBackupsEntity entity) { | 
				
			||||||
 | 
					        ParamBackupsVO vo = BeanUtil.copy(entity,ParamBackupsVO.class); | 
				
			||||||
 | 
					        return vo; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,67 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.controller; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.metadata.IPage; | 
				
			||||||
 | 
					import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; | 
				
			||||||
 | 
					import com.hnac.hzims.common.utils.Condition; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamBackupsDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamBackupsService; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.wrapper.ParamBackupsWrapper; | 
				
			||||||
 | 
					import io.swagger.annotations.Api; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiOperation; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiParam; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import org.springblade.core.boot.ctrl.BladeController; | 
				
			||||||
 | 
					import org.springblade.core.mp.support.Query; | 
				
			||||||
 | 
					import org.springblade.core.tool.api.R; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.Func; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/emParam/backups") | 
				
			||||||
 | 
					@Api(value = "HZ100C参数下发备份管理",tags = "HZ100C参数下发备份管理") | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					public class ParamBackupsController extends BladeController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private final IParamBackupsService paramBackupsService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @GetMapping("/listPage") | 
				
			||||||
 | 
					    @ApiOperation("分页查询") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 1) | 
				
			||||||
 | 
					    public R<IPage> listPage(ParamBackupsDTO request, Query query) { | 
				
			||||||
 | 
					        IPage page = paramBackupsService.page(Condition.getPage(query),paramBackupsService.getQueryWrapper(request)); | 
				
			||||||
 | 
					        page.setRecords(ParamBackupsWrapper.build().listVO(page.getRecords())); | 
				
			||||||
 | 
					        return R.data(page); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @DeleteMapping("/remove/{ids}") | 
				
			||||||
 | 
					    @ApiOperation("删除备份") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 2) | 
				
			||||||
 | 
					    public R remove(@PathVariable @ApiParam("主键,按,分隔") String ids) { | 
				
			||||||
 | 
					        return R.status(paramBackupsService.removeByIds(Func.toLongList(",",ids))); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @PostMapping("/save") | 
				
			||||||
 | 
					    @ApiOperation("新增") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 3) | 
				
			||||||
 | 
					    public R save(@RequestBody ParamBackupsDTO request) { | 
				
			||||||
 | 
					        return R.status(paramBackupsService.save(request)); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @GetMapping("/detail/{id}") | 
				
			||||||
 | 
					    @ApiOperation("查看详情") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 4) | 
				
			||||||
 | 
					    public R<ParamBackupsVO> detail(@PathVariable @ApiParam("主键") Long id) { | 
				
			||||||
 | 
					        return R.data(paramBackupsService.detail(id)); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @PutMapping("/updateById") | 
				
			||||||
 | 
					    @ApiOperation("编辑") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 5) | 
				
			||||||
 | 
					    public R updateById(@RequestBody ParamBackupsDTO request) { | 
				
			||||||
 | 
					        return R.status(paramBackupsService.updateById(request)); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,39 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.controller; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamDistributeDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamService; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamTreeVO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.core.response.Result; | 
				
			||||||
 | 
					import io.swagger.annotations.Api; | 
				
			||||||
 | 
					import io.swagger.annotations.ApiOperation; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import org.springblade.core.boot.ctrl.BladeController; | 
				
			||||||
 | 
					import org.springblade.core.tool.api.R; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@RequestMapping("/param") | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@Api(value = "参数下发管理",tags = "参数下发管理") | 
				
			||||||
 | 
					public class ParamController extends BladeController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private final IParamService paramService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @GetMapping("/recall") | 
				
			||||||
 | 
					    @ApiOperation("召回参数") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 1) | 
				
			||||||
 | 
					    public R<List<ParamTreeVO>> recall(String emCode, String stationCode) { | 
				
			||||||
 | 
					        return R.data(paramService.recall(emCode,stationCode)); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @PostMapping("/distribute") | 
				
			||||||
 | 
					    @ApiOperation("下发参数") | 
				
			||||||
 | 
					    @ApiOperationSupport(order = 2) | 
				
			||||||
 | 
					    public Result<Object> distribute(@RequestBody ParamDistributeDTO req) { | 
				
			||||||
 | 
					        return paramService.distribute(req); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,8 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface ParamBackupsDetailMapper extends BaseMapper<ParamBackupsDetailEntity> { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,9 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import org.apache.ibatis.reflection.wrapper.BaseWrapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface ParamBackupsMapper extends BaseMapper<ParamBackupsEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,10 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamModelEntity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface ParamModelMapper extends BaseMapper<ParamModelEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1 @@ | 
				
			|||||||
 | 
					### HZ100C 参数下发功能 | 
				
			||||||
@ -0,0 +1,8 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface IParamBackupsDetailService extends BaseService<ParamBackupsDetailEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
				
			||||||
 | 
					import com.hnac.hzims.common.utils.Condition; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamBackupsDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsVO; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.Func; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestBody; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface IParamBackupsService extends BaseService<ParamBackupsEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Boolean save(ParamBackupsDTO request); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ParamBackupsVO detail(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Boolean updateById(ParamBackupsDTO request); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    default LambdaQueryWrapper<ParamBackupsEntity> getQueryWrapper(ParamBackupsDTO request) { | 
				
			||||||
 | 
					        ParamBackupsEntity paramBackupsEntity = BeanUtil.copy(request, ParamBackupsEntity.class); | 
				
			||||||
 | 
					        LambdaQueryWrapper<ParamBackupsEntity> queryWrapper = Condition.getQueryWrapper(ParamBackupsEntity.class, paramBackupsEntity); | 
				
			||||||
 | 
					        queryWrapper.ge(Func.isNotEmpty(request.getStartTime()),ParamBackupsEntity::getCreateTime,request.getStartTime()); | 
				
			||||||
 | 
					        queryWrapper.le(Func.isNotEmpty(request.getEndTime()),ParamBackupsEntity::getCreateTime,request.getEndTime()); | 
				
			||||||
 | 
					        queryWrapper.orderByDesc(ParamBackupsEntity::getCreateTime); | 
				
			||||||
 | 
					        return queryWrapper; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamModelEntity; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface IParamModelService extends BaseService<ParamModelEntity> { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,13 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamDistributeDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamTreeVO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.core.response.Result; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface IParamService { | 
				
			||||||
 | 
					    List<ParamTreeVO> recall(String emCode, String stationCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Result<Object> distribute(ParamDistributeDTO req); | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,18 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.mapper.ParamBackupsDetailMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamBackupsDetailService; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseServiceImpl; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					public class ParamBackupsDetailServiceImpl extends BaseServiceImpl<ParamBackupsDetailMapper, ParamBackupsDetailEntity> implements IParamBackupsDetailService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,90 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamBackupsDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsDetailEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamBackupsEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.mapper.ParamBackupsDetailMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.mapper.ParamBackupsMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamBackupsDetailService; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamBackupsService; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamBackupsVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.wrapper.ParamBackupsDetailWrapper; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.log.exception.ServiceException; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseServiceImpl; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.CollectionUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.Func; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.ObjectUtil; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					import org.springframework.transaction.annotation.Transactional; | 
				
			||||||
 | 
					import org.springframework.util.Assert; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.sql.rowset.serial.SerialException; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import java.util.Objects; | 
				
			||||||
 | 
					import java.util.stream.Collectors; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					public class ParamBackupsServiceImpl extends BaseServiceImpl<ParamBackupsMapper, ParamBackupsEntity> implements IParamBackupsService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private final IParamBackupsDetailService detailService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    @Transactional | 
				
			||||||
 | 
					    public Boolean save(ParamBackupsDTO request) { | 
				
			||||||
 | 
					        Assert.isTrue(CollectionUtil.isNotEmpty(request.getDetails()),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("备份参数不能为空!"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        ParamBackupsEntity paramBackupsEntity = BeanUtil.copy(request,ParamBackupsEntity.class); | 
				
			||||||
 | 
					        if(this.save(paramBackupsEntity)) { | 
				
			||||||
 | 
					            List<ParamBackupsDetailEntity> detailList = request.getDetails().stream() | 
				
			||||||
 | 
					                    .map(d -> BeanUtil.copy(d, ParamBackupsDetailEntity.class)).filter(Objects::nonNull) | 
				
			||||||
 | 
					                    .peek(d -> d.setBackupsId(paramBackupsEntity.getId())).collect(Collectors.toList()); | 
				
			||||||
 | 
					            Assert.isTrue(detailService.saveBatch(detailList),() -> { | 
				
			||||||
 | 
					                throw new ServiceException("保存备份参数列表失败!"); | 
				
			||||||
 | 
					            }); | 
				
			||||||
 | 
					            return true; | 
				
			||||||
 | 
					        } | 
				
			||||||
 | 
					        return false; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public ParamBackupsVO detail(Long id) { | 
				
			||||||
 | 
					        ParamBackupsEntity paramBackupsEntity = this.getById(id); | 
				
			||||||
 | 
					        Assert.isTrue(Func.isNotEmpty(paramBackupsEntity),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("未查询到相关记录!"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        ParamBackupsVO result = BeanUtil.copy(paramBackupsEntity,ParamBackupsVO.class); | 
				
			||||||
 | 
					        LambdaQueryWrapper<ParamBackupsDetailEntity> detailQuery = Wrappers.<ParamBackupsDetailEntity>lambdaQuery().eq(ParamBackupsDetailEntity::getBackupsId, id); | 
				
			||||||
 | 
					        List<ParamBackupsDetailEntity> detailList = detailService.list(detailQuery); | 
				
			||||||
 | 
					        result.setDetailList(ParamBackupsDetailWrapper.build().listVO(detailList)); | 
				
			||||||
 | 
					        return result; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    @Transactional | 
				
			||||||
 | 
					    public Boolean updateById(ParamBackupsDTO request) { | 
				
			||||||
 | 
					        Assert.isTrue(CollectionUtil.isNotEmpty(request.getDetails()),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("备份参数不能为空!"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        ParamBackupsEntity paramBackupsEntity = BeanUtil.copy(request,ParamBackupsEntity.class); | 
				
			||||||
 | 
					        if(this.updateById(paramBackupsEntity)) { | 
				
			||||||
 | 
					            List<ParamBackupsDetailEntity> detailList = request.getDetails().stream() | 
				
			||||||
 | 
					                    .map(d -> BeanUtil.copy(d, ParamBackupsDetailEntity.class)).filter(Objects::nonNull) | 
				
			||||||
 | 
					                    .peek(d -> d.setBackupsId(paramBackupsEntity.getId())).collect(Collectors.toList()); | 
				
			||||||
 | 
					            Assert.isTrue(detailService.saveOrUpdateBatch(detailList),() -> { | 
				
			||||||
 | 
					                throw new ServiceException("保存备份参数列表失败!"); | 
				
			||||||
 | 
					            }); | 
				
			||||||
 | 
					            return true; | 
				
			||||||
 | 
					        } | 
				
			||||||
 | 
					        return false; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,17 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.entity.ParamModelEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.mapper.ParamModelMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamModelService; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseServiceImpl; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					public class ParamModelServiceImpl extends BaseServiceImpl<ParamModelMapper, ParamModelEntity> implements IParamModelService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,166 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.emParam.service.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSON; | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSONArray; | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSONObject; | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
				
			||||||
 | 
					import com.google.common.collect.Lists; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.dto.ParamDistributeDTO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.service.IParamService; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamGroupVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamTreeVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.ParamVO; | 
				
			||||||
 | 
					import com.hnac.hzims.emParam.vo.RealDataVO; | 
				
			||||||
 | 
					import com.hnac.hzims.equipment.entity.EmInfoEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.equipment.service.IEmInfoService; | 
				
			||||||
 | 
					import com.hnac.hzinfo.datasearch.analyse.IAnalyseDataSearchClient; | 
				
			||||||
 | 
					import com.hnac.hzinfo.datasearch.analyse.domain.FieldsData; | 
				
			||||||
 | 
					import com.hnac.hzinfo.datasearch.real.po.RealDataSearchPO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.core.response.Result; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.control.ControlClient; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.control.dto.ControlBatchDTO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.control.dto.Ctrl; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.device.DeviceDataClient; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.device.client.DeviceClient; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.device.dto.DeviceDataDTO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceAttrVO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceFuncVO; | 
				
			||||||
 | 
					import com.hnac.hzinfo.sdk.v5.redis.RedisClient; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.log.exception.ServiceException; | 
				
			||||||
 | 
					import org.springblade.core.log.logger.BladeLogger; | 
				
			||||||
 | 
					import org.springblade.core.secure.utils.AuthUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.api.R; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.BeanUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.CollectionUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.Func; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.StringUtil; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					import org.springframework.util.Assert; | 
				
			||||||
 | 
					import java.time.LocalDateTime; | 
				
			||||||
 | 
					import java.util.HashMap; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import java.util.Map; | 
				
			||||||
 | 
					import java.util.Optional; | 
				
			||||||
 | 
					import java.util.stream.Collectors; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					public class ParamServiceImpl implements IParamService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private final ControlClient controlClient; | 
				
			||||||
 | 
					    private final DeviceClient deviceClient; | 
				
			||||||
 | 
					    private final RedisClient redisClient; | 
				
			||||||
 | 
					    private final BladeLogger logger; | 
				
			||||||
 | 
					    private final IEmInfoService emInfoService; | 
				
			||||||
 | 
					    private final DeviceDataClient deviceDataClient; | 
				
			||||||
 | 
					    private final IAnalyseDataSearchClient analyseDataSearchClient; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 参数召回 | 
				
			||||||
 | 
					     * @param emCode 设备编号 | 
				
			||||||
 | 
					     * @param stationCode 站点编号 | 
				
			||||||
 | 
					     * @return 召回参数渲染对象 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public List<ParamTreeVO> recall(String emCode,String stationCode) { | 
				
			||||||
 | 
					        List<ParamTreeVO> result = Lists.newArrayList(); | 
				
			||||||
 | 
					        // 获取设备物模型中是参数的属性
 | 
				
			||||||
 | 
					        Result<List<DeviceInstanceAttrVO>> paramDeviceAttrR = deviceDataClient.getIsParamDeviceAttr(emCode); | 
				
			||||||
 | 
					        Assert.isTrue(paramDeviceAttrR.isSuccess() && CollectionUtil.isNotEmpty(paramDeviceAttrR.getData()),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("获取设备实例物模型属性失败!"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        // 获取实时数据
 | 
				
			||||||
 | 
					        List<String> signageList = paramDeviceAttrR.getData().stream().map(DeviceInstanceAttrVO::getSignage).filter(StringUtil::isNotBlank).collect(Collectors.toList()); | 
				
			||||||
 | 
					        Result<DeviceDataDTO> realDataR = deviceDataClient.getDeviceRealDataByCode(emCode, signageList); | 
				
			||||||
 | 
					        Assert.isTrue(realDataR.isSuccess(),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("参数召回获取实时数据失败"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        Map<ParamGroupVO, List<ParamVO>> paramGroupVOListMap = paramDeviceAttrR.getData().stream().map(this::convert).collect(Collectors.groupingBy(p -> { | 
				
			||||||
 | 
					            ParamGroupVO paramGroupVO = new ParamGroupVO(); | 
				
			||||||
 | 
					            paramGroupVO.setGroupId(String.valueOf(p.getModelClassifyId())); | 
				
			||||||
 | 
					            paramGroupVO.setGroupName(p.getModelClassifyName()); | 
				
			||||||
 | 
					            return paramGroupVO; | 
				
			||||||
 | 
					        })); | 
				
			||||||
 | 
					        paramGroupVOListMap.forEach((groupVO,list) -> { | 
				
			||||||
 | 
					            ParamTreeVO paramTreeVO = new ParamTreeVO(); | 
				
			||||||
 | 
					            paramTreeVO.setParamGroup(groupVO); | 
				
			||||||
 | 
					            list.stream().filter(p -> realDataR.getData().getDataMap().containsKey(p.getSignage())).forEach(p -> { | 
				
			||||||
 | 
					                String realData = JSON.toJSONString(realDataR.getData().getDataMap().get(p.getSignage())); | 
				
			||||||
 | 
					                if("0".equals(JSONObject.parseObject(realData).getString("q"))) { | 
				
			||||||
 | 
					                    p.setValue(JSONObject.parseObject(realData).getString("v")); | 
				
			||||||
 | 
					                } | 
				
			||||||
 | 
					            }); | 
				
			||||||
 | 
					            paramTreeVO.setParamList(list); | 
				
			||||||
 | 
					            result.add(paramTreeVO); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        return result; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 参数下发 | 
				
			||||||
 | 
					     * @param req 下发参数 | 
				
			||||||
 | 
					     * @return 下发结果 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public Result<Object> distribute(ParamDistributeDTO req) { | 
				
			||||||
 | 
					        Assert.isTrue(Func.isNotEmpty(AuthUtil.getUserId()),() -> { | 
				
			||||||
 | 
					            throw new ServiceException("未获取到当前登录人,无法下发参数!"); | 
				
			||||||
 | 
					        }); | 
				
			||||||
 | 
					        ControlBatchDTO controlBatchDTO = new ControlBatchDTO(); | 
				
			||||||
 | 
					        controlBatchDTO.setProjectId(req.getStationCode()); | 
				
			||||||
 | 
					        controlBatchDTO.setDeviceCode(req.getEmCode()); | 
				
			||||||
 | 
					        controlBatchDTO.setDelay(req.getDelay()); | 
				
			||||||
 | 
					        controlBatchDTO.setOperator(String.valueOf(AuthUtil.getUserId())); | 
				
			||||||
 | 
					        controlBatchDTO.setMachineCode(req.getMachineCode()); | 
				
			||||||
 | 
					        List<Ctrl> ctrl = req.getParamList().stream().map(this::convert).collect(Collectors.toList()); | 
				
			||||||
 | 
					        controlBatchDTO.setCtrls(ctrl); | 
				
			||||||
 | 
					        log.info("{}",JSON.toJSONString(controlBatchDTO)); | 
				
			||||||
 | 
					        Result<Object> result = controlClient.batchSendToDevice(controlBatchDTO); | 
				
			||||||
 | 
					        if(!result.isSuccess()) { | 
				
			||||||
 | 
					            logger.error("equipment:ParamServiceImpl:distribute","下发参数传参为:"+JSON.toJSONString(controlBatchDTO)+";下发结果为:"+JSON.toJSONString(result)); | 
				
			||||||
 | 
					            return result; | 
				
			||||||
 | 
					        } | 
				
			||||||
 | 
					        LambdaUpdateWrapper<EmInfoEntity> updateWrapper = Wrappers.<EmInfoEntity>lambdaUpdate().set(EmInfoEntity::getLastDistributeTime, LocalDateTime.now()).eq(EmInfoEntity::getNumber, req.getEmCode()); | 
				
			||||||
 | 
					        emInfoService.update(updateWrapper); | 
				
			||||||
 | 
					        return result; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 参数转换为下发参数传参格式 | 
				
			||||||
 | 
					     * @param param 参数 | 
				
			||||||
 | 
					     * @return 下发参数传参格式 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Ctrl convert(ParamDTO param) { | 
				
			||||||
 | 
					        Ctrl result = new Ctrl(); | 
				
			||||||
 | 
					        result.setSignage(param.getSignage()); | 
				
			||||||
 | 
					        Map params = new HashMap(1){{ | 
				
			||||||
 | 
					            put(param.getSignage(),param.getValue()); | 
				
			||||||
 | 
					        }}; | 
				
			||||||
 | 
					        result.setParams(params); | 
				
			||||||
 | 
					        return result; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private ParamVO convert(DeviceInstanceAttrVO instanceAttrVO) { | 
				
			||||||
 | 
					        ParamVO paramVO = BeanUtil.copy(instanceAttrVO, ParamVO.class); | 
				
			||||||
 | 
					        paramVO.setMaxValue(String.valueOf(instanceAttrVO.getUpperLimit())); | 
				
			||||||
 | 
					        paramVO.setMinValue(String.valueOf(instanceAttrVO.getLowerLimit())); | 
				
			||||||
 | 
					        return paramVO; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 设备实例功能对象转换为参数VO对象 | 
				
			||||||
 | 
					     * @param funcVO 设备实例功能对象 | 
				
			||||||
 | 
					     * @return 参数VO对象 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private ParamVO convert(DeviceInstanceFuncVO funcVO) { | 
				
			||||||
 | 
					        ParamVO paramVO = BeanUtil.copy(funcVO, ParamVO.class); | 
				
			||||||
 | 
					        return paramVO; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -1 +1,47 @@ | 
				
			|||||||
alter table hzims_em_param add COLUMN NAME VARCHAR(100) comment '参数名称'; | 
					alter table hzims_em_param add COLUMN NAME VARCHAR(100) comment '参数名称'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- HZ100C参数下发 设备表添加参数最后下发时间字段 | 
				
			||||||
 | 
					alter table `hzims_em_info` add column `LAST_DISTRIBUTE_TIME` DATETIME DEFAULT NULL COMMENT '最后下发时间'; | 
				
			||||||
 | 
					-- HZ100C参数下发 设备表添加字段机组类别 | 
				
			||||||
 | 
					alter table `hzims_em_info` add column `SET_CATEGORY` VARCHAR(2) DEFAULT NULL COMMENT '机组类别'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CREATE TABLE `hzims_param_backups` ( | 
				
			||||||
 | 
					   `ID` bigint(20) NOT NULL, | 
				
			||||||
 | 
					   `NAME` varchar(255) DEFAULT NULL, | 
				
			||||||
 | 
					   `STATION_CODE` varchar(64) DEFAULT NULL, | 
				
			||||||
 | 
					   `EM_CODE` varchar(64) DEFAULT NULL, | 
				
			||||||
 | 
					   `DELAY` tinyint(1) DEFAULT NULL, | 
				
			||||||
 | 
					   `MACHINE_CODE` varchar(255) DEFAULT NULL, | 
				
			||||||
 | 
					   `TENANT_ID` varchar(12) DEFAULT NULL COMMENT '租户ID', | 
				
			||||||
 | 
					   `CREATE_TIME` datetime NOT NULL COMMENT '创建时间', | 
				
			||||||
 | 
					   `UPDATE_TIME` datetime DEFAULT NULL COMMENT '更新时间', | 
				
			||||||
 | 
					   `CREATE_USER` bigint(20) NOT NULL COMMENT '创建人', | 
				
			||||||
 | 
					   `UPDATE_USER` bigint(20) DEFAULT NULL COMMENT '更新人', | 
				
			||||||
 | 
					   `IS_DELETED` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除', | 
				
			||||||
 | 
					   `STATUS` tinyint(4) DEFAULT NULL COMMENT '状态 ', | 
				
			||||||
 | 
					   `CREATE_DEPT` bigint(20) DEFAULT NULL COMMENT '创建部门', | 
				
			||||||
 | 
					   PRIMARY KEY (`ID`) USING BTREE | 
				
			||||||
 | 
					) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CREATE TABLE `hzims_param_backups_detail` ( | 
				
			||||||
 | 
					  `ID` bigint(20) NOT NULL, | 
				
			||||||
 | 
					  `BACKUPS_ID` bigint(20) DEFAULT NULL COMMENT '备份主表ID', | 
				
			||||||
 | 
					  `NAME` varchar(255) DEFAULT NULL COMMENT '参数名称', | 
				
			||||||
 | 
					  `SIGNAGE` varchar(128) DEFAULT NULL COMMENT '标识', | 
				
			||||||
 | 
					  `FAC_DEVICE_ID` varchar(64) DEFAULT NULL COMMENT '关联设备', | 
				
			||||||
 | 
					  `FAC_DEVICE_FUNC_ID` varchar(64) DEFAULT NULL COMMENT 'hz3000关联id', | 
				
			||||||
 | 
					  `PARAMETER_TAG` varchar(128) DEFAULT NULL COMMENT '参数标识', | 
				
			||||||
 | 
					  `PARAMETER_NAME` varchar(255) DEFAULT NULL COMMENT '参数名称', | 
				
			||||||
 | 
					  `VALUE` varchar(16) DEFAULT NULL COMMENT '值', | 
				
			||||||
 | 
					  `MAX_VALUE` varchar(16) DEFAULT NULL COMMENT '最大值', | 
				
			||||||
 | 
					  `MIN_VALUE` varchar(16) DEFAULT NULL COMMENT '最小值', | 
				
			||||||
 | 
					  `TENANT_ID` varchar(12) DEFAULT NULL COMMENT '租户ID', | 
				
			||||||
 | 
					  `CREATE_TIME` datetime NOT NULL COMMENT '创建时间', | 
				
			||||||
 | 
					  `UPDATE_TIME` datetime DEFAULT NULL COMMENT '更新时间', | 
				
			||||||
 | 
					  `CREATE_USER` bigint(20) NOT NULL COMMENT '创建人', | 
				
			||||||
 | 
					  `UPDATE_USER` bigint(20) DEFAULT NULL COMMENT '更新人', | 
				
			||||||
 | 
					  `IS_DELETED` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除', | 
				
			||||||
 | 
					  `STATUS` tinyint(4) DEFAULT NULL COMMENT '状态 ', | 
				
			||||||
 | 
					  `CREATE_DEPT` bigint(20) DEFAULT NULL COMMENT '创建部门', | 
				
			||||||
 | 
					  PRIMARY KEY (`ID`) | 
				
			||||||
 | 
					) ENGINE=InnoDB DEFAULT CHARSET=utf8; | 
				
			||||||
@ -0,0 +1,14 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.mapper.operation; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.StorageEntity; | 
				
			||||||
 | 
					import org.springblade.core.datascope.mapper.UserDataScopeBaseMapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 * @date 2023/03/09 16:12:22 | 
				
			||||||
 | 
					 * @version 4.0.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface StorageMapper extends UserDataScopeBaseMapper<StorageEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,11 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.mapper.operation; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.WindEntity; | 
				
			||||||
 | 
					import org.springblade.core.datascope.mapper.UserDataScopeBaseMapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface WindMapper extends UserDataScopeBaseMapper<WindEntity> { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,20 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.service.operation.fill; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.StorageEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.main.vo.PowerMonthVo; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 * @date 2023/03/09 16:12:22 | 
				
			||||||
 | 
					 * @version 4.0.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 接入电站历史发电量填报 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface StorageService extends BaseService<StorageEntity> { | 
				
			||||||
 | 
						List<PowerMonthVo> generateThreeYear(String start, String end, Long station); | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.service.operation.fill; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.WindEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.main.vo.PowerMonthVo; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface WindService extends BaseService<WindEntity> { | 
				
			||||||
 | 
					    List<PowerMonthVo> generateThreeYear(String start, String end, Long station); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,51 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.service.operation.fill.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.StorageEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.main.vo.PowerMonthVo; | 
				
			||||||
 | 
					import com.hnac.hzims.scheduled.mapper.operation.StorageMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.scheduled.service.operation.fill.StorageService; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseServiceImpl; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.CollectionUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.DateUtil; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.ArrayList; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import java.util.stream.Collectors; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 * @date 2023/03/09 16:12:22 | 
				
			||||||
 | 
					 * @version 4.0.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					public class StorageServiceImpl extends BaseServiceImpl<StorageMapper, StorageEntity> implements StorageService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public List<PowerMonthVo> generateThreeYear(String start, String end, Long station) { | 
				
			||||||
 | 
							List<StorageEntity> fills = this.list(Wrappers.<StorageEntity>lambdaQuery() | 
				
			||||||
 | 
									.between(StorageEntity::getFillDate,start,end) | 
				
			||||||
 | 
									.eq(StorageEntity::getCreateDept,station) | 
				
			||||||
 | 
							); | 
				
			||||||
 | 
							if(CollectionUtil.isEmpty(fills)){ | 
				
			||||||
 | 
								return new ArrayList<>(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							return fills.stream().map(fill->{ | 
				
			||||||
 | 
								PowerMonthVo mon = new PowerMonthVo(); | 
				
			||||||
 | 
								mon.setStrMonth(DateUtil.format(fill.getFillDate(),DateUtil.PATTERN_DATE)); | 
				
			||||||
 | 
								if(Math.abs(fill.getPower().intValue()) <= 0){ | 
				
			||||||
 | 
									mon.setPower(0f); | 
				
			||||||
 | 
								}else{ | 
				
			||||||
 | 
									mon.setPower(Float.parseFloat(fill.getPower().toString())); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								return mon; | 
				
			||||||
 | 
							}).collect(Collectors.toList()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,52 @@ | 
				
			|||||||
 | 
					package com.hnac.hzims.scheduled.service.operation.fill.impl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.fill.entity.WindEntity; | 
				
			||||||
 | 
					import com.hnac.hzims.operational.main.vo.PowerMonthVo; | 
				
			||||||
 | 
					import com.hnac.hzims.scheduled.mapper.operation.WindMapper; | 
				
			||||||
 | 
					import com.hnac.hzims.scheduled.service.operation.fill.WindService; | 
				
			||||||
 | 
					import lombok.AllArgsConstructor; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springblade.core.mp.base.BaseServiceImpl; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.CollectionUtil; | 
				
			||||||
 | 
					import org.springblade.core.tool.utils.DateUtil; | 
				
			||||||
 | 
					import org.springframework.stereotype.Service; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.ArrayList; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import java.util.stream.Collectors; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author ysj | 
				
			||||||
 | 
					 * @date 2023/04/10 11:16:07 | 
				
			||||||
 | 
					 * @version 4.0.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@Service | 
				
			||||||
 | 
					@AllArgsConstructor | 
				
			||||||
 | 
					public class WindServiceImpl extends BaseServiceImpl<WindMapper, WindEntity> implements WindService { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    public List<PowerMonthVo> generateThreeYear(String start, String end, Long station) { | 
				
			||||||
 | 
					        List<WindEntity> fills = this.list(Wrappers.<WindEntity>lambdaQuery() | 
				
			||||||
 | 
					                .between(WindEntity::getFillDate,start,end) | 
				
			||||||
 | 
					                .eq(WindEntity::getCreateDept,station) | 
				
			||||||
 | 
					        ); | 
				
			||||||
 | 
					        if(CollectionUtil.isEmpty(fills)){ | 
				
			||||||
 | 
					            return new ArrayList<>(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        } | 
				
			||||||
 | 
					        return fills.stream().map(fill->{ | 
				
			||||||
 | 
					            PowerMonthVo mon = new PowerMonthVo(); | 
				
			||||||
 | 
					            mon.setStrMonth(DateUtil.format(DateUtil.parse(fill.getFillDate(),DateUtil.PATTERN_DATE),DateUtil.PATTERN_DATE)); | 
				
			||||||
 | 
					            if(Math.abs(fill.getPower()) <= 0){ | 
				
			||||||
 | 
					                mon.setPower(0f); | 
				
			||||||
 | 
					            }else{ | 
				
			||||||
 | 
					                mon.setPower(Float.parseFloat(fill.getPower().toString())); | 
				
			||||||
 | 
					            } | 
				
			||||||
 | 
					            return mon; | 
				
			||||||
 | 
					        }).collect(Collectors.toList()); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,4 @@ | 
				
			|||||||
 | 
					<?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.hnac.hzims.scheduled.mapper.operation.StorageMapper"> | 
				
			||||||
 | 
					</mapper> | 
				
			||||||
@ -0,0 +1,5 @@ | 
				
			|||||||
 | 
					<?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.hnac.hzims.scheduled.mapper.operation.WindMapper"> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</mapper> | 
				
			||||||
@ -0,0 +1,85 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> | 
				
			||||||
 | 
					  <process id="defectCheck" name="消缺处理流程" isExecutable="true"> | 
				
			||||||
 | 
					    <startEvent id="startEvent1"></startEvent> | 
				
			||||||
 | 
					    <userTask id="sid-F8BDAAE3-B2FE-496F-B159-2B07E6F2D107" name="甄别问题" flowable:candidateGroups="1402433611392647169"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:taskListener event="create" class="org.springblade.flow.engine.listener.DynamicTaskUserListener"></flowable:taskListener> | 
				
			||||||
 | 
					        <modeler:group-info-name-1402433611392647169 xmlns:modeler="http://flowable.org/modeler"><![CDATA[检修组长(甄别)]]></modeler:group-info-name-1402433611392647169> | 
				
			||||||
 | 
					        <modeler:activiti-idm-candidate-group xmlns:modeler="http://flowable.org/modeler"><![CDATA[true]]></modeler:activiti-idm-candidate-group> | 
				
			||||||
 | 
					        <modeler:initiator-can-complete xmlns:modeler="http://flowable.org/modeler"><![CDATA[false]]></modeler:initiator-can-complete> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <exclusiveGateway id="sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A"></exclusiveGateway> | 
				
			||||||
 | 
					    <userTask id="sid-62B7E521-0A01-4D0E-85F6-7A237DC01E12" name="缺陷处理" flowable:candidateUsers="${flowHandler}"></userTask> | 
				
			||||||
 | 
					    <endEvent id="sid-7A78DE5C-0379-471E-A096-6E5466E42AA1"></endEvent> | 
				
			||||||
 | 
					    <userTask id="sid-450C8BF7-FDD6-43D0-AEBD-EAFAFF8480C3" name="缺陷定论" flowable:candidateGroups="1380691110248099841"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:taskListener event="create" class="org.springblade.flow.engine.listener.DynamicTaskUserListener"></flowable:taskListener> | 
				
			||||||
 | 
					        <modeler:group-info-name-1380691110248099841 xmlns:modeler="http://flowable.org/modeler"><![CDATA[项目经理]]></modeler:group-info-name-1380691110248099841> | 
				
			||||||
 | 
					        <modeler:activiti-idm-candidate-group xmlns:modeler="http://flowable.org/modeler"><![CDATA[true]]></modeler:activiti-idm-candidate-group> | 
				
			||||||
 | 
					        <modeler:initiator-can-complete xmlns:modeler="http://flowable.org/modeler"><![CDATA[false]]></modeler:initiator-can-complete> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-798A609C-7834-4D8D-88BC-AA6A03433AE3" sourceRef="sid-62B7E521-0A01-4D0E-85F6-7A237DC01E12" targetRef="sid-450C8BF7-FDD6-43D0-AEBD-EAFAFF8480C3"></sequenceFlow> | 
				
			||||||
 | 
					    <endEvent id="sid-7833F4F9-CCB9-4FA3-A1FD-EBB3DECD8A3A"></endEvent> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-C7E275D3-2E92-4201-9B14-2F7FFA9E7BEA" sourceRef="sid-450C8BF7-FDD6-43D0-AEBD-EAFAFF8480C3" targetRef="sid-7833F4F9-CCB9-4FA3-A1FD-EBB3DECD8A3A"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-9FAF85B3-288B-42EB-9119-8A2469CC3073" sourceRef="startEvent1" targetRef="sid-F8BDAAE3-B2FE-496F-B159-2B07E6F2D107"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-E27C35CD-5D61-43D8-A05C-5CFBC3E98332" sourceRef="sid-F8BDAAE3-B2FE-496F-B159-2B07E6F2D107" targetRef="sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-32973C9C-76A1-447C-9D14-62A1EC3D15B7" name="是缺陷" sourceRef="sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A" targetRef="sid-62B7E521-0A01-4D0E-85F6-7A237DC01E12"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${isDefect==1}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-AC6E6DDC-820F-4110-8450-5067B6E1CD18" name="非缺陷" sourceRef="sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A" targetRef="sid-7A78DE5C-0379-471E-A096-6E5466E42AA1"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${isDefect==0}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					  </process> | 
				
			||||||
 | 
					  <bpmndi:BPMNDiagram id="BPMNDiagram_defectCheck"> | 
				
			||||||
 | 
					    <bpmndi:BPMNPlane bpmnElement="defectCheck" id="BPMNPlane_defectCheck"> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="startEvent1" id="BPMNShape_startEvent1"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="30.0" width="30.0" x="74.99999776482586" y="150.0000196216333"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-F8BDAAE3-B2FE-496F-B159-2B07E6F2D107" id="BPMNShape_sid-F8BDAAE3-B2FE-496F-B159-2B07E6F2D107"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="80.00000000000003" width="100.0" x="179.99999195337318" y="125.00000183725928"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A" id="BPMNShape_sid-5E44F7E3-8279-4DDA-9E3E-77A4AF6DF35A"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="40.0" width="40.0" x="360.00000903871654" y="145.00000369990445"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-62B7E521-0A01-4D0E-85F6-7A237DC01E12" id="BPMNShape_sid-62B7E521-0A01-4D0E-85F6-7A237DC01E12"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="80.0" width="100.0" x="450.0" y="125.00000183725928"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-7A78DE5C-0379-471E-A096-6E5466E42AA1" id="BPMNShape_sid-7A78DE5C-0379-471E-A096-6E5466E42AA1"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="27.999999999999993" width="28.0" x="366.0000166681108" y="60.00000275505963"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-450C8BF7-FDD6-43D0-AEBD-EAFAFF8480C3" id="BPMNShape_sid-450C8BF7-FDD6-43D0-AEBD-EAFAFF8480C3"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="80.0" width="100.0" x="645.0000148084454" y="125.000018390024"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-7833F4F9-CCB9-4FA3-A1FD-EBB3DECD8A3A" id="BPMNShape_sid-7833F4F9-CCB9-4FA3-A1FD-EBB3DECD8A3A"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="28.0" width="28.0" x="825.0000189410348" y="151.00002185680776"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-AC6E6DDC-820F-4110-8450-5067B6E1CD18" id="BPMNEdge_sid-AC6E6DDC-820F-4110-8450-5067B6E1CD18"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="380.00001071131436" y="145.00000537669428"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="380.00001541940827" y="87.9499398138724"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-32973C9C-76A1-447C-9D14-62A1EC3D15B7" id="BPMNEdge_sid-32973C9C-76A1-447C-9D14-62A1EC3D15B7"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="399.94170376868516" y="165.00000338946361"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="449.9999984255562" y="165.00000261258538"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-E27C35CD-5D61-43D8-A05C-5CFBC3E98332" id="BPMNEdge_sid-E27C35CD-5D61-43D8-A05C-5CFBC3E98332"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="279.94999195332866" y="165.00000245752005"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="360.00000903871654" y="165.0000034515518"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-C7E275D3-2E92-4201-9B14-2F7FFA9E7BEA" id="BPMNEdge_sid-C7E275D3-2E92-4201-9B14-2F7FFA9E7BEA"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="744.950014360429" y="165.00001959256457"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="825.0000186376348" y="165.00002151975934"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-798A609C-7834-4D8D-88BC-AA6A03433AE3" id="BPMNEdge_sid-798A609C-7834-4D8D-88BC-AA6A03433AE3"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="549.9499998297176" y="165.0000060773133"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="645.000014808418" y="165.0000141457257"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-9FAF85B3-288B-42EB-9119-8A2469CC3073" id="BPMNEdge_sid-9FAF85B3-288B-42EB-9119-8A2469CC3073"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="104.9499968330837" y="165.00001771616456"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="179.99999180749393" y="165.00000818247014"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					    </bpmndi:BPMNPlane> | 
				
			||||||
 | 
					  </bpmndi:BPMNDiagram> | 
				
			||||||
 | 
					</definitions> | 
				
			||||||
@ -0,0 +1,118 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> | 
				
			||||||
 | 
					  <process id="hiddenDangerCheck" name="隐患排查治理流程" isExecutable="true"> | 
				
			||||||
 | 
					    <startEvent id="startEvent1" name="隐患上报"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:formProperty id="new_property_1" type="string" default="start"></flowable:formProperty> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </startEvent> | 
				
			||||||
 | 
					    <userTask id="sid-1CA1FF60-2EAF-45B3-808A-520B8CABCC35" name="隐患判定" flowable:candidateUsers="${judgeFlow}"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:formProperty id="new_property_1" type="string" default="1"></flowable:formProperty> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <userTask id="sid-BBF1AC02-F5EA-4A29-8924-20F6CBFF7563" name="隐患核查" flowable:candidateUsers="${checkPeopleFlow}"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:formProperty id="new_property_1" type="string" default="2"></flowable:formProperty> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <userTask id="sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2" name="隐患整改" flowable:candidateUsers="${rectifierFlow}"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:formProperty id="new_property_1" type="string" default="3"></flowable:formProperty> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <exclusiveGateway id="sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1"></exclusiveGateway> | 
				
			||||||
 | 
					    <userTask id="sid-76242BA7-1758-42C2-94C3-0843718D4A48" name="隐患验收" flowable:candidateUsers="${conclusionPeopleFlow}"> | 
				
			||||||
 | 
					      <extensionElements> | 
				
			||||||
 | 
					        <flowable:formProperty id="new_property_1" type="string" default="4"></flowable:formProperty> | 
				
			||||||
 | 
					      </extensionElements> | 
				
			||||||
 | 
					    </userTask> | 
				
			||||||
 | 
					    <endEvent id="sid-3687F74B-82AE-4680-AE4F-02FBBF349DB0"></endEvent> | 
				
			||||||
 | 
					    <exclusiveGateway id="sid-17C75D03-E494-4A91-87FB-D3F89E399019"></exclusiveGateway> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-D338E1F1-49BC-4C1E-9692-4DE85B5672D9" sourceRef="sid-1CA1FF60-2EAF-45B3-808A-520B8CABCC35" targetRef="sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-3FD90637-D17D-496E-901B-F8C4504900A0" sourceRef="sid-BBF1AC02-F5EA-4A29-8924-20F6CBFF7563" targetRef="sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-09D94D7E-EDA3-4CBA-BB6C-DE18C1A166FB" sourceRef="sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2" targetRef="sid-76242BA7-1758-42C2-94C3-0843718D4A48"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-214DD9DA-EEFB-406A-94FC-30295DCECABA" sourceRef="sid-76242BA7-1758-42C2-94C3-0843718D4A48" targetRef="sid-17C75D03-E494-4A91-87FB-D3F89E399019"></sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-7DF139A0-50B9-488D-BB45-07F0500D3C8E" name="是隐患" sourceRef="sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1" targetRef="sid-BBF1AC02-F5EA-4A29-8924-20F6CBFF7563"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${judgeRes==1}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-9DAD4E3F-EEDF-47CA-A0AC-3438BF769C4B" name="非是隐患" sourceRef="sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1" targetRef="sid-3687F74B-82AE-4680-AE4F-02FBBF349DB0"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${judgeRes==0}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-E1F8433C-F368-436A-8FBD-3F5C801ED721" name="验收不通过" sourceRef="sid-17C75D03-E494-4A91-87FB-D3F89E399019" targetRef="sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${conclusionRes==0}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-5A5C84CA-4E2E-4890-9793-ED0861254301" name="验收通过" sourceRef="sid-17C75D03-E494-4A91-87FB-D3F89E399019" targetRef="sid-3687F74B-82AE-4680-AE4F-02FBBF349DB0"> | 
				
			||||||
 | 
					      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${conclusionRes==1}]]></conditionExpression> | 
				
			||||||
 | 
					    </sequenceFlow> | 
				
			||||||
 | 
					    <sequenceFlow id="sid-27BC2662-8441-40E2-89D2-E7EFAAF850A9" sourceRef="startEvent1" targetRef="sid-1CA1FF60-2EAF-45B3-808A-520B8CABCC35"></sequenceFlow> | 
				
			||||||
 | 
					  </process> | 
				
			||||||
 | 
					  <bpmndi:BPMNDiagram id="BPMNDiagram_hiddenDangerCheck"> | 
				
			||||||
 | 
					    <bpmndi:BPMNPlane bpmnElement="hiddenDangerCheck" id="BPMNPlane_hiddenDangerCheck"> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="startEvent1" id="BPMNShape_startEvent1"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="30.0" width="30.0" x="134.9999959766866" y="374.9999665319939"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-1CA1FF60-2EAF-45B3-808A-520B8CABCC35" id="BPMNShape_sid-1CA1FF60-2EAF-45B3-808A-520B8CABCC35"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="48.00000047683716" width="71.00000043213367" x="254.9999810010204" y="365.9999553859266"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-BBF1AC02-F5EA-4A29-8924-20F6CBFF7563" id="BPMNShape_sid-BBF1AC02-F5EA-4A29-8924-20F6CBFF7563"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="46.00000049173832" width="74.00000038743025" x="479.9999713897718" y="367.99995559454277"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2" id="BPMNShape_sid-6B0EC9BD-6783-4226-9191-B2A31C7E91D2"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="49.000000476837215" width="73.00000040233147" x="644.9999519437577" y="366.4999665543455"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1" id="BPMNShape_sid-404D825E-656A-47F7-ADEF-F8EC1F5C3EB1"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="40.0" width="40.0" x="389.999982565642" y="369.99997770786376"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-76242BA7-1758-42C2-94C3-0843718D4A48" id="BPMNShape_sid-76242BA7-1758-42C2-94C3-0843718D4A48"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="51.000000432133675" width="67.00000050663948" x="779.999965131284" y="365.4999665915984"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-3687F74B-82AE-4680-AE4F-02FBBF349DB0" id="BPMNShape_sid-3687F74B-82AE-4680-AE4F-02FBBF349DB0"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="28.0" width="28.0" x="1064.9998889118506" y="376.999955572191"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNShape bpmnElement="sid-17C75D03-E494-4A91-87FB-D3F89E399019" id="BPMNShape_sid-17C75D03-E494-4A91-87FB-D3F89E399019"> | 
				
			||||||
 | 
					        <omgdc:Bounds height="40.0" width="40.0" x="914.999959096314" y="370.99995575100496"></omgdc:Bounds> | 
				
			||||||
 | 
					      </bpmndi:BPMNShape> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-27BC2662-8441-40E2-89D2-E7EFAAF850A9" id="BPMNEdge_sid-27BC2662-8441-40E2-89D2-E7EFAAF850A9"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="164.94999505130716" y="389.9999653674761"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="254.99998094146997" y="389.9999583764889"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-09D94D7E-EDA3-4CBA-BB6C-DE18C1A166FB" id="BPMNEdge_sid-09D94D7E-EDA3-4CBA-BB6C-DE18C1A166FB"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="717.9497086084729" y="390.9999667968788"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="779.9994432256531" y="390.99996680388347"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-9DAD4E3F-EEDF-47CA-A0AC-3438BF769C4B" id="BPMNEdge_sid-9DAD4E3F-EEDF-47CA-A0AC-3438BF769C4B"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="410.499982565642" y="409.4365570322147"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="410.499982565642" y="461.0"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="1078.9998889118503" y="461.0"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="1078.9998889118503" y="404.94989926185485"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-E1F8433C-F368-436A-8FBD-3F5C801ED721" id="BPMNEdge_sid-E1F8433C-F368-436A-8FBD-3F5C801ED721"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="935.499959096314" y="371.499955751005"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="935.499959096314" y="325.0"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="680.5" y="325.0"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="680.5" y="366.4999665543455"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-5A5C84CA-4E2E-4890-9793-ED0861254301" id="BPMNEdge_sid-5A5C84CA-4E2E-4890-9793-ED0861254301"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="954.509550344249" y="391.4335221281242"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="1064.9999718500032" y="391.04856165832416"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-3FD90637-D17D-496E-901B-F8C4504900A0" id="BPMNEdge_sid-3FD90637-D17D-496E-901B-F8C4504900A0"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="553.9499717770799" y="390.9999601076708"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="644.9999519437577" y="390.9999667201396"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-D338E1F1-49BC-4C1E-9692-4DE85B5672D9" id="BPMNEdge_sid-D338E1F1-49BC-4C1E-9692-4DE85B5672D9"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="325.9499814331541" y="390.49995644172753"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="390.49997753521234" y="390.49997267743413"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-7DF139A0-50B9-488D-BB45-07F0500D3C8E" id="BPMNEdge_sid-7DF139A0-50B9-488D-BB45-07F0500D3C8E"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="428.5259741729652" y="391.41772516429126"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="479.9999707887046" y="391.41771813407576"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					      <bpmndi:BPMNEdge bpmnElement="sid-214DD9DA-EEFB-406A-94FC-30295DCECABA" id="BPMNEdge_sid-214DD9DA-EEFB-406A-94FC-30295DCECABA"> | 
				
			||||||
 | 
					        <omgdi:waypoint x="846.9499656379227" y="391.13705394818504"></omgdi:waypoint> | 
				
			||||||
 | 
					        <omgdi:waypoint x="915.4176563928215" y="391.4176530475125"></omgdi:waypoint> | 
				
			||||||
 | 
					      </bpmndi:BPMNEdge> | 
				
			||||||
 | 
					    </bpmndi:BPMNPlane> | 
				
			||||||
 | 
					  </bpmndi:BPMNDiagram> | 
				
			||||||
 | 
					</definitions> | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue