diff --git a/server/AyaNova/biz/WorkOrderBiz.cs b/server/AyaNova/biz/WorkOrderBiz.cs index 976f6f52..a8738f04 100644 --- a/server/AyaNova/biz/WorkOrderBiz.cs +++ b/server/AyaNova/biz/WorkOrderBiz.cs @@ -320,18 +320,19 @@ namespace AyaNova.Biz internal async Task 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 = "-"; }