diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineBakMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineBakMapper.java
new file mode 100644
index 0000000..15deb53
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineBakMapper.java
@@ -0,0 +1,19 @@
+package com.njcn.relational.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.LineBak;
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+public interface LineBakMapper extends BaseMapper {
+
+
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineDetailMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineDetailMapper.java
new file mode 100644
index 0000000..2d122da
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineDetailMapper.java
@@ -0,0 +1,25 @@
+package com.njcn.relational.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import com.njcn.relational.pojo.po.LineDetail;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+public interface LineDetailMapper extends BaseMapper {
+
+
+
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineMapper.java
new file mode 100644
index 0000000..15c4e4f
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/LineMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.relational.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.Line;
+
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+public interface LineMapper extends BaseMapper {
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgConPlantBNewenergyMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgConPlantBNewenergyMapper.java
new file mode 100644
index 0000000..88709ec
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgConPlantBNewenergyMapper.java
@@ -0,0 +1,10 @@
+package com.njcn.relational.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.SgConPlantBNewenergy;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface SgConPlantBNewenergyMapper extends BaseMapper {
+
+}
\ No newline at end of file
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgDevAclineBMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgDevAclineBMapper.java
new file mode 100644
index 0000000..3f0d833
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SgDevAclineBMapper.java
@@ -0,0 +1,10 @@
+package com.njcn.relational.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.SgDevAclineB;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface SgDevAclineBMapper extends BaseMapper {
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SupervisionUserReportBakMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SupervisionUserReportBakMapper.java
new file mode 100644
index 0000000..16324e9
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/SupervisionUserReportBakMapper.java
@@ -0,0 +1,11 @@
+package com.njcn.relational.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.SupervisionUserReportBak;
+
+/**
+ * 监测对象中间关系表 Mapper
+ */
+public interface SupervisionUserReportBakMapper extends BaseMapper {
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportBakMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportBakMapper.java
new file mode 100644
index 0000000..3412ab1
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportBakMapper.java
@@ -0,0 +1,10 @@
+package com.njcn.relational.mapper;
+
+import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
+import com.njcn.relational.pojo.po.UserReportBakPO;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface UserReportBakMapper extends MppBaseMapper {
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportPOMapper.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportPOMapper.java
new file mode 100644
index 0000000..9a4a6ca
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/mapper/UserReportPOMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.relational.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.relational.pojo.po.UserReportPO;
+
+/**
+ *
+ * Description:
+ * Date: 2024/4/25 10:07【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+public interface UserReportPOMapper extends BaseMapper {
+
+
+}
\ No newline at end of file
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/dto/DcloudSyncQuery.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/dto/DcloudSyncQuery.java
index 73dc5f2..93ce248 100644
--- a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/dto/DcloudSyncQuery.java
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/dto/DcloudSyncQuery.java
@@ -82,4 +82,26 @@ public class DcloudSyncQuery {
query.setPropertyList("D5000_ID,D5000_NAME,DCC_ID,DCLOUD_ID,DCLOUD_NAME,DCLOUD_VOLTAGELEVEL,OMS_ID,OMS_NAME,OWNER,PMS_ID,PSDB_DEV_TYPE,PSDB_ID,PSDB_NAME,SETTING_ID,SETTING_NAME,STATUS");
return query;
}
+
+ public static DcloudSyncQuery buildSgConPlantBNewenergy(String filter, String orderStr, Integer pageIndex, Integer pageSize) {
+ DcloudSyncQuery query = new DcloudSyncQuery();
+ query.setTableName("SG_CON_PLANT_B_NEWENERGY");
+ query.setFilter(filter);
+ query.setOrderStr(orderStr);
+ query.setPageIndex(pageIndex);
+ query.setPageSize(pageSize);
+ query.setPropertyList("ID,COMPENSATION_VAR_CAP,CONNECTIVE_STATION_ID,ENERGY_STORAGE_CAPACITY,ENERGY_STORAGE_DEVICE_COUNT,INVERTER_COUNT,OWNER,STAMP,TYPE_NUM,WINDTURBINE_NUM,GROUND_TYPE,FILT_NUM,HOUR_NUM,WINDTOWER_NUM,PHOTOMETER_NUM,WINDRANGE,INSTALL_LOCATION");
+ return query;
+ }
+
+ public static DcloudSyncQuery buildSgSgDevAclineB(String filter, String orderStr, Integer pageIndex, Integer pageSize) {
+ DcloudSyncQuery query = new DcloudSyncQuery();
+ query.setTableName("SG_DEV_ACLINE_B");
+ query.setFilter(filter);
+ query.setOrderStr(orderStr);
+ query.setPageIndex(pageIndex);
+ query.setPageSize(pageSize);
+ query.setPropertyList("ID,NAME,VOLTAGE_TYPE,GRID_ID,SUPPLIER_ID,SYS_FLAG,TAG,ASSETS_COMPANY_ID,CHECK_CODE,COMPACT_ZONE,DEV_ID,DISPATCH_ORG_ID,START_BAY_ID,START_ST_ID,START_TOWER_ID,END_BAY_ID,END_ST_ID,END_TOWER_ID,ERECTINGMETHOD,EXPIRY_DATE,OFF_TIME,ON_TIME,OPERATE_DATE,OWNER,RUNNING_STATE,STAMP,ISOPTICFIBEREQUIPED,IS_COMPACT,LENGTH,LICENSE_ORG_ID,LINETYPE,MEMBER_FEATURE_TAG,STRIDE_FEATURE_TAG");
+ return query;
+ }
}
\ No newline at end of file
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/Line.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/Line.java
new file mode 100644
index 0000000..f7b3926
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/Line.java
@@ -0,0 +1,71 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.njcn.relational.pojo.bo.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.List;
+
+/**
+ *
+ *
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("pq_line")
+public class Line extends BaseEntity {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 监测点Id
+ */
+ private String id;
+
+ /**
+ * 父节点(0为根节点)
+ */
+ private String pid;
+
+ /**
+ * 上层所有节点
+ */
+ private String pids;
+
+ /**
+ * 名称
+ */
+ private String name;
+
+ /**
+ * 等级:0-项目名称;1- 工程名称;2-单位;3-部门;4-终端;5-母线;6-监测点
+ */
+ private Integer level;
+
+ /**
+ * 排序(默认为0,有特殊排序需要时候人为输入)
+ */
+ private Integer sort;
+
+ /**
+ * 备注
+ */
+ private String remark;
+
+ /**
+ * 状态 0-删除;1-正常;默认正常
+ */
+ private Integer state;
+
+
+ @TableField(exist = false)
+ private List children;
+
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineBak.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineBak.java
new file mode 100644
index 0000000..df77833
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineBak.java
@@ -0,0 +1,31 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ *
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+@Data
+@TableName("pq_line_bak")
+public class LineBak {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 监测点Id
+ */
+ private String id;
+
+
+ /**
+ * 原始监测点Id
+ */
+ private Integer lineId;
+
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineDetail.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineDetail.java
new file mode 100644
index 0000000..31eef46
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/LineDetail.java
@@ -0,0 +1,217 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+
+/**
+ *
+ *
+ *
+ *
+ * @author cdf
+ * @since 2022-01-04
+ */
+@Data
+@TableName("pq_line_detail")
+public class LineDetail {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 监测点序号
+ */
+ @TableId
+ private String id;
+
+
+ @TableField(exist = false)
+ private String monitorName;
+
+ /**
+ * 线路号(在同一台设备中的监测点号)
+ */
+ private Integer num;
+
+ /**
+ * PT一次变比
+ */
+ private Float pt1;
+
+ /**
+ * PT二次变比
+ */
+ private Float pt2;
+
+ /**
+ * CT一次变比
+ */
+ private Float ct1;
+
+ /**
+ * CT二次变比
+ */
+ private Float ct2;
+
+ /**
+ * 设备容量
+ */
+ private Float devCapacity;
+
+ /**
+ * 短路容量
+ */
+ private Float shortCapacity;
+
+ /**
+ * 基准容量
+ */
+ private Float standardCapacity;
+
+ /**
+ * 协议容量
+ */
+ private Float dealCapacity;
+
+ /**
+ * 接线类型(0:星型接法;1:三角型接法;2:开口三角型接法)
+ */
+ private Integer ptType;
+
+ /**
+ * 测量间隔(1-10分钟)
+ */
+ private Integer timeInterval;
+
+ /**
+ * 干扰源类型,字典表
+ */
+ private String loadType;
+
+ /**
+ * 行业类型,字典表
+ */
+ private String businessType;
+
+ /**
+ * 网公司谐波监测平台标志(0-否;1-是),默认否
+ */
+ private Integer monitorFlag;
+
+ /**
+ * 电网标志(0-电网侧;1-非电网侧)
+ */
+ private Integer powerFlag;
+
+ /**
+ * 国网谐波监测平台监测点号
+ */
+ private String monitorId;
+
+ /**
+ * 监测点对象名称
+ */
+ private String objName;
+
+ /**
+ * 监测点对象id
+ */
+ private String objId;
+
+ /**
+ * 监测对象大类
+ */
+ private String bigObjType;
+
+ /**
+ * 监测对象小类
+ */
+ private String smallObjType;
+
+ /**
+ * 人为干预 0 不参与统计 1 参与统计
+ */
+ private Integer statFlag;
+
+ /**
+ * 关联字典的终端等级
+ */
+ private String lineGrade;
+
+ /**
+ * 备注
+ */
+ private String remark;
+
+
+
+ /**
+ * 电网侧变电站
+ */
+ private String powerSubstationName;
+ /**
+ * 分类等级
+ */
+ private String calssificationGrade;
+
+
+ /**
+ * 上级电站
+ */
+ @Deprecated
+ private String superiorsSubstation;
+
+ /**
+ * 挂接线路
+ */
+ @Deprecated
+ private String hangLine;
+
+ /**
+ * 监测点拥有者
+ */
+ private String owner;
+
+ /**
+ * 拥有者职务
+ */
+ private String ownerDuty;
+
+ /**
+ * 拥有者联系方式
+ */
+ private String ownerTel;
+
+ /**
+ * 接线图
+ */
+ private String wiringDiagram;
+ /**
+ * 监测点接线相别(0,单相,1,三相,默认三相)
+ */
+ private Integer ptPhaseType;
+
+ /**
+ * 监测点实际安装位置
+ */
+ private String actualArea;
+
+ /**
+ * 监测点运行状态(0:运行;1:检修;2:停运;3:调试;4:退运)
+ */
+ private Integer runFlag;
+
+ /**
+ * 新能源场站信息ID
+ */
+ @Deprecated
+ private String newStationId;
+
+ /**
+ * 通讯状态
+ */
+ @TableField(exist = false)
+ private Integer comFlag;
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgConPlantBNewenergy.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgConPlantBNewenergy.java
new file mode 100644
index 0000000..e05eece
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgConPlantBNewenergy.java
@@ -0,0 +1,121 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import lombok.Data;
+
+/**
+ * 新能源发电厂基础信息
+ * 表名:SG_CON_PLANT_B_NEWENERGY
+ */
+@Data
+@TableName("SG_CON_PLANT_B_NEWENERGY")
+public class SgConPlantBNewenergy implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 电站ID(主键)
+ */
+ @TableId("ID")
+ private String id;
+
+ /**
+ * 无功补偿容量(Mvar)
+ */
+ @TableField("COMPENSATION_VAR_CAP")
+ private BigDecimal compensationVarCap;
+
+ /**
+ * 并网变电站ID,引用变电站基本信息表
+ */
+ @TableField("CONNECTIVE_STATION_ID")
+ private String connectiveStationId;
+
+ /**
+ * 储能容量(MW)
+ */
+ @TableField("ENERGY_STORAGE_CAPACITY")
+ private BigDecimal energyStorageCapacity;
+
+ /**
+ * 储能设备台数
+ */
+ @TableField("ENERGY_STORAGE_DEVICE_COUNT")
+ private Integer energyStorageDeviceCount;
+
+ /**
+ * 逆变器台数
+ */
+ @TableField("INVERTER_COUNT")
+ private Integer inverterCount;
+
+ /**
+ * 拥有者
+ */
+ @TableField("OWNER")
+ private String owner;
+
+ /**
+ * 更新标志:机构代码+人员代码+时间
+ */
+ @TableField("STAMP")
+ private String stamp;
+
+ /**
+ * 逆变器或风机类型数
+ */
+ @TableField("TYPE_NUM")
+ private Integer typeNum;
+
+ /**
+ * 风机台数
+ */
+ @TableField("WINDTURBINE_NUM")
+ private Integer windturbineNum;
+
+ /**
+ * 汇集系统中性点接地方式
+ */
+ @TableField("GROUND_TYPE")
+ private Integer groundType;
+
+ /**
+ * 滤波器组数
+ */
+ @TableField("FILT_NUM")
+ private Integer filtNum;
+
+ /**
+ * 设计利用小时数
+ */
+ @TableField("HOUR_NUM")
+ private BigDecimal hourNum;
+
+ /**
+ * 测风塔数量
+ */
+ @TableField("WINDTOWER_NUM")
+ private Integer windtowerNum;
+
+ /**
+ * 测光检测仪器数量
+ */
+ @TableField("PHOTOMETER_NUM")
+ private Integer photometerNum;
+
+ /**
+ * 风电布置类型
+ */
+ @TableField("WINDRANGE")
+ private Integer windrange;
+
+ /**
+ * 风电场安装位置
+ */
+ @TableField("INSTALL_LOCATION")
+ private Integer installLocation;
+}
\ No newline at end of file
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgDevAclineB.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgDevAclineB.java
new file mode 100644
index 0000000..2974829
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SgDevAclineB.java
@@ -0,0 +1,223 @@
+package com.njcn.relational.pojo.po;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-22
+ * @Description:
+ */
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * 交流线路基础信息
+ * 表名:SG_DEV_ACLINE_B
+ */
+@Data
+@TableName("SG_DEV_ACLINE_B")
+public class SgDevAclineB implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID 主键
+ */
+ @TableId("ID")
+ private String id;
+
+ /**
+ * 线路名称
+ */
+ @TableField("NAME")
+ private String name;
+
+ /**
+ * 电压等级
+ */
+ @TableField("VOLTAGE_TYPE")
+ private Integer voltageType;
+
+ /**
+ * 所属电网
+ */
+ @TableField("GRID_ID")
+ private String gridId;
+
+ /**
+ * 生产厂家
+ */
+ @TableField("SUPPLIER_ID")
+ private String supplierId;
+
+ /**
+ * 系统属性
+ */
+ @TableField("SYS_FLAG")
+ private String sysFlag;
+
+ /**
+ * 标签
+ */
+ @TableField("TAG")
+ private String tag;
+
+ /**
+ * 资产单位
+ */
+ @TableField("ASSETS_COMPANY_ID")
+ private String assetsCompanyId;
+
+ /**
+ * 校验码
+ */
+ @TableField("CHECK_CODE")
+ private String checkCode;
+
+ /**
+ * 紧凑型区段
+ */
+ @TableField("COMPACT_ZONE")
+ private String compactZone;
+
+ /**
+ * 设备ID
+ */
+ @TableField("DEV_ID")
+ private String devId;
+
+ /**
+ * 调度机构
+ */
+ @TableField("DISPATCH_ORG_ID")
+ private String dispatchOrgId;
+
+ /**
+ * 起点所属间隔
+ */
+ @TableField("START_BAY_ID")
+ private String startBayId;
+
+ /**
+ * 起点厂站
+ */
+ @TableField("START_ST_ID")
+ private String startStId;
+
+ /**
+ * 起点杆塔
+ */
+ @TableField("START_TOWER_ID")
+ private String startTowerId;
+
+ /**
+ * 终点所属间隔
+ */
+ @TableField("END_BAY_ID")
+ private String endBayId;
+
+ /**
+ * 终点厂站
+ */
+ @TableField("END_ST_ID")
+ private String endStId;
+
+ /**
+ * 终点杆塔
+ */
+ @TableField("END_TOWER_ID")
+ private String endTowerId;
+
+ /**
+ * 架设方式
+ */
+ @TableField("ERECTINGMETHOD")
+ private Integer erectingmethod;
+
+ /**
+ * 退役日期
+ */
+ @TableField("EXPIRY_DATE")
+ private String expiryDate;
+
+ /**
+ * 失效时间
+ */
+ @TableField("OFF_TIME")
+ private String offTime;
+
+ /**
+ * 生效时间
+ */
+ @TableField("ON_TIME")
+ private String onTime;
+
+ /**
+ * 投运日期
+ */
+ @TableField("OPERATE_DATE")
+ private String operateDate;
+
+ /**
+ * 拥有者
+ */
+ @TableField("OWNER")
+ private String owner;
+
+ /**
+ * 运行状态
+ */
+ @TableField("RUNNING_STATE")
+ private Integer runningState;
+
+ /**
+ * 更新标志
+ */
+ @TableField("STAMP")
+ private String stamp;
+
+ /**
+ * 光纤类型
+ */
+ @TableField("ISOPTICFIBEREQUIPED")
+ private String isopticfiberequiped;
+
+ /**
+ * 是否紧凑型
+ */
+ @TableField("IS_COMPACT")
+ private String isCompact;
+
+ /**
+ * 线路全长(km)
+ */
+ @TableField("LENGTH")
+ private BigDecimal length;
+
+ /**
+ * 许可机构
+ */
+ @TableField("LICENSE_ORG_ID")
+ private String licenseOrgId;
+
+ /**
+ * 线路类型
+ */
+ @TableField("LINETYPE")
+ private Integer linetype;
+
+ /**
+ * 成员特征标签
+ */
+ @TableField("MEMBER_FEATURE_TAG")
+ private String memberFeatureTag;
+
+ /**
+ * 跨域特征标签
+ */
+ @TableField("STRIDE_FEATURE_TAG")
+ private String strideFeatureTag;
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SupervisionUserReportBak.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SupervisionUserReportBak.java
new file mode 100644
index 0000000..da5da0d
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/SupervisionUserReportBak.java
@@ -0,0 +1,30 @@
+package com.njcn.relational.pojo.po;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-23
+ * @Description:
+ */
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * 监测对象中间关系表
+ */
+@Data
+@TableName("SUPERVISION_USER_REPORT_BAK")
+public class SupervisionUserReportBak {
+
+ /**
+ * 本地系统监测对象id
+ */
+ private String userId;
+
+ /**
+ * 其他系统监测对象id
+ */
+ private String midId;
+
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportBakPO.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportBakPO.java
new file mode 100644
index 0000000..1aa942e
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportBakPO.java
@@ -0,0 +1,29 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
+import lombok.Data;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-25
+ * @Description:
+ */
+@Data
+@TableName("user_report_bak")
+public class UserReportBakPO {
+
+ /**
+ * 用户id
+ */
+ @MppMultiId
+ private String userId;
+
+ /**
+ * 中间表id
+ */
+ @MppMultiId
+ private String midId;
+
+}
diff --git a/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportPO.java b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportPO.java
new file mode 100644
index 0000000..ce746fa
--- /dev/null
+++ b/relational_migration/relational_comm/src/main/java/com/njcn/relational/pojo/po/UserReportPO.java
@@ -0,0 +1,182 @@
+package com.njcn.relational.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.njcn.relational.pojo.bo.BaseEntity;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ *
+ * Description:
+ * Date: 2024/4/25 10:07【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "supervision_user_report")
+public class UserReportPO extends BaseEntity {
+ /**
+ * id
+ */
+ @TableId(value = "id", type = IdType.ASSIGN_UUID)
+ private String id;
+
+ /**
+ * 填报人
+ */
+ @TableField(value = "reporter")
+ private String reporter;
+
+ /**
+ * 填报日期
+ */
+ @TableField(value = "report_date")
+ private LocalDate reportDate;
+
+ /**
+ * 填报部门
+ */
+ @TableField(value = "org_id")
+ private String orgId;
+
+ /**
+ * 工程预期投产日期
+ */
+ @TableField(value = "expected_production_date")
+ private LocalDate expectedProductionDate;
+
+ /**
+ * 用户性质
+ */
+ @TableField(value = "user_type")
+ private Integer userType;
+
+ /**
+ * 所属地市
+ */
+ @TableField(value = "city")
+ private String city;
+
+ /**
+ * 归口管理部门
+ */
+ @TableField(value = "responsible_department")
+ private String responsibleDepartment;
+
+ /**
+ * 用户状态
+ */
+ @TableField(value = "user_status")
+ private Integer userStatus;
+
+ /**
+ * 变电站
+ */
+ @TableField(value = "substation")
+ private String substation;
+
+ /**
+ * 电压等级
+ */
+ @TableField(value = "voltage_level")
+ private String voltageLevel;
+
+ /**
+ * 工程名称
+ */
+ @TableField(value = "project_name")
+ private String projectName;
+
+ /**
+ * 预测评估单位
+ */
+ @TableField(value = "evaluation_dept")
+ private String evaluationDept;
+
+ /**
+ * 预测评估结论
+ */
+ @TableField(value = "evaluation_conclusion")
+ private String evaluationConclusion;
+
+ /**
+ * 流程实例的编号
+ */
+ @TableField(value = "process_instance_id")
+ private String processInstanceId;
+
+
+ @TableField(value = "history_instance_id")
+ private String historyInstanceId;
+
+ /**
+ * 数据来源类型 0.正常流程审核入库 1.批量导入
+ */
+ @TableField(value = "data_type")
+ private Integer dataType;
+
+ /**
+ * 电站id
+ */
+ private String stationId;
+
+ /**
+ * 额定容量
+ */
+ private Double ratePower;
+
+ /**
+ * 经度
+ */
+ private BigDecimal longitude;
+
+
+ /**
+ * 纬度
+ */
+ private BigDecimal latitude;
+
+ /**
+ * 终端id
+ */
+ @TableField(value = "dev_id")
+ private String devId;
+
+ /**
+ * 监测点id
+ */
+ @TableField(value = "line_id")
+ private String lineId;
+
+ @TableField(value = "second_assessment_id")
+ private String secondAssessmentId;
+
+ /**
+ * 审批状态:1:审批中;2:审批通过;3:审批不通过;4:已取消
+ */
+ @TableField(value = "status")
+ private Integer status;
+
+
+ /**
+ * 状态:0-删除 1-正常
+ */
+ @TableField(value = "State")
+ private Integer state;
+
+
+
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/DcloudBusController.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/DcloudBusController.java
index 39a772d..7776ba4 100644
--- a/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/DcloudBusController.java
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/DcloudBusController.java
@@ -42,4 +42,16 @@ public class DcloudBusController {
DcloudSyncQuery query = DcloudSyncQuery.buildPlantBdC(null, null, null, null);
dcloudBusService.syncDataToDb(query);
}
+
+ @GetMapping("/sync5")
+ public void syncData5() {
+ DcloudSyncQuery query = DcloudSyncQuery.buildSgConPlantBNewenergy(null, null, null, null);
+ dcloudBusService.syncDataToDb(query);
+ }
+
+ @GetMapping("/sync6")
+ public void syncData6() {
+ DcloudSyncQuery query = DcloudSyncQuery.buildSgSgDevAclineB(null, null, null, null);
+ dcloudBusService.syncDataToDb(query);
+ }
}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/IndexController.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/IndexController.java
index 9ce96b2..f80abe3 100644
--- a/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/IndexController.java
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/IndexController.java
@@ -34,4 +34,10 @@ public class IndexController {
public String logs() {
return "forward:/pages/logs.html";
}
+
+ @GetMapping("/taizhang")
+ public String taizhang() {
+ return "forward:/pages/userLedger.html";
+ }
+
}
\ No newline at end of file
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/UserLedgerController.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/UserLedgerController.java
new file mode 100644
index 0000000..e6f9701
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/controller/UserLedgerController.java
@@ -0,0 +1,81 @@
+package com.njcn.relational.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.njcn.relational.pojo.po.Line;
+import com.njcn.relational.pojo.po.UserReportPO;
+import com.njcn.relational.service.LineService;
+import com.njcn.relational.service.UserLedgerService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/userLedger")
+@RequiredArgsConstructor
+@Slf4j
+public class UserLedgerController {
+
+ private final LineService lineService;
+ private final UserLedgerService userLedgerService;
+
+ /**
+ * ҳѯ (Line, level=6)
+ */
+ @GetMapping("/line/page")
+ public IPage linePage(
+ @RequestParam(defaultValue = "1") long pageNum,
+ @RequestParam(defaultValue = "10") long pageSize,
+ Line query
+ ) {
+ Page page = new Page<>(pageNum, pageSize);
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Line::getLevel, 6);
+ wrapper.eq(Line::getState, 1);
+ wrapper.like(query.getName() != null, Line::getName, query.getName());
+ wrapper.orderByAsc(Line::getSort);
+ return lineService.page(page, wrapper);
+ }
+
+ /**
+ * վҳѯ (Line, level=3)
+ */
+ @GetMapping("/station/page")
+ public IPage stationPage(
+ @RequestParam(defaultValue = "1") long pageNum,
+ @RequestParam(defaultValue = "10") long pageSize,
+ Line query
+ ) {
+ Page page = new Page<>(pageNum, pageSize);
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Line::getLevel, 3);
+ wrapper.eq(Line::getState, 1);
+ wrapper.like(query.getName() != null, Line::getName, query.getName());
+ wrapper.orderByAsc(Line::getSort);
+ return lineService.page(page, wrapper);
+ }
+
+ /**
+ * Դվҳѯ (UserReportPO)
+ */
+ @GetMapping("/report/page")
+ public IPage reportPage(
+ @RequestParam(defaultValue = "1") long pageNum,
+ @RequestParam(defaultValue = "10") long pageSize,
+ UserReportPO query
+ ) {
+ Page page = new Page<>(pageNum, pageSize);
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(UserReportPO::getState, 1);
+ wrapper.like(query.getProjectName() != null, UserReportPO::getProjectName, query.getProjectName());
+ wrapper.like(query.getSubstation() != null, UserReportPO::getSubstation, query.getSubstation());
+ wrapper.like(query.getCity() != null, UserReportPO::getCity, query.getCity());
+ wrapper.orderByDesc(UserReportPO::getCreateTime);
+ return userLedgerService.page(page, wrapper);
+ }
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgConPlantBNewenergyService.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgConPlantBNewenergyService.java
new file mode 100644
index 0000000..ff4e09c
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgConPlantBNewenergyService.java
@@ -0,0 +1,10 @@
+package com.njcn.relational.service;
+
+import com.alibaba.fastjson.JSONArray;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.njcn.relational.pojo.po.SgConPlantBNewenergy;
+
+public interface SgConPlantBNewenergyService extends IService {
+
+ public boolean batchSyncFromDcloud(JSONArray dataArr);
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgDevAclineBService.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgDevAclineBService.java
new file mode 100644
index 0000000..3d1d487
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SgDevAclineBService.java
@@ -0,0 +1,8 @@
+package com.njcn.relational.service;
+
+import com.alibaba.fastjson.JSONArray;
+
+public interface SgDevAclineBService {
+
+ boolean batchSyncFromDcloud(JSONArray dataArr);
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SupervisionUserReportBakService.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SupervisionUserReportBakService.java
new file mode 100644
index 0000000..fb74742
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/SupervisionUserReportBakService.java
@@ -0,0 +1,12 @@
+package com.njcn.relational.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.njcn.relational.pojo.po.SupervisionUserReportBak;
+
+/**
+ * 监测对象中间关系表 Service
+ */
+public interface SupervisionUserReportBakService extends IService {
+
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserLedgerService.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserLedgerService.java
new file mode 100644
index 0000000..e8e9a67
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserLedgerService.java
@@ -0,0 +1,19 @@
+package com.njcn.relational.service;
+
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.njcn.relational.pojo.po.UserReportPO;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author: wr
+ * @Date: 2026/3/4 9:12
+ */
+public interface UserLedgerService extends IService {
+
+
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserReportBakService.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserReportBakService.java
new file mode 100644
index 0000000..7fbffaf
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/UserReportBakService.java
@@ -0,0 +1,4 @@
+package com.njcn.relational.service;
+
+public interface UserReportBakService {
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/DcloudBusServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/DcloudBusServiceImpl.java
index f0316c5..7359754 100644
--- a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/DcloudBusServiceImpl.java
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/DcloudBusServiceImpl.java
@@ -33,6 +33,10 @@ public class DcloudBusServiceImpl implements DcloudBusService {
private final SGConSubstationCService sgConSubstationCService;
+ private final SgConPlantBNewenergyService sgConPlantBNewenergyService;
+
+ private final SgDevAclineBService sgDevAclineBService;
+
/**
* 数据入库入口
@@ -218,6 +222,12 @@ public class DcloudBusServiceImpl implements DcloudBusService {
}else if("SG_CON_SUBSTATION_C".equals(tableName)){
log.info("【全量同步入口】执行变电站站绑定数据---------");
batchResult = sgConSubstationCService.batchSyncFromDcloud(pageData);
+ }else if("SG_CON_PLANT_B_NEWENERGY".equals(tableName)){
+ log.info("【全量同步入口】执行新能源场站基本信息---------");
+ batchResult = sgConPlantBNewenergyService.batchSyncFromDcloud(pageData);
+ }else if("SG_DEV_ACLINE_B".equals(tableName)){
+ log.info("【全量同步入口】执行线路表同步---------");
+ batchResult = sgDevAclineBService.batchSyncFromDcloud(pageData);
}
if (batchResult) {
successCount += pageData.size();
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgConPlantBNewenergyServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgConPlantBNewenergyServiceImpl.java
new file mode 100644
index 0000000..0c14bbe
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgConPlantBNewenergyServiceImpl.java
@@ -0,0 +1,58 @@
+package com.njcn.relational.service.impl;
+
+import cn.hutool.core.collection.CollUtil;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.relational.mapper.SgConPlantBNewenergyMapper;
+import com.njcn.relational.pojo.po.SgConPlantBNewenergy;
+import com.njcn.relational.service.SgConPlantBNewenergyService;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-22
+ * @Description:
+ */
+@Service
+public class SgConPlantBNewenergyServiceImpl
+ extends ServiceImpl
+ implements SgConPlantBNewenergyService {
+
+
+ @Override
+ public boolean batchSyncFromDcloud(JSONArray dataArr) {
+ if (CollUtil.isEmpty(dataArr)) {
+ return true;
+ }
+ List entityList = new ArrayList<>(dataArr.size());
+ for (Object obj : dataArr) {
+ JSONObject json = (JSONObject) obj;
+ SgConPlantBNewenergy entity = new SgConPlantBNewenergy();
+ entity.setId(json.getString("ID"));
+ entity.setCompensationVarCap(json.getBigDecimal("COMPENSATION_VAR_CAP"));
+ entity.setConnectiveStationId(json.getString("CONNECTIVE_STATION_ID"));
+ entity.setEnergyStorageCapacity(json.getBigDecimal("ENERGY_STORAGE_CAPACITY"));
+ entity.setEnergyStorageDeviceCount(json.getInteger("ENERGY_STORAGE_DEVICE_COUNT"));
+ entity.setInverterCount(json.getInteger("INVERTER_COUNT"));
+ entity.setOwner(json.getString("OWNER"));
+ entity.setStamp(json.getString("STAMP"));
+ entity.setTypeNum(json.getInteger("TYPE_NUM"));
+ entity.setWindturbineNum(json.getInteger("WINDTURBINE_NUM"));
+ entity.setGroundType(json.getInteger("GROUND_TYPE"));
+ entity.setFiltNum(json.getInteger("FILT_NUM"));
+ entity.setHourNum(json.getBigDecimal("HOUR_NUM"));
+ entity.setWindtowerNum(json.getInteger("WINDTOWER_NUM"));
+ entity.setPhotometerNum(json.getInteger("PHOTOMETER_NUM"));
+ entity.setWindrange(json.getInteger("WINDRANGE"));
+ entity.setInstallLocation(json.getInteger("INSTALL_LOCATION"));
+ entityList.add(entity);
+ }
+ // 批次500条,主键冲突自动更新
+ return saveOrUpdateBatch(entityList, 500);
+ }
+
+}
\ No newline at end of file
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgDevAclineBServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgDevAclineBServiceImpl.java
new file mode 100644
index 0000000..59382f1
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SgDevAclineBServiceImpl.java
@@ -0,0 +1,86 @@
+package com.njcn.relational.service.impl;
+
+import cn.hutool.core.collection.CollUtil;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.relational.mapper.SgDevAclineBMapper;
+import com.njcn.relational.pojo.po.SgDevAclineB;
+import com.njcn.relational.service.SgDevAclineBService;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-22
+ * @Description:
+ */
+@Service
+public class SgDevAclineBServiceImpl
+ extends ServiceImpl
+ implements SgDevAclineBService {
+
+
+ @Override
+ public boolean batchSyncFromDcloud(JSONArray dataArr) {
+ if (CollUtil.isEmpty(dataArr)) {
+ return true;
+ }
+ List entityList = new ArrayList<>(dataArr.size());
+ for (Object obj : dataArr) {
+ JSONObject json = (JSONObject) obj;
+ SgDevAclineB entity = new SgDevAclineB();
+ entity.setId(json.getString("ID"));
+ entity.setName(json.getString("NAME"));
+ entity.setVoltageType(json.getInteger("VOLTAGE_TYPE"));
+ entity.setGridId(json.getString("GRID_ID"));
+ entity.setSupplierId(json.getString("SUPPLIER_ID"));
+ entity.setSysFlag(json.getString("SYS_FLAG"));
+ entity.setTag(json.getString("TAG"));
+ entity.setAssetsCompanyId(json.getString("ASSETS_COMPANY_ID"));
+ entity.setCheckCode(json.getString("CHECK_CODE"));
+ entity.setCompactZone(json.getString("COMPACT_ZONE"));
+ entity.setDevId(json.getString("DEV_ID"));
+ entity.setDispatchOrgId(json.getString("DISPATCH_ORG_ID"));
+ entity.setStartBayId(json.getString("START_BAY_ID"));
+ entity.setStartStId(json.getString("START_ST_ID"));
+ entity.setStartTowerId(json.getString("START_TOWER_ID"));
+ entity.setEndBayId(json.getString("END_BAY_ID"));
+ entity.setEndStId(json.getString("END_ST_ID"));
+ entity.setEndTowerId(json.getString("END_TOWER_ID"));
+ entity.setErectingmethod(json.getInteger("ERECTINGMETHOD"));
+ entity.setLength(json.getBigDecimal("LENGTH"));
+ entity.setLicenseOrgId(json.getString("LICENSE_ORG_ID"));
+ entity.setLinetype(json.getInteger("LINETYPE"));
+ entity.setMemberFeatureTag(json.getString("MEMBER_FEATURE_TAG"));
+ entity.setStrideFeatureTag(json.getString("STRIDE_FEATURE_TAG"));
+ entity.setIsopticfiberequiped(json.getString("ISOPTICFIBEREQUIPED"));
+ entity.setIsCompact(json.getString("IS_COMPACT"));
+ entity.setOwner(json.getString("OWNER"));
+ entity.setRunningState(json.getInteger("RUNNING_STATE"));
+ entity.setStamp(json.getString("STAMP"));
+
+ // LocalDate 日期字段判空处理
+ if(json.containsKey("EXPIRY_DATE") && json.get("EXPIRY_DATE") != null){
+ entity.setExpiryDate(json.getString("EXPIRY_DATE"));
+ }
+ if(json.containsKey("OFF_TIME") && json.get("OFF_TIME") != null){
+ entity.setOffTime(json.getString("OFF_TIME"));
+ }
+ if(json.containsKey("ON_TIME") && json.get("ON_TIME") != null){
+ entity.setOnTime(json.getString("ON_TIME"));
+ }
+ if(json.containsKey("OPERATE_DATE") && json.get("OPERATE_DATE") != null){
+ entity.setOperateDate(json.getString("OPERATE_DATE"));
+ }
+ entityList.add(entity);
+ }
+ // 批次500条,主键冲突自动更新
+ return saveOrUpdateBatch(entityList, 500);
+ }
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SupervisionUserReportBakServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SupervisionUserReportBakServiceImpl.java
new file mode 100644
index 0000000..0392437
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/SupervisionUserReportBakServiceImpl.java
@@ -0,0 +1,23 @@
+package com.njcn.relational.service.impl;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-23
+ * @Description:
+ */
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.relational.mapper.SupervisionUserReportBakMapper;
+import com.njcn.relational.pojo.po.SupervisionUserReportBak;
+import com.njcn.relational.service.SupervisionUserReportBakService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 监测对象中间关系表 Service实现
+ */
+@Service
+public class SupervisionUserReportBakServiceImpl extends ServiceImpl
+ implements SupervisionUserReportBakService {
+
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserLedgerServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserLedgerServiceImpl.java
new file mode 100644
index 0000000..fef1281
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserLedgerServiceImpl.java
@@ -0,0 +1,20 @@
+package com.njcn.relational.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.relational.mapper.UserReportPOMapper;
+import com.njcn.relational.pojo.po.UserReportPO;
+import com.njcn.relational.service.UserLedgerService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-23
+ * @Description:
+ */
+@Service
+public class UserLedgerServiceImpl extends ServiceImpl implements UserLedgerService {
+
+
+
+
+}
diff --git a/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserReportBakServiceImpl.java b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserReportBakServiceImpl.java
new file mode 100644
index 0000000..528a4cc
--- /dev/null
+++ b/relational_migration/relational_target/src/main/java/com/njcn/relational/service/impl/UserReportBakServiceImpl.java
@@ -0,0 +1,19 @@
+package com.njcn.relational.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
+import com.njcn.relational.pojo.po.UserReportBakPO;
+import com.njcn.relational.service.UserReportBakService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @Author: cdf
+ * @CreateTime: 2026-07-25
+ * @Description:
+ */
+@Service
+public class UserReportBakServiceImpl
+ extends ServiceImpl, UserReportBakPO>
+ implements UserReportBakService {
+
+}
diff --git a/relational_migration/relational_target/src/main/resources/application.yml b/relational_migration/relational_target/src/main/resources/application.yml
index 42ae1c7..79b1b1e 100644
--- a/relational_migration/relational_target/src/main/resources/application.yml
+++ b/relational_migration/relational_target/src/main/resources/application.yml
@@ -10,7 +10,7 @@ spring:
name: dmTransport
profiles:
#active: 二区:query_up 三区:insert_up
- active: insert_up
+ active: insert
security:
user:
name: njcn
diff --git a/relational_migration/relational_target/src/main/resources/static/pages/index.html b/relational_migration/relational_target/src/main/resources/static/pages/index.html
index 88f62dc..3503650 100644
--- a/relational_migration/relational_target/src/main/resources/static/pages/index.html
+++ b/relational_migration/relational_target/src/main/resources/static/pages/index.html
@@ -217,6 +217,10 @@
传输配置
+
+
+ 台账管理
+
刷新
@@ -602,6 +606,13 @@
// window.open('config.html', '_blank');
},
+ goToTaizhang() {
+ // 方式1:当前窗口跳转(独立页面)
+ window.location.href = 'taizhang';
+ // 方式2:新窗口打开(可选)
+ // window.open('config.html', '_blank');
+ },
+
goToLogsPage() {
// 方式1:当前窗口跳转(独立页面)
window.location.href = 'logs';
diff --git a/relational_migration/relational_target/src/main/resources/static/pages/userLedger.html b/relational_migration/relational_target/src/main/resources/static/pages/userLedger.html
new file mode 100644
index 0000000..2fa9d89
--- /dev/null
+++ b/relational_migration/relational_target/src/main/resources/static/pages/userLedger.html
@@ -0,0 +1,356 @@
+
+
+
+
+
+ 用户台账管理
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.state === 1 ? '正常' : '删除' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.state === 1 ? '正常' : '删除' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.userType }}
+
+
+
+
+ {{ row.userStatus }}
+
+
+
+
+
+
+
+ {{ row.status === 1 ? '审批中' : row.status === 2 ? '已通过' : row.status === 3 ? '未通过' : row.status === 4 ? '已取消' : row.status }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+