This commit is contained in:
2022-07-08 18:48:02 +00:00
parent 25d785ba38
commit bb231437d0
3 changed files with 83 additions and 1 deletions

View File

@@ -333,6 +333,50 @@ namespace AyaNova.Biz
return ret;
}
////////////////////////////////////////////////////////////////////////////////////////////////
// GET accounting billable list
//
internal async Task<List<WorkOrderAccountingListItem>> GetAccountingListBillable(long workOrderStatusId)
{
//if a specific status is requested then it doesn't matter if it's locked or not but if a specific status is not requested then any locked status is acceptable
string statusFragment=workOrderStatusId==0?"and aworkorderstatus.locked=true":$"and aworkorder.laststatusid={workOrderStatusId}";
var ret = new List<WorkOrderAccountingListItem>();
using (var command = ct.Database.GetDbConnection().CreateCommand())
{
await ct.Database.OpenConnectionAsync();
command.CommandText = @$"select
aworkorder.id, aworkorder.customerid, aworkorder.serial, aworkorder.servicedate,
acustomer.name as customername, aproject.name as projectname,
aworkorderstatus.name as statusname, aworkorderstatus.color
from aworkorder
left join acustomer on (aworkorder.customerid=acustomer.id)
left join aworkorderstatus on (aworkorder.laststatusid = aworkorderstatus.id)
left join aproject on (aworkorder.projectid=aproject.id)
where
aworkorder.invoicenumber is null
{statusFragment}
order by aworkorder.serial asc";
using (var dr = await command.ExecuteReaderAsync())
if (dr.HasRows)
{
if (await dr.ReadAsync())
{
// o.LastWorkOrderViz = dr.GetInt64(0);
// o.LastServiceDateViz = dr.GetDateTime(1);
}
}
await ct.Database.CloseConnectionAsync();
}
return ret;
}
////////////////////////////////////////////////////////////////////////////////////////////////
//UPDATE
//