This commit is contained in:
@@ -320,18 +320,19 @@ namespace AyaNova.Biz
|
||||
internal async Task<WorkOrder> ChangeContract(long workOrderId, long? newContractId)
|
||||
{
|
||||
//this is called by UI via contract change route for contract change only and expects wo back to update client ui
|
||||
var w=await ct.WorkOrder.FirstOrDefaultAsync(z=>z.Id==workOrderId);
|
||||
var w = await ct.WorkOrder.FirstOrDefaultAsync(z => z.Id == workOrderId);
|
||||
|
||||
if (w==null)
|
||||
if (w == null)
|
||||
{
|
||||
AddError(ApiErrorCode.NOT_FOUND, "id");
|
||||
return null;
|
||||
}
|
||||
if(newContractId!=null && !await ct.Contract.AnyAsync(z=>z.Id==newContractId)){
|
||||
AddError(ApiErrorCode.NOT_FOUND,"generalerror", $"Contract with id {newContractId} not found");
|
||||
if (newContractId != null && !await ct.Contract.AnyAsync(z => z.Id == newContractId))
|
||||
{
|
||||
AddError(ApiErrorCode.NOT_FOUND, "generalerror", $"Contract with id {newContractId} not found");
|
||||
return null;
|
||||
}
|
||||
w.ContractId=newContractId;
|
||||
w.ContractId = newContractId;
|
||||
await ct.SaveChangesAsync();
|
||||
await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, workOrderId, BizType, AyaEvent.Modified), ct);
|
||||
await GetCurrentContractFromContractIdAsync(newContractId);
|
||||
@@ -656,13 +657,25 @@ namespace AyaNova.Biz
|
||||
await ItemPopulateVizFields(v);
|
||||
|
||||
//popup Alert notes
|
||||
o.AlertViz = await ct.Customer.AsNoTracking().Where(x => x.Id == o.CustomerId).Select(x => x.PopUpNotes).FirstOrDefaultAsync();
|
||||
//Customer notes first then others below
|
||||
var customerAlert = await ct.Customer.AsNoTracking().Where(x => x.Id == o.CustomerId).Select(x => x.PopUpNotes).FirstOrDefaultAsync();
|
||||
if (!string.IsNullOrWhiteSpace(customerAlert))
|
||||
{
|
||||
o.AlertViz = $"{await Translate("Customer")}:\n{customerAlert}";
|
||||
}
|
||||
|
||||
if (o.ProjectId != null)
|
||||
o.ProjectViz = await ct.Project.AsNoTracking().Where(x => x.Id == o.ProjectId).Select(x => x.Name).FirstOrDefaultAsync();
|
||||
|
||||
if (o.ContractId != null)
|
||||
o.ContractViz = await ct.Contract.AsNoTracking().Where(x => x.Id == o.ContractId).Select(x => x.Name).FirstOrDefaultAsync();
|
||||
{
|
||||
var contractVizFields = await ct.Contract.AsNoTracking().Where(x => x.Id == o.ContractId).Select(x => new { name = x.Name, alert = x.AlertNotes }).FirstOrDefaultAsync();
|
||||
o.ContractViz = contractVizFields.name;
|
||||
if (!string.IsNullOrWhiteSpace(contractVizFields.alert))
|
||||
{
|
||||
o.AlertViz += $"\n\n{await Translate("Contract")}:\n{contractVizFields.alert}";
|
||||
}
|
||||
}
|
||||
else
|
||||
o.ContractViz = "-";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user