Files
sockeye/server/DataList/LicenseDataList.cs
2022-12-29 23:08:09 +00:00

129 lines
6.4 KiB
C#

using System.Collections.Generic;
using System.Linq;
using Sockeye.Biz;
using Sockeye.Models;
namespace Sockeye.DataList
{
internal class LicenseDataList : DataListProcessingBase
{
public LicenseDataList(long translationId)
{
DefaultListAType = SockType.License;
SQLFrom = @"FROM alicense LEFT JOIN acustomer ON (alicense.customerid = acustomer.id)";
var RoleSet = BizRoles.GetRoleSet(DefaultListAType);
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
DefaultColumns = new List<string>() { "licensecreated", "licenseregto", "licensecustomer", "LicenseFetchedOn", "licensetags" };
DefaultSortBy = new Dictionary<string, string>() { { "licensecreated", "-" } };
FieldDefinitions = new List<DataListFieldDefinition>();
/*
"License": "License",
"LicenseCompanyName": "Company name",
"LicenseContactName": "Contact name",
"LicensedOptions": "Licensed options",
"LicenseEmail": "Email address",
"LicenseEmailVerficationHint": "(Address will be verified)",
"LicenseExpiration": "License expiration date",
"LicenseSerial": "License serial number",
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseList', 'Licenses' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseRegTo', 'Registered to' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseKey', 'License key' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseFetchCode', 'Fetch code' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseFetchEmail', 'Fetch email' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseFetchedOn', 'Fetched date' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseDBID', 'DBID' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'LicenseMaintenanceExpire', 'Maintenance expire to' FROM atranslation t where t.baselanguage = 'en'");
"CREATE TABLE alicense (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, created TIMESTAMPTZ NOT NULL, "
+ "customerid BIGINT NOT NULL REFERENCES acustomer(id), regto TEXT NOT NULL, key TEXT NOT NULL, fetchcode TEXT, fetchemail TEXT, "
+ "fetchedon TIMESTAMPTZ, dbid TEXT, licenseexpire TIMESTAMPTZ, maintenanceexpire TIMESTAMPTZ NOT NULL, "
+ "wiki TEXT, tags VARCHAR(255) ARRAY )");
*/
// FieldDefinitions.Add(new DataListFieldDefinition
// {
// TKey = "LicenseSerial",
// FieldKey = "licenseid",
// SockType = (int)SockType.License,
// UiFieldDataType = (int)UiFieldDataType.Integer,
// SqlIdColumnName = "alicense.id",
// SqlValueColumnName = "alicense.id",
// IsRowId = true
// });
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Created",
FieldKey = "licensecreated",
SockType = (int)SockType.License,
UiFieldDataType = (int)UiFieldDataType.DateTime,
SqlIdColumnName = "alicense.id",
SqlValueColumnName = "alicense.created",
IsRowId = true
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "LicenseRegTo",
FieldKey = "licenseregto",
SockType = (int)SockType.License,
UiFieldDataType = (int)UiFieldDataType.Text,
SqlIdColumnName = "alicense.id",
SqlValueColumnName = "alicense.regto"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Customer",
FieldKey = "licensecustomer",
SockType = (int)SockType.Customer,
UiFieldDataType = (int)UiFieldDataType.Text,
SqlIdColumnName = "alicense.customerid",
SqlValueColumnName = "acustomer.name"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Tags",
FieldKey = "licensetags",
UiFieldDataType = (int)UiFieldDataType.Tags,
SqlValueColumnName = "alicense.tags"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "LicenseMaintenanceExpire",
FieldKey = "licensemaintexpire",
UiFieldDataType = (int)UiFieldDataType.DateTime,
SqlValueColumnName = "alicense.maintenanceexpire"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "LicenseExpiration",
FieldKey = "licenseexpire",
UiFieldDataType = (int)UiFieldDataType.DateTime,
SqlValueColumnName = "alicense.licenseexpire"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "LicenseFetchedOn",
FieldKey = "LicenseFetchedOn",
UiFieldDataType = (int)UiFieldDataType.DateTime,
SqlValueColumnName = "alicense.fetchedon"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "DatabaseID",
FieldKey = "DatabaseID",
UiFieldDataType = (int)UiFieldDataType.Text,
SqlValueColumnName = "alicense.dbid"
});
}
}//eoc
}//eons