Compare commits

..

No commits in common. "master" and "物模型服务调用" have entirely different histories.

15 changed files with 153 additions and 164 deletions

View File

@ -1,12 +1,12 @@
# FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/aspnetcore:10.0.05_basic_ub24_dmpv35 AS base
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/aspnetcore:10.0.02_basic_ub24_dmpv35 AS base
WORKDIR /app
EXPOSE 10500
EXPOSE 443
ENV TZ=Asia/Shanghai
ENV ASPNETCORE_ENVIRONMENT=Development
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/netsdk:10.0.201-noble AS build
FROM mcr.microsoft.com/dotnet/sdk:10.0.102 AS build
COPY ["JiShe.IoT.Admin.sln", "."]
COPY ["Directory.Build.JiShe.targets", "."]
COPY ["Directory.Build.Microsoft.targets", "."]

View File

@ -34,12 +34,12 @@
<!--FreeSql-->
<PackageReference Update="FreeSql.Cloud" Version="2.0.1" />
<PackageReference Update="FreeSql.Extensions.JsonMap" Version="3.5.307" />
<PackageReference Update="FreeSql" Version="3.5.307"/>
<PackageReference Update="FreeSql.Provider.MysqlConnector" Version="3.5.307"/>
<PackageReference Update="FreeSql.Provider.Sqlite" Version="3.5.307"/>
<PackageReference Update="FreeSql.Provider.SqlServer" Version="3.5.307" />
<PackageReference Update="FreeSql.Provider.PostgreSQL " Version="3.5.307" />
<PackageReference Update="FreeSql.Extensions.JsonMap" Version="3.5.305" />
<PackageReference Update="FreeSql" Version="3.5.305"/>
<PackageReference Update="FreeSql.Provider.MysqlConnector" Version="3.5.305"/>
<PackageReference Update="FreeSql.Provider.Sqlite" Version="3.5.305"/>
<PackageReference Update="FreeSql.Provider.SqlServer" Version="3.5.305" />
<PackageReference Update="FreeSql.Provider.PostgreSQL " Version="3.5.305" />
<!-- 单元测试包-->
<PackageReference Update="xunit" Version="2.9.3"/>
@ -111,7 +111,7 @@
<!-- Humanizer 中文格式包-->
<PackageReference Update="Humanizer.Core.zh-Hans" Version="2.14.1"/>
<PackageReference Update="Scriban" Version="7.0.6" />
<PackageReference Update="Scriban" Version="6.6.0" />
<PackageReference Update="Otp.NET" Version="1.4.0" />
<PackageReference Update="QRCoder" Version="1.6.0" />
@ -120,7 +120,6 @@
<!--Flurl-->
<PackageReference Update="Flurl.Http" Version="4.0.2" />
<PackageReference Update="Mapster" Version="7.4.0" />
<PackageReference Update="Newtonsoft.Json" Version="13.0.3" />
<!--Apache.IoTDB-->
<PackageReference Update="Apache.IoTDB" Version="2.0.2.15" />

View File

@ -1,6 +1,6 @@
services:
zookeeper:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: zookeeper
hostname: zookeeper
restart: unless-stopped
@ -29,7 +29,7 @@ services:
start_period: 60s
pulsar-cluster-init:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-cluster-init
hostname: pulsar-cluster-init
command: >
@ -42,7 +42,7 @@ services:
- pulsar-net
bookie:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-bookie
hostname: pulsar-bookie
restart: unless-stopped
@ -77,7 +77,7 @@ services:
- pulsar-bookkeeper-data:/pulsar/data/bookkeeper
broker:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-broker
hostname: pulsar-broker
restart: unless-stopped
@ -149,7 +149,7 @@ services:
start_period: 60s
pulsar-init:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-init
hostname: pulsar-init
command: >
@ -183,7 +183,7 @@ services:
- pulsar-net
iotdb-standalone-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.7-standalone
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.6-standalone
hostname: iotdb-standalone
container_name: iotdb-standalone
restart: always
@ -216,7 +216,7 @@ services:
- pulsar-net
redis-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.6.2-alpine3.23
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.0.2-alpine3.21
container_name: redis
restart: always
hostname: redis
@ -237,7 +237,7 @@ services:
- pulsar-net
postgres-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.3-alpine
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.1-alpine
container_name: postgres
hostname: postgres
restart: unless-stopped

View File

@ -1,6 +1,6 @@
services:
iotdb-standalone:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.7-standalone
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.6-standalone
hostname: iotdb-standalone
container_name: iotdb-standalone
restart: "no"

View File

@ -1,6 +1,6 @@
services:
zookeeper:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: zookeeper
hostname: zookeeper
restart: unless-stopped
@ -34,7 +34,7 @@ services:
max-file: "3"
bookie:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-bookie
hostname: pulsar-bookie
restart: unless-stopped
@ -77,7 +77,7 @@ services:
max-file: "3"
broker:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.3
image: registry.cn-qingdao.aliyuncs.com/jisheyun/pulsar:4.1.1
container_name: pulsar-broker
hostname: pulsar-broker
restart: unless-stopped
@ -152,7 +152,7 @@ services:
max-file: "3"
iotdb-standalone-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.7-standalone
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.6-standalone
hostname: iotdb-standalone
container_name: iotdb-standalone
restart: always
@ -190,7 +190,7 @@ services:
max-file: "5"
redis-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.6.2-alpine3.23
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.0.2-alpine3.21
container_name: redis
restart: always
hostname: redis
@ -216,7 +216,7 @@ services:
max-file: "3"
postgres-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.3-alpine
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.1-alpine
container_name: postgres
hostname: postgres
restart: unless-stopped

View File

@ -1,6 +1,6 @@
services:
iotdb-standalone-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.7-standalone
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.6-standalone
hostname: iotdb-standalone
container_name: iotdb-standalone
restart: always
@ -38,7 +38,7 @@ services:
max-file: "5"
redis-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.6.2-alpine3.23
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.0.2-alpine3.21
container_name: redis
restart: always
hostname: redis
@ -64,7 +64,7 @@ services:
max-file: "3"
postgres-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.3-alpine
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.1-alpine
container_name: postgres
hostname: postgres
restart: unless-stopped

View File

@ -1,6 +1,6 @@
services:
iotdb-standalone-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.7-standalone
image: registry.cn-qingdao.aliyuncs.com/jisheyun/iotdb:2.0.6-standalone
hostname: iotdb-standalone
container_name: iotdb-standalone
restart: always
@ -33,7 +33,7 @@ services:
- pulsar-net
redis-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.6.2-alpine3.23
image: registry.cn-qingdao.aliyuncs.com/jisheyun/redis:8.0.2-alpine3.21
container_name: redis
restart: always
hostname: redis
@ -54,7 +54,7 @@ services:
- pulsar-net
postgres-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.3-alpine
image: registry.cn-qingdao.aliyuncs.com/jisheyun/postgres:18.1-alpine
container_name: postgres
hostname: postgres
restart: unless-stopped

View File

@ -1,12 +1,12 @@
# FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/aspnetcore:10.0.05_basic_ub24_dmpv35 AS base
#FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/aspnetcore:9.0.6_ub24_simsun_pdp_v341 AS base
WORKDIR /app
EXPOSE 10500
EXPOSE 443
ENV TZ=Asia/Shanghai
ENV ASPNETCORE_ENVIRONMENT=Development
ENV ASPNETCORE_ENVIRONMENT=Production
FROM registry.cn-qingdao.aliyuncs.com/jisheyun/netsdk:10.0.201-noble AS build
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
COPY ["JiShe.IoT.Admin.sln", "."]
COPY ["Directory.Build.JiShe.targets", "."]
COPY ["Directory.Build.Microsoft.targets", "."]
@ -16,7 +16,6 @@ COPY ["Directory.Build.Volo.targets", "."]
COPY ["NuGet.Config", "."]
COPY ["host/", "host/"]
COPY ["src/", "src/"]
COPY ["JiShe.ServicePro/", "JiShe.ServicePro/"]
WORKDIR /host/JiShe.IoT.HttpApi.Host
@ -27,3 +26,6 @@ FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "JiShe.IoT.HttpApi.Host.dll"]

View File

@ -47,7 +47,7 @@ public class Program
//options.Limits.MaxConcurrentConnections = 1000;//限制并发连接数,默认无限制
});
builder.WebHost.UseUrls($"http://+:10500");
builder.WebHost.UseUrls($"http://+:20500");
var app = builder.Build();
await app.InitializeApplicationAsync();
await app.RunAsync();

View File

@ -5,7 +5,7 @@
},
"ConnectionStrings": {
//"Default": "Data Source=192.168.111.174;Port=13306;Database=JiSheIoTProDB386;uid=root;pwd=JiShe!aqG#5kGgh&0;charset=utf8mb4;Allow User Variables=true;AllowLoadLocalInfile=true;TreatTinyAsBoolean=false;SslMode=None;Pooling=true;"
"Default": "Host=192.168.111.174;Port=5432;Database=jisheiotprodb58;Username=postgres;Password=JiShe!aqG#5kGgh&0;Encoding=UTF8;Pooling=true;Pooling=true;Minimum Pool Size=5;Maximum Pool Size=100;"
"Default": "Host=192.168.111.174;Port=5432;Database=jisheiotprodb;Username=postgres;Password=JiShe!aqG#5kGgh&0;Encoding=UTF8;Pooling=true;Pooling=true;Minimum Pool Size=5;Maximum Pool Size=100;"
},
"Hangfire": {
"Redis": {

View File

@ -237,15 +237,6 @@ namespace JiShe.IoT.IoTPlatformAggregation
}
}
if (!string.IsNullOrWhiteSpace(input.FiledType) && input.FiledType.ToLowerInvariant().Contains("service"))
{
var tempServiceResult = OneNETAllThingModel.GetAllServicesSelectResult(oneNETAllThingModel.Services);
if (tempServiceResult != null)
{
selectResults.AddRange(tempServiceResult);
}
}
var tempPropertyCacheResult = OneNETAllThingModel.GetAllPropertiesSelectResult(oneNETAllThingModel.Properties);
if (tempPropertyCacheResult != null)
{
@ -281,15 +272,6 @@ namespace JiShe.IoT.IoTPlatformAggregation
}
}
if (!string.IsNullOrWhiteSpace(input.FiledType) && input.FiledType.ToLowerInvariant().Contains("service"))
{
var tempEventResult = OneNETAllThingModel.GetAllServicesSelectResult(oneNETAllThingModel.Services);
if (tempEventResult != null)
{
selectResults.AddRange(tempEventResult);
}
}
var tempPropertyResult = OneNETAllThingModel.GetAllPropertiesSelectResult(oneNETAllThingModel.Properties);
if (tempPropertyResult != null)
{

View File

@ -1,41 +1,37 @@
{
"App": {
"SelfUrl": "http://localhost:44315",
"CorsOrigins": "https://*.IoT.com,http://localhost:4200,http://localhost:3100,http://localhost:80,http://10.10.10.104:4200"
},
"ConnectionStrings": {
"Default": "Host=192.168.111.174;Port=5432;Database=jisheiotprodb58;Username=postgres;Password=JiShe!aqG#5kGgh&0;Encoding=UTF8;Pooling=true;Pooling=true;Minimum Pool Size=5;Maximum Pool Size=100;"
"Default": "Host=47.110.53.196;Port=35432;Database=jisheiotprodb68;Username=postgres;Password=JiShe!aqG#5kGgh&0;Encoding=UTF8;Pooling=true;Pooling=true;Minimum Pool Size=5;Maximum Pool Size=100;"
},
"IoTDBOptions": {
"UserName": "root",
"Password": "Lixiao@1980",
//"TreeModelClusterList": [ "192.168.111.174:6667", "47.110.60.222:6667", "47.110.62.104:6667" ],
//"TableModelClusterList": [ "192.168.111.174:6667", "47.110.60.222:6667", "47.110.62.104:6667" ],
"TreeModelClusterList": [ "192.168.111.174:30710" ],
"TableModelClusterList": [ "192.168.111.174:30710" ],
"PoolSize": 32,
"DataBaseName": "jisheiotdata",
"OpenDebugMode": false,
"UseTableSessionPoolByDefault": false
"Hangfire": {
"Redis": {
"Host": "47.110.53.196:30712,password=1q3J@BGf!yhTaD46nS#",
"DB": "2"
}
},
"FreeRedisOptions": {
"ConnectionString": "192.168.111.42:30712,password=1q3J@BGf!yhTaD46nS#,abortConnect=false,connectTimeout=30000,allowAdmin=true,maxPoolSize=500,defaultdatabase=14",
"UseDistributedCache": true
"Redis": {
"Configuration": "47.110.53.196:30712,password=1q3J@BGf!yhTaD46nS#,defaultdatabase=5"
},
"ServerApplicationOptions": {
"ServerTagName": "JiSheCollectBus10",
"FirstCollectionTime": "2025-04-28 15:07:00",
"AutomaticVerificationTime": "16:07:00",
"AutomaticTerminalVersionTime": "17:07:00",
"AutomaticTelematicsModuleTime": "17:30:00",
"AutomaticDayFreezeTime": "02:30:00",
"AutomaticMonthFreezeTime": "03:30:00",
"DefaultProtocolPlugin": "T37612012ProtocolPlugin",
"VerifySignatureToken": "SIcPQnpMgaFDmNlIjNmzq5smshz7cKrh",
"DistributedMessage": 2
"Kafka": {
"BootstrapServers": "47.110.62.104:9094,47.110.53.196:9094,47.110.60.222:9094",
"EnableFilter": true,
"EnableAuthorization": false,
"SaslUserName": "lixiao",
"SaslPassword": "lixiao@1980",
"KafkaReplicationFactor": 3,
"NumPartitions": 30,
"TaskThreadCount": -1
},
"Pulsar": {
"ServiceUrl": "pulsar://47.110.60.222:9093",
"WebUrl": "http://47.110.60.222:9094",
"ServiceUrl": "pulsar://47.110.53.196:9093", //pulsar+ssl://iot-north-mq.heclouds.com:6651 pulsar://47.110.53.196:26974
"WebUrl": "http://47.110.53.196:9094",
"UserName": "admin",
"TenantName": "1YMVZZkAkRArjxSD8457",
"Namespace": "OneNET",
"MessageTTL": 3600,
"PulsarSecretKey": "0fd7afb8b0d04e6abc4fdfdac2190a79",
"PulsarSubscriptionCustomName": "sub",
"EnableTls": false,
@ -48,10 +44,78 @@
"DefaultPartitions": 16,
"DefaultBundles": 16,
"EnableAutoCreation": true, //Topic
"TopicMode": "Static", //Dynamic
"TopicMode": "Static", //DynamicStatic
"EnableTopicTypeFilter": true, //Topic
"AllowedTopicTypes": [ "Static" ], //Topic
"AllowedClusters": [ "pulsar-cluster-1" ], //
"AdminRoles": [ "admin" ]
"AdminRoles": [ "admin" ],
"EnableConsumerIdleCleanup": true,
"ConsumerIdleCleanupMinutes": 120,
"EnableProducerIdleCleanup": true,
"ProducerIdleCleanupMinutes": 60
},
"IoTDBOptions": {
"UserName": "root",
"Password": "Li#xiao@198!0",
//"TreeModelClusterList": [ "47.110.53.196:6667", "47.110.60.222:6667", "47.110.62.104:6667" ],
//"TableModelClusterList": [ "47.110.53.196:6667", "47.110.60.222:6667", "47.110.62.104:6667" ],
"TreeModelClusterList": [ "47.110.53.196:30710" ],
"TableModelClusterList": [ "47.110.53.196:30710" ],
"PoolSize": 32,
"DataBaseName": "jisheiotdata",
"OpenDebugMode": true,
"UseTableSessionPoolByDefault": false,
"BatchInsertSize": 1000
},
"ServerApplicationOptions": {
"ServerTagName": "JiSheCollectBus12",
"FirstCollectionTime": "2025-04-28 15:07:00",
"AutomaticVerificationTime": "16:07:00",
"AutomaticTerminalVersionTime": "17:07:00",
"AutomaticTelematicsModuleTime": "17:30:00",
"AutomaticDayFreezeTime": "02:30:00",
"AutomaticMonthFreezeTime": "03:30:00",
"DefaultProtocolPlugin": "T37612012ProtocolPlugin",
"SignatureToken": "SIcPQnpMgaFDmNlIjNmzq5smshz7cKrh",
"AesSecurityKey": "RPTEIGCA1KvDEXS1",
"IsAesEncrypted": false,
"DistributedMessage": 2,
"SnowflakeWorkerId": 1,
"DownloadDeviceFirmwareBasicUrl": "http://121.42.175.177:32580/Aggregation/Device/DownloadFirmware?Id=",
"MQTTServerType": 1
},
"Jwt": {
"Audience": "JiShe.IoT",
"SecurityKey": "dzehzRz9a8asdfaf43ghVD@d#fasdfaf567sdadfasdf=",
"Issuer": "JiShe.IoT",
"ExpirationTime": 2
},
"Cap": {
"RabbitMq": {
"HostName": "localhost",
"UserName": "admin",
"Password": "1q2w3E*",
"Port": 5672
}
},
"FreeRedisOptions": {
"ConnectionString": "47.110.53.196:30712,password=1q3J@BGf!yhTaD46nS#,abortConnect=false,connectTimeout=30000,allowAdmin=true,maxPoolSize=500,defaultdatabase=14",
"UseDistributedCache": true
},
"FreeSqlProviderOptions": {
"UsePrepayDB": false,
"UseEnergyDB": false,
"PrintLog": false,
"DataType": 1
},
"OneNETSecureReceiveOptions": {
"OneNETVerifySignatureToken": "SIcPQnpMgaFDmNlIjNmzq5smshz7cKrh",
"OneNETAesKey": "RPTEIGCA1KvDEXS1"
},
"DataChannelOptions": {
"DefaultBatchSize": 10000,
"TelemetryBatchSize": 10000,
"EmptyWaitmilliseconds": 500,
"TimeoutMilliseconds": 500
}
}

View File

@ -5,6 +5,7 @@ using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Newtonsoft.Json.Linq;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using Volo.Abp.EntityFrameworkCore;
@ -13,7 +14,7 @@ using Volo.Abp.EntityFrameworkCore;
namespace JiShe.IoT.Migrations
{
[DbContext(typeof(IoTDbContext))]
[Migration("20260403061310_InitialCreate")]
[Migration("20260320152205_InitialCreate")]
partial class InitialCreate
{
/// <inheritdoc />
@ -536,8 +537,8 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(256)");
b.Property<string>("ExtendedAttributeValue")
.HasColumnType("jsonb")
.HasComment("扩展属性值信息");
.HasMaxLength(2048)
.HasColumnType("character varying(2048)");
b.Property<bool>("IsEnabled")
.HasColumnType("boolean");
@ -753,18 +754,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("integer")
.HasComment("设备类型,与业务系统无关,主要区分是网关设备、直连设备");
b.Property<int>("EncryptionMethod")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(1)
.HasComment("设备鉴权加密方式");
b.Property<int>("EncryptionType")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(1)
.HasComment("设备加密类型,类型不同给,鉴权路径资源不同,默认为一型一密");
b.Property<string>("ExtraProperties")
.HasColumnType("text")
.HasColumnName("ExtraProperties")
@ -837,10 +826,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("timestamp with time zone")
.HasComment("最后在线时间");
b.Property<bool?>("NeedEquipmentProductionPlan")
.HasColumnType("boolean")
.HasComment("是否需要设备生产计划");
b.Property<int?>("OSACreatorId")
.HasColumnType("integer")
.HasComment("旧系统授权创建者Id");
@ -869,10 +854,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("text")
.HasComment("备注");
b.Property<string>("SimCardInfo")
.HasColumnType("jsonb")
.HasComment("SIM卡信息");
b.Property<int>("SubDeviceCapacity")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
@ -1189,12 +1170,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(256)")
.HasComment("指令名称");
b.Property<int>("CommandType")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(0)
.HasComment("指令类型");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.IsRequired()
@ -1592,9 +1567,7 @@ namespace JiShe.IoT.Migrations
.HasComment("物模型标识符访问模式");
b.Property<string>("CallServiceOperateCommand")
.HasMaxLength(128)
.HasColumnType("character varying(128)")
.HasComment("服务调用参数通用指令,物模型服务类才有,一般用于保存操作子设备时的透明转发指令。");
.HasColumnType("text");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
@ -1649,7 +1622,7 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(64)")
.HasComment("物联网平台中对应的产品物模型属性或者事件数据类型");
b.Property<string>("IoTPlatformRawFieldExtension")
b.Property<JToken>("IoTPlatformRawFieldExtension")
.HasColumnType("jsonb")
.HasComment("物联网平台中对应产品物模型标识符扩展,结构体或者数组的时候,是参数的名称与长度的键值对,其他类型就是长度或者值范围");
@ -1707,7 +1680,7 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(64)")
.HasComment("管理后台产品标准的物模型属性或者事件名称");
b.Property<string>("StandardFieldFieldExtension")
b.Property<JToken>("StandardFieldFieldExtension")
.HasColumnType("jsonb")
.HasComment("标准物模型字段标识符扩展,数组或者结构体时候的参数或者元素名称集合");

View File

@ -1,5 +1,6 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
using Newtonsoft.Json.Linq;
#nullable disable
@ -761,10 +762,6 @@ namespace JiShe.IoT.Migrations
UpgradeDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: true, comment: "升级日期"),
SubDeviceCapacity = table.Column<int>(type: "integer", nullable: false, defaultValue: 64, comment: "子设备容量"),
ReadingMode = table.Column<int>(type: "integer", nullable: false, defaultValue: 1, comment: "抄读模式"),
SimCardInfo = table.Column<string>(type: "jsonb", nullable: true, comment: "SIM卡信息"),
EncryptionType = table.Column<int>(type: "integer", nullable: false, defaultValue: 1, comment: "设备加密类型,类型不同给,鉴权路径资源不同,默认为一型一密"),
EncryptionMethod = table.Column<int>(type: "integer", nullable: false, defaultValue: 1, comment: "设备鉴权加密方式"),
NeedEquipmentProductionPlan = table.Column<bool>(type: "boolean", nullable: true, comment: "是否需要设备生产计划"),
ConcurrencyStamp = table.Column<string>(type: "character varying(40)", maxLength: 40, nullable: false),
CreationTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
CreatorId = table.Column<Guid>(type: "uuid", nullable: true),
@ -793,7 +790,6 @@ namespace JiShe.IoT.Migrations
Id = table.Column<Guid>(type: "uuid", nullable: false),
DeviceThingModelId = table.Column<Guid>(type: "uuid", nullable: false, comment: "设备端物模型Id"),
IoTPlatform = table.Column<int>(type: "integer", nullable: false, comment: "物联网平台类型"),
CommandType = table.Column<int>(type: "integer", nullable: false, defaultValue: 0, comment: "指令类型"),
IoTPlatformProductId = table.Column<string>(type: "character varying(50)", maxLength: 50, nullable: false, comment: "物联网平台中对应的产品Id"),
CommandName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: false, comment: "指令名称"),
IssueCommand = table.Column<string>(type: "character varying(512)", maxLength: 512, nullable: false, comment: "完整的单个下发指令"),
@ -943,17 +939,17 @@ namespace JiShe.IoT.Migrations
FiledType = table.Column<string>(type: "character varying(50)", maxLength: 50, nullable: false, comment: "物联网平台中对应产品物模型属性或者事件类型"),
IoTPlatformRawFieldName = table.Column<string>(type: "character varying(64)", maxLength: 64, nullable: false, comment: "物联网平台中对应的产品物模型属性或者事件名称"),
IoTPlatformRawFieldDataType = table.Column<string>(type: "character varying(64)", maxLength: 64, nullable: true, comment: "物联网平台中对应的产品物模型属性或者事件数据类型"),
IoTPlatformRawFieldExtension = table.Column<string>(type: "jsonb", nullable: true, comment: "物联网平台中对应产品物模型标识符扩展,结构体或者数组的时候,是参数的名称与长度的键值对,其他类型就是长度或者值范围"),
IoTPlatformRawFieldExtension = table.Column<JToken>(type: "jsonb", nullable: true, comment: "物联网平台中对应产品物模型标识符扩展,结构体或者数组的时候,是参数的名称与长度的键值对,其他类型就是长度或者值范围"),
StandardFieldName = table.Column<string>(type: "character varying(64)", maxLength: 64, nullable: false, comment: "管理后台产品标准的物模型属性或者事件名称"),
StandardFieldValueType = table.Column<string>(type: "character varying(20)", maxLength: 20, nullable: false, comment: "标准物模型字段值类型"),
StandardFieldDisplayName = table.Column<string>(type: "character varying(64)", maxLength: 64, nullable: false, comment: "管理后台产品标准的物模型属性或者事件名称"),
StandardFieldFieldExtension = table.Column<string>(type: "jsonb", nullable: true, comment: "标准物模型字段标识符扩展,数组或者结构体时候的参数或者元素名称集合"),
StandardFieldFieldExtension = table.Column<JToken>(type: "jsonb", nullable: true, comment: "标准物模型字段标识符扩展,数组或者结构体时候的参数或者元素名称集合"),
IsValueNeedConvert = table.Column<bool>(type: "boolean", nullable: false, comment: "是否需要值类型转换"),
IsSpecialIdentifier = table.Column<bool>(type: "boolean", nullable: false, comment: "是否是特殊物模型标识符"),
IsOperableIdentifier = table.Column<bool>(type: "boolean", nullable: false, comment: "是否可操作物模型标识符"),
AccessMode = table.Column<string>(type: "character varying(10)", maxLength: 10, nullable: false, defaultValue: "r", comment: "物模型标识符访问模式"),
IdentifierType = table.Column<int>(type: "integer", nullable: false, comment: "物模型标识符类型"),
CallServiceOperateCommand = table.Column<string>(type: "character varying(128)", maxLength: 128, nullable: true, comment: "服务调用参数通用指令,物模型服务类才有,一般用于保存操作子设备时的透明转发指令。"),
CallServiceOperateCommand = table.Column<string>(type: "text", nullable: true),
ConcurrencyStamp = table.Column<string>(type: "character varying(40)", maxLength: 40, nullable: false),
CreationTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
CreatorId = table.Column<Guid>(type: "uuid", nullable: true),
@ -1246,7 +1242,7 @@ namespace JiShe.IoT.Migrations
Description = table.Column<string>(type: "character varying(1024)", maxLength: 1024, nullable: true),
IsEnabled = table.Column<bool>(type: "boolean", nullable: false),
ExtendedAttribute = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
ExtendedAttributeValue = table.Column<string>(type: "jsonb", nullable: true, comment: "扩展属性值信息"),
ExtendedAttributeValue = table.Column<string>(type: "character varying(2048)", maxLength: 2048, nullable: true),
CreationTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
CreatorId = table.Column<Guid>(type: "uuid", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),

View File

@ -4,6 +4,7 @@ using JiShe.IoT.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Newtonsoft.Json.Linq;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using Volo.Abp.EntityFrameworkCore;
@ -533,8 +534,8 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(256)");
b.Property<string>("ExtendedAttributeValue")
.HasColumnType("jsonb")
.HasComment("扩展属性值信息");
.HasMaxLength(2048)
.HasColumnType("character varying(2048)");
b.Property<bool>("IsEnabled")
.HasColumnType("boolean");
@ -750,18 +751,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("integer")
.HasComment("设备类型,与业务系统无关,主要区分是网关设备、直连设备");
b.Property<int>("EncryptionMethod")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(1)
.HasComment("设备鉴权加密方式");
b.Property<int>("EncryptionType")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(1)
.HasComment("设备加密类型,类型不同给,鉴权路径资源不同,默认为一型一密");
b.Property<string>("ExtraProperties")
.HasColumnType("text")
.HasColumnName("ExtraProperties")
@ -834,10 +823,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("timestamp with time zone")
.HasComment("最后在线时间");
b.Property<bool?>("NeedEquipmentProductionPlan")
.HasColumnType("boolean")
.HasComment("是否需要设备生产计划");
b.Property<int?>("OSACreatorId")
.HasColumnType("integer")
.HasComment("旧系统授权创建者Id");
@ -866,10 +851,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("text")
.HasComment("备注");
b.Property<string>("SimCardInfo")
.HasColumnType("jsonb")
.HasComment("SIM卡信息");
b.Property<int>("SubDeviceCapacity")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
@ -1186,12 +1167,6 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(256)")
.HasComment("指令名称");
b.Property<int>("CommandType")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasDefaultValue(0)
.HasComment("指令类型");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.IsRequired()
@ -1589,9 +1564,7 @@ namespace JiShe.IoT.Migrations
.HasComment("物模型标识符访问模式");
b.Property<string>("CallServiceOperateCommand")
.HasMaxLength(128)
.HasColumnType("character varying(128)")
.HasComment("服务调用参数通用指令,物模型服务类才有,一般用于保存操作子设备时的透明转发指令。");
.HasColumnType("text");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
@ -1646,7 +1619,7 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(64)")
.HasComment("物联网平台中对应的产品物模型属性或者事件数据类型");
b.Property<string>("IoTPlatformRawFieldExtension")
b.Property<JToken>("IoTPlatformRawFieldExtension")
.HasColumnType("jsonb")
.HasComment("物联网平台中对应产品物模型标识符扩展,结构体或者数组的时候,是参数的名称与长度的键值对,其他类型就是长度或者值范围");
@ -1704,7 +1677,7 @@ namespace JiShe.IoT.Migrations
.HasColumnType("character varying(64)")
.HasComment("管理后台产品标准的物模型属性或者事件名称");
b.Property<string>("StandardFieldFieldExtension")
b.Property<JToken>("StandardFieldFieldExtension")
.HasColumnType("jsonb")
.HasComment("标准物模型字段标识符扩展,数组或者结构体时候的参数或者元素名称集合");