This commit is contained in:
@@ -8,6 +8,8 @@ namespace AyaNova.DataList
|
||||
{
|
||||
DefaultListAType = AyaType.WorkOrder;
|
||||
SQLFrom = "from aworkorder "
|
||||
// + "left join lateral (select id, workorderstatusid, workorderid from aworkorderstate st where workorderid = aworkorder.id order by st.id DESC limit 1) st on aworkorder.id=st.workorderid "
|
||||
+ "left join aworkorderstatus on (aworkorder.laststatusid = aworkorderstatus.id) "
|
||||
+ "left join acustomer on (aworkorder.customerid=acustomer.id) "
|
||||
+ "left join aheadoffice on (acustomer.headofficeid=aheadoffice.id) "
|
||||
+ "left join aproject on (aworkorder.projectid=aproject.id) "
|
||||
@@ -49,6 +51,16 @@ namespace AyaNova.DataList
|
||||
SqlValueColumnName = "aheadoffice.name"
|
||||
});
|
||||
|
||||
FieldDefinitions.Add(new DataListFieldDefinition
|
||||
{
|
||||
TKey = "WorkOrderStatus",
|
||||
FieldKey = "WorkOrderStatus",
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
AType = (int)AyaType.WorkOrderStatus,
|
||||
SqlIdColumnName = "aworkorder.laststatusid",
|
||||
SqlValueColumnName = "aworkorderstatus.name"
|
||||
});
|
||||
|
||||
FieldDefinitions.Add(new DataListFieldDefinition
|
||||
{
|
||||
TKey = "WorkOrderSummary",
|
||||
|
||||
@@ -1309,6 +1309,9 @@ namespace AyaNova.Biz
|
||||
else
|
||||
{
|
||||
await ct.WorkOrderState.AddAsync(newObject);
|
||||
var wo=await ct.WorkOrder.FirstOrDefaultAsync(x=>x.Id==newObject.WorkOrderId);
|
||||
wo.LastStatusId=newObject.WorkOrderStatusId;
|
||||
|
||||
await ct.SaveChangesAsync();
|
||||
await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, newObject.Id, AyaType.WorkOrderStatus, AyaEvent.Created), ct);
|
||||
await StateHandlePotentialNotificationEvent(AyaEvent.Created, newObject);
|
||||
|
||||
@@ -56,6 +56,10 @@ namespace AyaNova.Models
|
||||
[NotMapped]
|
||||
public string ContractViz { get; set; }
|
||||
|
||||
//redundant field to speed up list queries
|
||||
//(added after status system already coded)
|
||||
public long? LastStatusId { get; set; }
|
||||
|
||||
|
||||
//POSTAL ADDRESS / "BILLING ADDRESS"
|
||||
public string PostAddress { get; set; }
|
||||
|
||||
@@ -22,16 +22,16 @@ namespace AyaNova.Util
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!
|
||||
private const int DESIRED_SCHEMA_LEVEL = 1;
|
||||
|
||||
internal const long EXPECTED_COLUMN_COUNT = 956;
|
||||
internal const long EXPECTED_COLUMN_COUNT = 957;
|
||||
internal const long EXPECTED_INDEX_COUNT = 137;
|
||||
internal const long EXPECTED_CHECK_CONSTRAINTS = 415;
|
||||
internal const long EXPECTED_FOREIGN_KEY_CONSTRAINTS = 117;
|
||||
internal const long EXPECTED_FOREIGN_KEY_CONSTRAINTS = 118;
|
||||
internal const long EXPECTED_VIEWS = 6;
|
||||
internal const long EXPECTED_ROUTINES = 2;
|
||||
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!
|
||||
|
||||
///////////////////////////////////////////////////////////////// C957:I137:CC415:FC117:V6:R2 C957:I137:CC415:FC117:V6:R2
|
||||
///////////////////////////////////////////////////////////////// C957:I137:CC415:FC118:V6:R2
|
||||
|
||||
/*
|
||||
|
||||
@@ -772,7 +772,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
|
||||
//WORKORDER
|
||||
await ExecQueryAsync("CREATE TABLE aworkorder (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, serial BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL, "
|
||||
+ "notes TEXT, wiki TEXT, customfields TEXT, tags VARCHAR(255) ARRAY, customerid BIGINT NOT NULL REFERENCES acustomer (id), "
|
||||
+ "projectid BIGINT REFERENCES aproject, contractid BIGINT NULL, internalreferencenumber text, customerreferencenumber text, customercontactname text, "
|
||||
+ "projectid BIGINT REFERENCES aproject, laststatusid BIGINT REFERENCES aworkorderstatus(id), contractid BIGINT NULL, internalreferencenumber text, customerreferencenumber text, customercontactname text, "
|
||||
+ "servicedate TIMESTAMP, completebydate TIMESTAMP, invoicenumber TEXT, customersignature TEXT, customersignaturename TEXT, customersignaturecaptured TIMESTAMP, "
|
||||
+ "techsignature TEXT, techsignaturename TEXT, techsignaturecaptured TIMESTAMP, durationtocompleted INTERVAL NOT NULL, onsite BOOL NOT NULL, "
|
||||
+ "postaddress TEXT, postcity TEXT, postregion TEXT, postcountry TEXT, postcode TEXT, address TEXT, city TEXT, region TEXT, country TEXT, latitude DECIMAL(9,6), longitude DECIMAL(9,6) "
|
||||
|
||||
@@ -2888,6 +2888,7 @@ namespace AyaNova.Util
|
||||
Created = ((DateTime)o.ServiceDate).AddHours(2)
|
||||
};
|
||||
o.States.Add(WoState);
|
||||
o.LastStatusId=WoState.WorkOrderStatusId;//simulate if user added state to wo so it gets set
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user