Commit 84a17a41 authored by tangwei's avatar tangwei

修改数据源

parent 62086ac4
......@@ -19,5 +19,10 @@
<artifactId>amos-boot-module-common-api</artifactId>
<version>${amos-biz-boot.version}</version>
</dependency>
<dependency>
<groupId>com.taosdata.jdbc</groupId>
<artifactId>taos-jdbcdriver</artifactId>
<version>2.0.30</version>
</dependency>
</dependencies>
</project>
package com.yeejoin.amos.boot.module.hygf.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 户用光伏监盘采集器表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JpCollectorDto", description="户用光伏监盘采集器表")
public class JpCollectorDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "sn编码")
private String snCode;
@ApiModelProperty(value = "状态")
private Integer status;
@ApiModelProperty(value = "类型")
private String type;
@ApiModelProperty(value = "sim卡号")
private String simCode;
@ApiModelProperty(value = "数据来源")
private String dataSource;
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ApiModelProperty(value = "采集器版本")
private String version;
@ApiModelProperty(value = "出场日期")
private Date dischargeDate;
@ApiModelProperty(value = "生产日期")
private Date productDate;
@ApiModelProperty(value = "数据上传间隔")
private Double dataPeriod;
@ApiModelProperty(value = "本次上电工作时间")
private Date thisWorkTime;
@ApiModelProperty(value = "累计工作时间")
private Date totalWorkTime;
@ApiModelProperty(value = "第三方电站id")
private String thirdStationId;
@ApiModelProperty(value = "第三方厂商标识")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 户用光伏监盘逆变器表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JpInverterDto", description="户用光伏监盘逆变器表")
public class JpInverterDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "sn编码")
private String snCode;
@ApiModelProperty(value = "状态")
private Integer status;
@ApiModelProperty(value = "额定功率")
private Double ratedPower;
@ApiModelProperty(value = "采集器id")
private Long collectorId;
@ApiModelProperty(value = "采集器sn编码")
private String collectorSnCode;
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ApiModelProperty(value = "实时功率")
private Double currentPower;
@ApiModelProperty(value = "日发电量")
private Double dayPowerGeneration;
@ApiModelProperty(value = "月发电量")
private Double monthPowerGeneration;
@ApiModelProperty(value = "年发电量")
private Double yearPowerGeneration;
@ApiModelProperty(value = "品牌")
private String brand;
@ApiModelProperty(value = "型号")
private String model;
@ApiModelProperty(value = "国标")
private String nationalStandard;
@ApiModelProperty(value = "版本号")
private String version;
@ApiModelProperty(value = "满发小时数")
private String generationHours;
@ApiModelProperty(value = "质保期")
private String warrantyPeriod;
@ApiModelProperty(value = "IGBT温度")
@TableField("igbt_temperature")
private String igbtTemperature;
@ApiModelProperty(value = "AFCI方案")
@TableField("afci_programme")
private String afciProgramme;
@ApiModelProperty(value = "AFCI版本")
@TableField("afci_version")
private String afciVersion;
@ApiModelProperty(value = "ID")
@TableField("id")
private Long id;
@ApiModelProperty(value = "第三方电站id")
private String thirdStationId;
@ApiModelProperty(value = "装机容量")
private Integer capacity;
@ApiModelProperty(value = "累计发电量")
private Double totalPowerGeneration;
@ApiModelProperty(value = "日用电量")
private Double dayPowerUse;
@ApiModelProperty(value = "月用电量")
private Double monthPowerUse;
@ApiModelProperty(value = "年用电量")
private Double yearPowerUse;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 户用光伏监盘逆变器电能表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JpInverterElectricityDto", description="户用光伏监盘逆变器电能表")
public class JpInverterElectricityDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "逆变器id")
private Long inverterId;
@ApiModelProperty(value = "sn编码")
private String snCode;
@ApiModelProperty(value = "电能名称")
private String name;
@ApiModelProperty(value = "电能类型(直流/交流)")
private String type;
@ApiModelProperty(value = "电压")
private Double voltage;
@ApiModelProperty(value = "电流")
private Double current;
@ApiModelProperty(value = "功率")
private Double power;
@ApiModelProperty(value = "频率")
private Double frequency;
@ApiModelProperty(value = "第三方电站id")
private String thirdStationId;
@ApiModelProperty(value = "第三方厂商标识")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 第三方场站
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JpStationDto", description="第三方场站")
public class JpStationDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "sn编码")
private String snCode;
@ApiModelProperty(value = "装机容量")
private Double capacity;
@ApiModelProperty(value = "电站名称")
private String name;
@ApiModelProperty(value = "电站编码")
private String code;
@ApiModelProperty(value = "组织编码")
private String systemCode;
@ApiModelProperty(value = "接入平台时间")
private Date accessTime;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "维度")
private String latitude;
@ApiModelProperty(value = "上网电价")
private Double price;
@ApiModelProperty(value = "业主姓名")
private String userName;
@ApiModelProperty(value = "业主电话")
private String userPhone;
@ApiModelProperty(value = "电站联系人")
private String stationContact;
@ApiModelProperty(value = "组件数量")
private Integer moduleCount;
@ApiModelProperty(value = "并网类型")
private String onGridType;
@ApiModelProperty(value = "并网时间")
private Date onGridTime;
@ApiModelProperty(value = "第三方电站id")
private String thirdStationId;
@ApiModelProperty(value = "电站id")
private Long stationId;
@ApiModelProperty(value = "第三方厂商标识")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 户用光伏监盘采集器表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_jp_collector")
public class JpCollector extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* sn编码
*/
@TableField("sn_code")
private String snCode;
/**
* 状态
*/
@TableField("status")
private Integer status;
/**
* 类型
*/
@TableField("type")
private String type;
/**
* sim卡号
*/
@TableField("sim_code")
private String simCode;
/**
* 数据来源
*/
@TableField("data_source")
private String dataSource;
/**
* 更新时间
*/
@TableField("update_time")
private Date updateTime;
/**
* 采集器版本
*/
@TableField("version")
private String version;
/**
* 出场日期
*/
@TableField("discharge_date")
private Date dischargeDate;
/**
* 生产日期
*/
@TableField("product_date")
private Date productDate;
/**
* 数据上传间隔
*/
@TableField("data_period")
private Double dataPeriod;
/**
* 本次上电工作时间
*/
@TableField("this_work_time")
private Date thisWorkTime;
/**
* 累计工作时间
*/
@TableField("total_work_time")
private Date totalWorkTime;
/**
* 第三方电站id
*/
@TableField("third_station_id")
private String thirdStationId;
/**
* 第三方厂商标识
*/
@TableField("third_code")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 户用光伏监盘逆变器表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_jp_inverter")
public class JpInverter extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* sn编码
*/
@TableField("sn_code")
private String snCode;
/**
* 状态
*/
@TableField("status")
private Integer status;
/**
* 额定功率
*/
@TableField("rated_power")
private Double ratedPower;
/**
* 采集器id
*/
@TableField("collector_id")
private Long collectorId;
/**
* 采集器sn编码
*/
@TableField("collector_sn_code")
private String collectorSnCode;
/**
* 更新时间
*/
@TableField("update_time")
private Date updateTime;
/**
* 实时功率
*/
@TableField("current_power")
private Double currentPower;
/**
* 日发电量
*/
@TableField("day_power_generation")
private Double dayPowerGeneration;
/**
* 月发电量
*/
@TableField("month_power_generation")
private Double monthPowerGeneration;
/**
* 年发电量
*/
@TableField("year_power_generation")
private Double yearPowerGeneration;
/**
* 品牌
*/
@TableField("brand")
private String brand;
/**
* 型号
*/
@TableField("model")
private String model;
/**
* 国标
*/
@TableField("national_standard")
private String nationalStandard;
/**
* 版本号
*/
@TableField("version")
private String version;
/**
* 满发小时数
*/
@TableField("generation_hours")
private String generationHours;
/**
* 质保期
*/
@TableField("warranty_period")
private String warrantyPeriod;
/**
* IGBT温度
*/
@TableField("IGBT_temperature")
private String igbtTemperature;
/**
* AFCI方案
*/
@TableField("AFCI_programme")
private String afciProgramme;
/**
* AFCI版本
*/
@TableField("AFCI_version")
private String afciVersion;
/**
* ID
*/
@TableField("ID")
private Long id;
/**
* 第三方电站id
*/
@TableField("third_station_id")
private String thirdStationId;
/**
* 装机容量
*/
@TableField("capacity")
private Integer capacity;
/**
* 累计发电量
*/
@TableField("total_power_generation")
private Double totalPowerGeneration;
/**
* 日用电量
*/
@TableField("day_power_use")
private Double dayPowerUse;
/**
* 月用电量
*/
@TableField("month_power_use")
private Double monthPowerUse;
/**
* 年用电量
*/
@TableField("year_power_use")
private Double yearPowerUse;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 户用光伏监盘逆变器电能表
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_jp_inverter_electricity")
public class JpInverterElectricity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 逆变器id
*/
@TableField("inverter_id")
private Long inverterId;
/**
* sn编码
*/
@TableField("sn_code")
private String snCode;
/**
* 电能名称
*/
@TableField("name")
private String name;
/**
* 电能类型(直流/交流)
*/
@TableField("type")
private String type;
/**
* 电压
*/
@TableField("voltage")
private Double voltage;
/**
* 电流
*/
@TableField("current")
private Double current;
/**
* 功率
*/
@TableField("power")
private Double power;
/**
* 频率
*/
@TableField("frequency")
private Double frequency;
/**
* 第三方电站id
*/
@TableField("third_station_id")
private String thirdStationId;
/**
* 第三方厂商标识
*/
@TableField("third_code")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 第三方场站
*
* @author system_generator
* @date 2023-09-19
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_jp_station")
public class JpStation extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* sn编码
*/
@TableField("sn_code")
private String snCode;
/**
* 装机容量
*/
@TableField("capacity")
private Double capacity;
/**
* 电站名称
*/
@TableField("name")
private String name;
/**
* 电站编码
*/
@TableField("code")
private String code;
/**
* 组织编码
*/
@TableField("system_code")
private String systemCode;
/**
* 接入平台时间
*/
@TableField("access_time")
private Date accessTime;
/**
* 创建时间
*/
@TableField("create_time")
private Date createTime;
/**
* 地址
*/
@TableField("address")
private String address;
/**
* 经度
*/
@TableField("longitude")
private String longitude;
/**
* 维度
*/
@TableField("latitude")
private String latitude;
/**
* 上网电价
*/
@TableField("price")
private Double price;
/**
* 业主姓名
*/
@TableField("user_name")
private String userName;
/**
* 业主电话
*/
@TableField("user_phone")
private String userPhone;
/**
* 电站联系人
*/
@TableField("station_contact")
private String stationContact;
/**
* 组件数量
*/
@TableField("module_count")
private Integer moduleCount;
/**
* 并网类型
*/
@TableField("on_grid_type")
private String onGridType;
/**
* 并网时间
*/
@TableField("on_grid_time")
private Date onGridTime;
/**
* 第三方电站id
*/
@TableField("third_station_id")
private String thirdStationId;
/**
* 电站id
*/
@TableField("station_id")
private Long stationId;
/**
* 第三方厂商标识
*/
@TableField("third_code")
private String thirdCode;
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpCollector;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 户用光伏监盘采集器表 Mapper 接口
*
* @author system_generator
* @date 2023-09-19
*/
public interface JpCollectorMapper extends BaseMapper<JpCollector> {
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpInverterElectricity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 户用光伏监盘逆变器电能表 Mapper 接口
*
* @author system_generator
* @date 2023-09-19
*/
public interface JpInverterElectricityMapper extends BaseMapper<JpInverterElectricity> {
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpInverter;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 户用光伏监盘逆变器表 Mapper 接口
*
* @author system_generator
* @date 2023-09-19
*/
public interface JpInverterMapper extends BaseMapper<JpInverter> {
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpStation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 第三方场站 Mapper 接口
*
* @author system_generator
* @date 2023-09-19
*/
public interface JpStationMapper extends BaseMapper<JpStation> {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 户用光伏监盘采集器表接口类
*
* @author system_generator
* @date 2023-09-19
*/
public interface IJpCollectorService {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 户用光伏监盘逆变器电能表接口类
*
* @author system_generator
* @date 2023-09-19
*/
public interface IJpInverterElectricityService {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 户用光伏监盘逆变器表接口类
*
* @author system_generator
* @date 2023-09-19
*/
public interface IJpInverterService {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 第三方场站接口类
*
* @author system_generator
* @date 2023-09-19
*/
public interface IJpStationService {
}
<?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.yeejoin.amos.boot.module.hygf.api.mapper.JpCollectorMapper">
</mapper>
<?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.yeejoin.amos.boot.module.hygf.api.mapper.JpInverterElectricityMapper">
</mapper>
<?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.yeejoin.amos.boot.module.hygf.api.mapper.JpInverterMapper">
</mapper>
<?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.yeejoin.amos.boot.module.hygf.api.mapper.JpStationMapper">
</mapper>
package com.yeejoin.amos;
import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure;
import com.yeejoin.amos.boot.biz.common.utils.oConvertUtils;
import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
......@@ -32,7 +37,6 @@ import java.net.InetAddress;
*
* @author DELL
*/
@SpringBootApplication
@EnableTransactionManagement
@EnableConfigurationProperties
@ServletComponentScan
......@@ -45,6 +49,7 @@ import java.net.InetAddress;
"org.typroject.tyboot.core.auth.face.orm.dao*", "org.typroject.tyboot.component.*.face.orm.dao*",
"com.yeejoin.amos.boot.module.**.api.mapper", "com.yeejoin.amos.boot.biz.common.dao.mapper","com.yeejoin.amos.boot.module.common.biz.*" })
@ComponentScan(basePackages = { "org.typroject", "com.yeejoin.amos" })
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class, MybatisAutoConfiguration.class})
public class AmosHygfApplication {
private static final Logger logger = LoggerFactory.getLogger(AmosHygfApplication.class);
......
package com.yeejoin.amos.boot.module.hygf.biz.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.github.pagehelper.PageInterceptor;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import javax.sql.DataSource;
import java.util.Collections;
import java.util.Properties;
/**
* mysql配置类
* @author zhengwen
*/
@Configuration
@MapperScan(basePackages = {"com.yeejoin.amos.boot.module.hygf.api.mapper"}, sqlSessionTemplateRef = "mysqlSqlSessionTemplate")
public class MysqlServerConfig {
private static final String MAPPER_LOCATION = "classpath*:mapper/mysql/*.xml";
@Bean(name = "mysqlDataSource")
@ConfigurationProperties(prefix = "spring.datasource.mysql-service")
@Primary
public DataSource mysqlDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "mysqlSqlSessionFactory")
@Primary
public SqlSessionFactory mysqlSqlSessionFactory(@Qualifier("mysqlDataSource") DataSource dataSource, GlobalConfig globalConfig) throws Exception {
//注意这里一定要用MybatisSqlSessionFactoryBean,如果用SqlSessionFactory,配置无效
MybatisSqlSessionFactoryBean bean = new MybatisSqlSessionFactoryBean();
bean.setDataSource(dataSource);
bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(MAPPER_LOCATION));
//分页插件
Interceptor interceptor = new PageInterceptor();
Properties properties = new Properties();
properties.setProperty("helperDialect", "mysql");
properties.setProperty("offsetAsPageNum", "true");
properties.setProperty("rowBoundsWithCount", "true");
properties.setProperty("reasonable", "true");
properties.setProperty("supportMethodsArguments","true");
properties.setProperty("params","pageNum=pageNum;pageSize=pageSize" +
"" +
";");
interceptor.setProperties(properties);
bean.setPlugins(new Interceptor[] {interceptor});
return bean.getObject();
}
@Bean(name = "mysqlTransactionManager")
@Primary
public DataSourceTransactionManager mysqlTransactionManager(@Qualifier("mysqlDataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "mysqlSqlSessionTemplate")
@Primary
public SqlSessionTemplate mysqlSqlSessionTemplate(@Qualifier("mysqlSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.config;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.github.pagehelper.PageInterceptor;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import javax.sql.DataSource;
import java.util.Properties;
/**
* @description:
* @author: tw
* @createDate: 2023/9/19
*/
@Configuration
@MapperScan(basePackages = "com.xiaotian.datatrans.mapper.tdenginemapper", sqlSessionTemplateRef = "tdengineSqlSessionTemplate")
public class TDengineServerConfig {
private static final String MAPPER_LOCATION = "classpath*:mapper/tdengine/*.xml";
@Bean(name = "tdengineDataSource")
@ConfigurationProperties(prefix = "spring.datasource.tdengine-service")
public DataSource tdengineDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "tdengineSqlSessionFactory")
public SqlSessionFactory tdengineSqlSessionFactory(@Qualifier("tdengineDataSource") DataSource dataSource) throws Exception {
MybatisSqlSessionFactoryBean bean = new MybatisSqlSessionFactoryBean();
bean.setDataSource(dataSource);
bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(MAPPER_LOCATION));
//分页插件
Interceptor interceptor = new PageInterceptor();
Properties properties = new Properties();
properties.setProperty("helperDialect", "mysql");
properties.setProperty("offsetAsPageNum", "true");
properties.setProperty("rowBoundsWithCount", "true");
properties.setProperty("reasonable", "true");
properties.setProperty("supportMethodsArguments","true");
properties.setProperty("params","pageNum=pageNum;pageSize=pageSize" +
"" +
";");
interceptor.setProperties(properties);
bean.setPlugins(new Interceptor[] {interceptor});
return bean.getObject();
}
@Bean(name = "tdengineTransactionManager")
public DataSourceTransactionManager tdengineTransactionManager(@Qualifier("tdengineDataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "tdengineSqlSessionTemplate")
public SqlSessionTemplate tdengineSqlSessionTemplate(@Qualifier("tdengineSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.JpCollectorServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpCollectorDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 户用光伏监盘采集器表
*
* @author system_generator
* @date 2023-09-19
*/
@RestController
@Api(tags = "户用光伏监盘采集器表Api")
@RequestMapping(value = "/jp-collector")
public class JpCollectorController extends BaseController {
@Autowired
JpCollectorServiceImpl jpCollectorServiceImpl;
/**
* 新增户用光伏监盘采集器表
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增户用光伏监盘采集器表", notes = "新增户用光伏监盘采集器表")
public ResponseModel<JpCollectorDto> save(@RequestBody JpCollectorDto model) {
model = jpCollectorServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新户用光伏监盘采集器表", notes = "根据sequenceNbr更新户用光伏监盘采集器表")
public ResponseModel<JpCollectorDto> updateBySequenceNbrJpCollector(@RequestBody JpCollectorDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(jpCollectorServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除户用光伏监盘采集器表", notes = "根据sequenceNbr删除户用光伏监盘采集器表")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(jpCollectorServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个户用光伏监盘采集器表", notes = "根据sequenceNbr查询单个户用光伏监盘采集器表")
public ResponseModel<JpCollectorDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(jpCollectorServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘采集器表分页查询", notes = "户用光伏监盘采集器表分页查询")
public ResponseModel<Page<JpCollectorDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<JpCollectorDto> page = new Page<JpCollectorDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(jpCollectorServiceImpl.queryForJpCollectorPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘采集器表列表全部数据查询", notes = "户用光伏监盘采集器表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<JpCollectorDto>> selectForList() {
return ResponseHelper.buildResponse(jpCollectorServiceImpl.queryForJpCollectorList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.JpInverterServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpInverterDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 户用光伏监盘逆变器表
*
* @author system_generator
* @date 2023-09-19
*/
@RestController
@Api(tags = "户用光伏监盘逆变器表Api")
@RequestMapping(value = "/jp-inverter")
public class JpInverterController extends BaseController {
@Autowired
JpInverterServiceImpl jpInverterServiceImpl;
/**
* 新增户用光伏监盘逆变器表
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增户用光伏监盘逆变器表", notes = "新增户用光伏监盘逆变器表")
public ResponseModel<JpInverterDto> save(@RequestBody JpInverterDto model) {
model = jpInverterServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新户用光伏监盘逆变器表", notes = "根据sequenceNbr更新户用光伏监盘逆变器表")
public ResponseModel<JpInverterDto> updateBySequenceNbrJpInverter(@RequestBody JpInverterDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(jpInverterServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除户用光伏监盘逆变器表", notes = "根据sequenceNbr删除户用光伏监盘逆变器表")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(jpInverterServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个户用光伏监盘逆变器表", notes = "根据sequenceNbr查询单个户用光伏监盘逆变器表")
public ResponseModel<JpInverterDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(jpInverterServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘逆变器表分页查询", notes = "户用光伏监盘逆变器表分页查询")
public ResponseModel<Page<JpInverterDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<JpInverterDto> page = new Page<JpInverterDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(jpInverterServiceImpl.queryForJpInverterPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘逆变器表列表全部数据查询", notes = "户用光伏监盘逆变器表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<JpInverterDto>> selectForList() {
return ResponseHelper.buildResponse(jpInverterServiceImpl.queryForJpInverterList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.JpInverterElectricityServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpInverterElectricityDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 户用光伏监盘逆变器电能表
*
* @author system_generator
* @date 2023-09-19
*/
@RestController
@Api(tags = "户用光伏监盘逆变器电能表Api")
@RequestMapping(value = "/jp-inverter-electricity")
public class JpInverterElectricityController extends BaseController {
@Autowired
JpInverterElectricityServiceImpl jpInverterElectricityServiceImpl;
/**
* 新增户用光伏监盘逆变器电能表
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增户用光伏监盘逆变器电能表", notes = "新增户用光伏监盘逆变器电能表")
public ResponseModel<JpInverterElectricityDto> save(@RequestBody JpInverterElectricityDto model) {
model = jpInverterElectricityServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新户用光伏监盘逆变器电能表", notes = "根据sequenceNbr更新户用光伏监盘逆变器电能表")
public ResponseModel<JpInverterElectricityDto> updateBySequenceNbrJpInverterElectricity(@RequestBody JpInverterElectricityDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(jpInverterElectricityServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除户用光伏监盘逆变器电能表", notes = "根据sequenceNbr删除户用光伏监盘逆变器电能表")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(jpInverterElectricityServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个户用光伏监盘逆变器电能表", notes = "根据sequenceNbr查询单个户用光伏监盘逆变器电能表")
public ResponseModel<JpInverterElectricityDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(jpInverterElectricityServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘逆变器电能表分页查询", notes = "户用光伏监盘逆变器电能表分页查询")
public ResponseModel<Page<JpInverterElectricityDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<JpInverterElectricityDto> page = new Page<JpInverterElectricityDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(jpInverterElectricityServiceImpl.queryForJpInverterElectricityPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "户用光伏监盘逆变器电能表列表全部数据查询", notes = "户用光伏监盘逆变器电能表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<JpInverterElectricityDto>> selectForList() {
return ResponseHelper.buildResponse(jpInverterElectricityServiceImpl.queryForJpInverterElectricityList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.JpStationServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpStationDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 第三方场站
*
* @author system_generator
* @date 2023-09-19
*/
@RestController
@Api(tags = "第三方场站Api")
@RequestMapping(value = "/jp-station")
public class JpStationController extends BaseController {
@Autowired
JpStationServiceImpl jpStationServiceImpl;
/**
* 新增第三方场站
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增第三方场站", notes = "新增第三方场站")
public ResponseModel<JpStationDto> save(@RequestBody JpStationDto model) {
model = jpStationServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新第三方场站", notes = "根据sequenceNbr更新第三方场站")
public ResponseModel<JpStationDto> updateBySequenceNbrJpStation(@RequestBody JpStationDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(jpStationServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除第三方场站", notes = "根据sequenceNbr删除第三方场站")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(jpStationServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个第三方场站", notes = "根据sequenceNbr查询单个第三方场站")
public ResponseModel<JpStationDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(jpStationServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "第三方场站分页查询", notes = "第三方场站分页查询")
public ResponseModel<Page<JpStationDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<JpStationDto> page = new Page<JpStationDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(jpStationServiceImpl.queryForJpStationPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "第三方场站列表全部数据查询", notes = "第三方场站列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<JpStationDto>> selectForList() {
return ResponseHelper.buildResponse(jpStationServiceImpl.queryForJpStationList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.emqx;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Component;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.annotation.PostConstruct;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
/**
* 告警消息数据处理
*
* @author Administrator
*/
@Component
@EnableScheduling
@Slf4j
public class DealerExamineMessageService extends EmqxListener {
@Autowired
protected EmqKeeper emqKeeper;
@Autowired
AmosRequestContext amosAuth;
@Autowired
AmosRequestContext amosRequestContext;
@Autowired
private TransactionDefinition transactionDefinition;
private static final BlockingQueue<JSONObject> blockingQueue = new LinkedBlockingQueue<JSONObject>();
@PostConstruct
void init() throws Exception {
new Thread(task_runnable).start();
emqKeeper.subscript("DEALER_EXAMINE", 2, this);
}
Runnable task_runnable = new Runnable() {
@Override
public void run() {
boolean isRun = true;
int k = 0;
while (isRun) {
k++;
isRun = k < Integer.MAX_VALUE;
try {
JSONObject analysisResult = blockingQueue.take();
RequestContext.setAppKey(amosAuth.getAppKey());
RequestContext.setProduct(amosAuth.getProduct());
RequestContext.setToken(amosAuth.getToken());
processEvent(analysisResult);
} catch (Exception e) {
e.printStackTrace();
}
}
}
};
//解析预警消息
@Transactional
public void processEvent(JSONObject analysisResult) {
}
@Override
public void processMessage(String topic, MqttMessage message) throws Exception {
System.out.println(message);
JSONObject analysisResult = JSONObject.parseObject(new String(message.getPayload()));
blockingQueue.add(analysisResult);
}
}
//package com.yeejoin.amos.boot.module.hygf.biz.emqx;
//
//
//import com.alibaba.fastjson.JSONObject;
//import com.yeejoin.amos.component.robot.AmosRequestContext;
//import lombok.extern.slf4j.Slf4j;
//import org.eclipse.paho.client.mqttv3.MqttMessage;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.scheduling.annotation.EnableScheduling;
//import org.springframework.stereotype.Component;
//import org.springframework.transaction.TransactionDefinition;
//import org.springframework.transaction.annotation.Transactional;
//import org.typroject.tyboot.component.emq.EmqKeeper;
//import org.typroject.tyboot.component.emq.EmqxListener;
//import org.typroject.tyboot.core.foundation.context.RequestContext;
//import javax.annotation.PostConstruct;
//import java.util.concurrent.BlockingQueue;
//import java.util.concurrent.LinkedBlockingQueue;
//
///**
// * 告警消息数据处理
// *
// * @author Administrator
// */
// @Component
// @EnableScheduling
// @Slf4j
// public class DealerExamineMessageService extends EmqxListener {
//
// @Autowired
// protected EmqKeeper emqKeeper;
// @Autowired
// AmosRequestContext amosAuth;
//
// @Autowired
// AmosRequestContext amosRequestContext;
//
// @Autowired
// private TransactionDefinition transactionDefinition;
//
//
// private static final BlockingQueue<JSONObject> blockingQueue = new LinkedBlockingQueue<JSONObject>();
//
// @PostConstruct
// void init() throws Exception {
// new Thread(task_runnable).start();
// emqKeeper.subscript("DEALER_EXAMINE", 2, this);
// }
//
// Runnable task_runnable = new Runnable() {
// @Override
// public void run() {
// boolean isRun = true;
// int k = 0;
// while (isRun) {
// k++;
// isRun = k < Integer.MAX_VALUE;
// try {
// JSONObject analysisResult = blockingQueue.take();
// RequestContext.setAppKey(amosAuth.getAppKey());
// RequestContext.setProduct(amosAuth.getProduct());
// RequestContext.setToken(amosAuth.getToken());
// processEvent(analysisResult);
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
// };
//
//
// //解析预警消息
// @Transactional
// public void processEvent(JSONObject analysisResult) {
//
// }
//
// @Override
// public void processMessage(String topic, MqttMessage message) throws Exception {
// System.out.println(message);
//
// JSONObject analysisResult = JSONObject.parseObject(new String(message.getPayload()));
// blockingQueue.add(analysisResult);
// }
//
//
//
//
//
//
// }
package com.yeejoin.amos.boot.module.hygf.biz.emqx;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Component;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.component.emq.EmqxListener;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.annotation.PostConstruct;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
/**
* 告警消息数据处理
*
* @author Administrator
*/
@Component
@EnableScheduling
@Slf4j
public class StationAuditMessageService extends EmqxListener {
@Autowired
protected EmqKeeper emqKeeper;
@Autowired
AmosRequestContext amosAuth;
@Autowired
AmosRequestContext amosRequestContext;
@Autowired
private TransactionDefinition transactionDefinition;
private static final BlockingQueue<JSONObject> blockingQueue = new LinkedBlockingQueue<JSONObject>();
@PostConstruct
void init() throws Exception {
new Thread(task_runnable).start();
emqKeeper.subscript("STATION_AUDIT", 2, this);
}
Runnable task_runnable = new Runnable() {
@Override
public void run() {
boolean isRun = true;
int k = 0;
while (isRun) {
k++;
isRun = k < Integer.MAX_VALUE;
try {
JSONObject analysisResult = blockingQueue.take();
RequestContext.setAppKey(amosAuth.getAppKey());
RequestContext.setProduct(amosAuth.getProduct());
RequestContext.setToken(amosAuth.getToken());
processEvent(analysisResult);
} catch (Exception e) {
e.printStackTrace();
}
}
}
};
//解析预警消息
@Transactional
public void processEvent(JSONObject analysisResult) {
}
@Override
public void processMessage(String topic, MqttMessage message) throws Exception {
System.out.println(message);
JSONObject analysisResult = JSONObject.parseObject(new String(message.getPayload()));
blockingQueue.add(analysisResult);
}
}
//package com.yeejoin.amos.boot.module.hygf.biz.emqx;
//
//
//import com.alibaba.fastjson.JSONObject;
//import com.yeejoin.amos.component.robot.AmosRequestContext;
//import lombok.extern.slf4j.Slf4j;
//import org.eclipse.paho.client.mqttv3.MqttMessage;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.scheduling.annotation.EnableScheduling;
//import org.springframework.stereotype.Component;
//import org.springframework.transaction.TransactionDefinition;
//import org.springframework.transaction.annotation.Transactional;
//import org.typroject.tyboot.component.emq.EmqKeeper;
//import org.typroject.tyboot.component.emq.EmqxListener;
//import org.typroject.tyboot.core.foundation.context.RequestContext;
//
//import javax.annotation.PostConstruct;
//import java.util.concurrent.BlockingQueue;
//import java.util.concurrent.LinkedBlockingQueue;
//
///**
// * 告警消息数据处理
// *
// * @author Administrator
// */
// @Component
// @EnableScheduling
// @Slf4j
// public class StationAuditMessageService extends EmqxListener {
//
// @Autowired
// protected EmqKeeper emqKeeper;
// @Autowired
// AmosRequestContext amosAuth;
//
// @Autowired
// AmosRequestContext amosRequestContext;
//
// @Autowired
// private TransactionDefinition transactionDefinition;
//
//
// private static final BlockingQueue<JSONObject> blockingQueue = new LinkedBlockingQueue<JSONObject>();
//
// @PostConstruct
// void init() throws Exception {
// new Thread(task_runnable).start();
// emqKeeper.subscript("STATION_AUDIT", 2, this);
// }
//
// Runnable task_runnable = new Runnable() {
// @Override
// public void run() {
// boolean isRun = true;
// int k = 0;
// while (isRun) {
// k++;
// isRun = k < Integer.MAX_VALUE;
// try {
// JSONObject analysisResult = blockingQueue.take();
// RequestContext.setAppKey(amosAuth.getAppKey());
// RequestContext.setProduct(amosAuth.getProduct());
// RequestContext.setToken(amosAuth.getToken());
// processEvent(analysisResult);
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
// };
//
//
// //解析预警消息
// @Transactional
// public void processEvent(JSONObject analysisResult) {
//
// }
//
// @Override
// public void processMessage(String topic, MqttMessage message) throws Exception {
// System.out.println(message);
//
// JSONObject analysisResult = JSONObject.parseObject(new String(message.getPayload()));
// blockingQueue.add(analysisResult);
// }
//
//
//
//
//
//
// }
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpCollector;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpCollectorMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IJpCollectorService;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpCollectorDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 户用光伏监盘采集器表服务实现类
*
* @author system_generator
* @date 2023-09-19
*/
@Service
public class JpCollectorServiceImpl extends BaseService<JpCollectorDto,JpCollector,JpCollectorMapper> implements IJpCollectorService {
/**
* 分页查询
*/
public Page<JpCollectorDto> queryForJpCollectorPage(Page<JpCollectorDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<JpCollectorDto> queryForJpCollectorList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpInverterElectricity;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpInverterElectricityMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IJpInverterElectricityService;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpInverterElectricityDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 户用光伏监盘逆变器电能表服务实现类
*
* @author system_generator
* @date 2023-09-19
*/
@Service
public class JpInverterElectricityServiceImpl extends BaseService<JpInverterElectricityDto,JpInverterElectricity,JpInverterElectricityMapper> implements IJpInverterElectricityService {
/**
* 分页查询
*/
public Page<JpInverterElectricityDto> queryForJpInverterElectricityPage(Page<JpInverterElectricityDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<JpInverterElectricityDto> queryForJpInverterElectricityList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpInverter;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpInverterMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IJpInverterService;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpInverterDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 户用光伏监盘逆变器表服务实现类
*
* @author system_generator
* @date 2023-09-19
*/
@Service
public class JpInverterServiceImpl extends BaseService<JpInverterDto,JpInverter,JpInverterMapper> implements IJpInverterService {
/**
* 分页查询
*/
public Page<JpInverterDto> queryForJpInverterPage(Page<JpInverterDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<JpInverterDto> queryForJpInverterList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpStation;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpStationMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IJpStationService;
import com.yeejoin.amos.boot.module.hygf.api.dto.JpStationDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 第三方场站服务实现类
*
* @author system_generator
* @date 2023-09-19
*/
@Service
public class JpStationServiceImpl extends BaseService<JpStationDto,JpStation,JpStationMapper> implements IJpStationService {
/**
* 分页查询
*/
public Page<JpStationDto> queryForJpStationPage(Page<JpStationDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<JpStationDto> queryForJpStationList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
## DB properties:
spring.datasource.url=jdbc:mysql://172.16.10.220:3306/amos_project?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=Yeejoin@2020
spring.datasource.mysql-service.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.mysql-service.jdbc-url=jdbc:mysql://172.16.10.220:3306/amos_project?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.mysql-service.username=root
spring.datasource.mysql-service.password=Yeejoin@2020
spring.datasource.mysql-service.type=com.zaxxer.hikari.HikariDataSource
#最小连接
spring.datasource.mysql-service.minimum-idle: 5
#最大连接
spring.datasource.mysql-service.maximum-pool-size: 15
#自动提交
spring.datasource.mysql-service.auto-commit: true
#最大空闲时常
spring.datasource.mysql-service.idle-timeout: 30000
#连接池名
spring.datasource.mysql-service.pool-name: MysqlDruidCP
#最大生命周期
spring.datasource.mysql-service.max-lifetime: 1800000
#连接超时时间
spring.datasource.mysql-service.connection-timeout: 30000
spring.datasource.tdengine-service.driver-class-name=com.taosdata.jdbc.TSDBDriver
spring.datasource.tdengine-service.jdbc-url=jdbc:TAOS-RS://139.9.170.47:6041/house_pv_data?user=%s&password=%s&timezone=GMT+8
spring.datasource.tdengine-service.username=root
spring.datasource.tdengine-service.password=taosdata
spring.datasource.tdengine-service.type=com.taosdata.jdbc.TSDBDriver
#最小连接
spring.datasource.tdengine-service.minimum-idle: 5
#最大连接
spring.datasource.tdengine-service.maximum-pool-size: 15
#自动提交
spring.datasource.tdengine-service.auto-commit: true
#最大空闲时常
spring.datasource.tdengine-service.idle-timeout: 30000
#连接池名
spring.datasource.tdengine-service.pool-name: Data_trans_HikariCP
#最大生命周期
spring.datasource.tdengine-service.max-lifetime: 1800000
#连接超时时间
spring.datasource.tdengine-service.connection-timeout: 30000
## eureka properties:
eureka.instance.hostname=172.16.10.220
eureka.client.serviceUrl.defaultZone=http://admin:a1234560@${eureka.instance.hostname}:10001/eureka/
......@@ -120,7 +165,7 @@ regionalCompanies.company.seq=1693499571071619074
qiyuesuo.serverUrl = https://openapi.qiyuesuo.cn
qiyuesuo.accessKey = TdBmNkjAYd
qiyuesuo.accessSecret = y8KiDFKKDdC9Ld9Cm5zuy2rpXjxP5Z
qiyuesuo.secretKey=
qiyuesuo.secretKey=Fp2LQAqK5gc68hi5
# ============================================= v20230821 add properties =============================================
security.productWeb=AMOS_STUDIO_WEB
security.appKey=AMOS_STUDIO
......
......@@ -12,16 +12,7 @@ logging.config=classpath:logback-${spring.profiles.active}.xml
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
## DB properties:
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.hikari.minimum-idle=10
spring.datasource.hikari.maximum-pool-size=25
spring.datasource.hikari.auto-commit=true
spring.datasource.hikari.idle-timeout=30000
spring.datasource.hikari.pool-name=DatebookHikariCP
spring.datasource.hikari.max-lifetime=120000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.connection-test-query=SELECT 1
##liquibase
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment