diff --git a/server/AyaNova/biz/WorkOrderBiz.cs b/server/AyaNova/biz/WorkOrderBiz.cs index 62820288..8ffc9601 100644 --- a/server/AyaNova/biz/WorkOrderBiz.cs +++ b/server/AyaNova/biz/WorkOrderBiz.cs @@ -328,7 +328,8 @@ namespace AyaNova.Biz if (ayaEvent == AyaEvent.Created) { await AutoSetContractAsync(newObj); - await AutoSetCloseByDateAsync(newObj); + if (newObj.CompleteByDate == null)//need to account for a user manually selecting a specific close by date in advance indicating to ignore any auto sets + await AutoSetCloseByDateAsync(newObj); await AutoSetAddressAsync(newObj); return; } @@ -420,13 +421,16 @@ namespace AyaNova.Biz { await GetCurrentContractFromContractIdAsync(newObj.ContractId); if (mContractInEffect != null && mContractInEffect.ResponseTime != TimeSpan.Zero) + { newObj.CompleteByDate = DateTime.UtcNow.Add(mContractInEffect.ResponseTime); + return; //our work here is done + } } - else - { - if (AyaNova.Util.ServerGlobalBizSettings.WorkOrderCompleteByAge != TimeSpan.Zero) - newObj.CompleteByDate = DateTime.UtcNow.Add(AyaNova.Util.ServerGlobalBizSettings.WorkOrderCompleteByAge); - } + + //not set yet, maybe the global default is the way... + if (AyaNova.Util.ServerGlobalBizSettings.WorkOrderCompleteByAge != TimeSpan.Zero) + newObj.CompleteByDate = DateTime.UtcNow.Add(AyaNova.Util.ServerGlobalBizSettings.WorkOrderCompleteByAge); + } // ////////////////////////////////////////////////////////////////////////////////////////////////