160 lines
5.2 KiB
C#
160 lines
5.2 KiB
C#
|
|
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
|
using Microsoft.VisualBasic;
|
|
using MySqlConnector;
|
|
using System.Data.Common;
|
|
using System.Xml.Linq;
|
|
using TWASys_App.Dapper.AExtentions;
|
|
using TWASys_App.DBModels;
|
|
|
|
namespace TWASys_App.Models
|
|
{
|
|
public class StorageModel : ModelBase
|
|
{
|
|
public long StorageTypeID { set; get; }
|
|
|
|
public string ControllerName { set; get; } = "";
|
|
|
|
public string StorageName { set; get; } = "";
|
|
|
|
public ICollection<ValidationDomain> ValidationDomains { set; get; } = new List<ValidationDomain>();
|
|
|
|
public string IpPublic { set; get; } = "";
|
|
|
|
public string IpPrivatev4 { set; get; } = "";
|
|
|
|
public string IpPrivatev6 { set; get; } = "";
|
|
|
|
public string OsName { set; get; } = "";
|
|
|
|
public string OsPlatform { set; get; } = "";
|
|
|
|
public string OsVersion { set; get; } = "";
|
|
|
|
public string OsKernel { set; get; } = "";
|
|
|
|
public string OsArch { set; get; } = "";
|
|
|
|
public string BiosSN { set; get; } = "";
|
|
public string BiosVendor { set; get; } = "";
|
|
|
|
public string BiosUUID { set; get; } = "";
|
|
|
|
public int SocketN { set; get; }
|
|
|
|
public string CpuName { set; get; } = "";
|
|
|
|
public float TotalRam { set; get; }
|
|
|
|
public string TokenID { set; get; } = "";
|
|
|
|
public string TokenValue { set; get; } = "";
|
|
|
|
public string RTokenID { set; get; } = "";
|
|
|
|
public string RTokenValue { set; get; } = "";
|
|
|
|
public override async Task<MessageHeader> AddAsync()
|
|
{
|
|
await using var con = new MySqlConnector.MySqlConnection(DBManagement.GetConnectionString(true));
|
|
|
|
await con.OpenAsync();
|
|
var trans = await con.BeginTransactionAsync();
|
|
var f = new MessageHeader();
|
|
try
|
|
{
|
|
var localServer = new LocalServer
|
|
{
|
|
IpPrivateServer = IpPrivatev4,
|
|
IpPrivateServerv6 = IpPrivatev6,
|
|
IpPublicServer = IpPublic,
|
|
PathServer = "",
|
|
SerialNumber = BiosSN,
|
|
OsVersion = OsVersion,
|
|
OsName = OsName,
|
|
OsArch = OsArch,
|
|
OsKernal = OsKernel,
|
|
SocketNum = SocketN,
|
|
CpuName = CpuName,
|
|
TotalRam = TotalRam,
|
|
BiosVender = BiosVendor,
|
|
ProductUuid = BiosUUID,
|
|
Status = 0
|
|
};//idTypeStorageServer
|
|
var storageServer = new StorageServer
|
|
{
|
|
IdEmp = null,
|
|
IdTypeStorageServer = StorageTypeID,
|
|
StorageName = StorageName,
|
|
CreateDate = DateTime.UtcNow,
|
|
ControllerID = ControllerName,
|
|
Status = 0
|
|
};
|
|
var ss_lc = new StorageServer_has_LocalServer
|
|
{
|
|
IdStorageServer = storageServer.IdStorageServer,
|
|
IdLocalServer = localServer.IdLocalServer,
|
|
CreateDate = DateTime.UtcNow,
|
|
ModifyDate = null,
|
|
Status = 0
|
|
};
|
|
|
|
var serverAuthorization = new ServerAuthorization
|
|
{
|
|
IdStorageServer = storageServer.IdStorageServer,
|
|
CreateDate = DateTime.UtcNow,
|
|
Count = 1,
|
|
Status = 0
|
|
};
|
|
var token = new Token
|
|
{
|
|
IdToken = TokenID,
|
|
AccessToken = TokenValue,
|
|
CreateDate = DateTime.UtcNow,
|
|
ExpireDate = DateTime.UtcNow.AddMonths(3),
|
|
Status = 0
|
|
};
|
|
var rT = new RefreshToken
|
|
{
|
|
IdRefreshToken = RTokenID,
|
|
IdServerAuthorization = serverAuthorization.IdServerAuthorization,
|
|
__RefreshToken = RTokenValue,
|
|
CreateDate = DateTime.UtcNow,
|
|
ExpireDate = DateTime.UtcNow.AddMonths(9),
|
|
Status = 0
|
|
};
|
|
BatchInsert bi = new BatchInsert(con, trans);
|
|
bi.AddRow(localServer);
|
|
bi.AddRow(storageServer);
|
|
bi.AddRow(ss_lc);
|
|
bi.AddRow(serverAuthorization);
|
|
bi.AddRow(token);
|
|
bi.AddRow(rT);
|
|
await bi.ExcuteQuery();
|
|
await trans.CommitAsync();
|
|
f.Status = 1;
|
|
f.Message = "OK";
|
|
}
|
|
catch (DbException ex)
|
|
{
|
|
await trans.RollbackAsync();
|
|
await trans.DisposeAsync();
|
|
f.Status = 0;
|
|
f.Message = ex.Message;
|
|
f.ID = 61031;
|
|
}
|
|
return f;
|
|
}
|
|
|
|
public override Task<MessageHeader> DeleteAsync()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
public override Task<MessageHeader> UpdateAsync()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|