This commit is contained in:
2021-03-16 23:11:19 +00:00
parent 7cd7144426
commit 1bc42a5c55
2 changed files with 13 additions and 2 deletions

View File

@@ -495,9 +495,11 @@ MULTIPLE discount / markup ITEMS
//cache enum list
var ContractOverrideTypeEnumList = await AyaNova.Api.Controllers.EnumListController.GetEnumList(StringUtil.TrimTypeName(typeof(ContractOverrideType).ToString()), UserTranslationId);
//cache translations needed
var PreTrans = await TranslationBiz.GetSubsetStaticAsync(new List<string> { "TimeSpanDays", "TimeSpanHours", "TimeSpanMinutes", "TimeSpanSeconds" }, UserTranslationId);
foreach (Contract w in orderedList)
{
await PopulateVizFields(w, ContractOverrideTypeEnumList);
await PopulateVizFields(w, ContractOverrideTypeEnumList, PreTrans);
var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);
@@ -508,10 +510,17 @@ MULTIPLE discount / markup ITEMS
}
//populate viz fields from provided object
private async Task PopulateVizFields(Contract o, List<NameIdItem> contractOverrideTypeEnumList = null)
private async Task PopulateVizFields(Contract o, List<NameIdItem> contractOverrideTypeEnumList = null, Dictionary<string, string> preTrans = null)
{
if (contractOverrideTypeEnumList == null)
contractOverrideTypeEnumList = await AyaNova.Api.Controllers.EnumListController.GetEnumList(StringUtil.TrimTypeName(typeof(ContractOverrideType).ToString()), UserTranslationId);
if (preTrans == null)
await TranslationBiz.GetSubsetStaticAsync(new List<string> { "TimeSpanDays", "TimeSpanHours", "TimeSpanMinutes", "TimeSpanSeconds" }, UserTranslationId);
if (o.ResponseTime == TimeSpan.Zero)
o.ResponseTimeViz = string.Empty;
else
o.ResponseTimeViz = $"{(preTrans["TimeSpanDays"])}: {o.ResponseTime.Days}, {(preTrans["TimeSpanHours"])}: {o.ResponseTime.Hours}, {(preTrans["TimeSpanMinutes"])}: {o.ResponseTime.Minutes} ";
o.PartsOverrideTypeViz = contractOverrideTypeEnumList.Where(x => x.Id == (long)o.PartsOverrideType).Select(x => x.Name).First();
o.TravelRatesOverrideTypeViz = contractOverrideTypeEnumList.Where(x => x.Id == (long)o.TravelRatesOverrideType).Select(x => x.Name).First();

View File

@@ -25,6 +25,8 @@ namespace AyaNova.Models
//any optional ones here sb zero to indicate not set (or equivalent to zero)
[Required]
public TimeSpan ResponseTime { get; set; }
[NotMapped]
public string ResponseTimeViz { get; set; }
[Required]
public bool ContractServiceRatesOnly { get; set; }
[Required]