This commit is contained in:
@@ -823,17 +823,17 @@ namespace AyaNova.Biz
|
|||||||
List<FormField> l = new List<FormField>();
|
List<FormField> l = new List<FormField>();
|
||||||
|
|
||||||
l.Add(new FormField { TKey = "WorkOrderSummary", FieldKey = "Notes" });
|
l.Add(new FormField { TKey = "WorkOrderSummary", FieldKey = "Notes" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderStatus", FieldKey = "WorkOrderStatus" });
|
l.Add(new FormField { TKey = "WorkOrderStatus", FieldKey = "LastStatusId" });
|
||||||
l.Add(new FormField { TKey = "Address", FieldKey = "Address" });
|
l.Add(new FormField { TKey = "Address", FieldKey = "Address" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderCloseByDate", FieldKey = "WorkOrderCloseByDate" });
|
l.Add(new FormField { TKey = "WorkOrderCloseByDate", FieldKey = "CompleteByDate" });
|
||||||
l.Add(new FormField { TKey = "Project", FieldKey = "Project" });
|
l.Add(new FormField { TKey = "Project", FieldKey = "ProjectId" });
|
||||||
l.Add(new FormField { TKey = "Contract", FieldKey = "Contract" });
|
l.Add(new FormField { TKey = "Contract", FieldKey = "ContractId" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderInvoiceNumber", FieldKey = "WorkOrderInvoiceNumber" });
|
l.Add(new FormField { TKey = "WorkOrderInvoiceNumber", FieldKey = "InvoiceNumber" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderServiceDate", FieldKey = "WorkOrderServiceDate" });
|
l.Add(new FormField { TKey = "WorkOrderServiceDate", FieldKey = "ServiceDate" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderCustomerContactName", FieldKey = "WorkOrderCustomerContactName" });
|
l.Add(new FormField { TKey = "WorkOrderCustomerContactName", FieldKey = "CustomerContactName" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderCustomerReferenceNumber", FieldKey = "WorkOrderCustomerReferenceNumber" });
|
l.Add(new FormField { TKey = "WorkOrderCustomerReferenceNumber", FieldKey = "CustomerReferenceNumber" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderInternalReferenceNumber", FieldKey = "WorkOrderInternalReferenceNumber" });
|
l.Add(new FormField { TKey = "WorkOrderInternalReferenceNumber", FieldKey = "InternalReferenceNumber" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderOnsite", FieldKey = "WorkOrderOnsite" });
|
l.Add(new FormField { TKey = "WorkOrderOnsite", FieldKey = "Onsite" });
|
||||||
l.Add(new FormField { TKey = "CustomerSignature", FieldKey = "CustomerSignature" });
|
l.Add(new FormField { TKey = "CustomerSignature", FieldKey = "CustomerSignature" });
|
||||||
l.Add(new FormField { TKey = "TechSignature", FieldKey = "TechSignature" });
|
l.Add(new FormField { TKey = "TechSignature", FieldKey = "TechSignature" });
|
||||||
l.Add(new FormField { TKey = "Tags", FieldKey = "Tags" });
|
l.Add(new FormField { TKey = "Tags", FieldKey = "Tags" });
|
||||||
@@ -856,16 +856,15 @@ namespace AyaNova.Biz
|
|||||||
l.Add(new FormField { TKey = "WorkOrderCustom15", FieldKey = "WorkOrderCustom15", IsCustomField = true });
|
l.Add(new FormField { TKey = "WorkOrderCustom15", FieldKey = "WorkOrderCustom15", IsCustomField = true });
|
||||||
l.Add(new FormField { TKey = "WorkOrderCustom16", FieldKey = "WorkOrderCustom16", IsCustomField = true });
|
l.Add(new FormField { TKey = "WorkOrderCustom16", FieldKey = "WorkOrderCustom16", IsCustomField = true });
|
||||||
|
|
||||||
//WORKORDER ITEM
|
//WORKORDER ITEM
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemSummary", FieldKey = "WorkOrderItemSummary", TKeySection = "WorkOrderItem", Hideable = false });
|
l.Add(new FormField { TKey = "Sequence", FieldKey = "Sequence", TKeySection = "WorkOrderItem", Requireable = false });//already required
|
||||||
l.Add(new FormField { TKey = "Sequence", FieldKey = "WorkOrderItemSequence", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemTechNotes", FieldKey = "TechNotes", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemTechNotes", FieldKey = "WorkOrderItemTechNotes", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "Tags", FieldKey = "WorkOrderItemTags", TKeySection = "WorkOrderItem", ModelProperty="Tags" });
|
||||||
l.Add(new FormField { TKey = "Tags", FieldKey = "WorkOrderItemTags", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "Wiki", FieldKey = "WorkOrderItemWiki", TKeySection = "WorkOrderItem", ModelProperty="Wiki" });
|
||||||
l.Add(new FormField { TKey = "Wiki", FieldKey = "WorkOrderItemWiki", TKeySection = "WorkOrderItem" });
|
|
||||||
l.Add(new FormField { TKey = "Attachments", FieldKey = "WorkOrderItemAttachments", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "Attachments", FieldKey = "WorkOrderItemAttachments", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemWorkOrderStatusID", FieldKey = "WorkOrderItemWorkOrderStatusID", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemWorkOrderStatusID", FieldKey = "WorkOrderItemWorkOrderStatusID", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemPriorityID", FieldKey = "WorkOrderItemPriorityID", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemPriorityID", FieldKey = "WorkOrderItemPriorityID", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemRequestDate", FieldKey = "WorkOrderItemRequestDate", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemRequestDate", FieldKey = "RequestDate", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemWarrantyService", FieldKey = "WorkOrderItemWarrantyService", TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemWarrantyService", FieldKey = "WorkOrderItemWarrantyService", TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemCustom1", FieldKey = "WorkOrderItemCustom1", IsCustomField = true, TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemCustom1", FieldKey = "WorkOrderItemCustom1", IsCustomField = true, TKeySection = "WorkOrderItem" });
|
||||||
l.Add(new FormField { TKey = "WorkOrderItemCustom2", FieldKey = "WorkOrderItemCustom2", IsCustomField = true, TKeySection = "WorkOrderItem" });
|
l.Add(new FormField { TKey = "WorkOrderItemCustom2", FieldKey = "WorkOrderItemCustom2", IsCustomField = true, TKeySection = "WorkOrderItem" });
|
||||||
@@ -1686,9 +1685,15 @@ namespace AyaNova.Biz
|
|||||||
public class FormField
|
public class FormField
|
||||||
{
|
{
|
||||||
//CLIENT / SERVER Unique identifier used at BOTH client and server
|
//CLIENT / SERVER Unique identifier used at BOTH client and server
|
||||||
//MUST MATCH MODEL PROPERTY NAME EXACTLY OR REQUIRED FIELD VALIDATION WON"T WORK
|
//MUST MATCH MODEL PROPERTY NAME EXACTLY UNLESS ModelProperty is set OR REQUIRED FIELD VALIDATION WON"T WORK
|
||||||
public string FieldKey { get; set; }
|
public string FieldKey { get; set; }
|
||||||
|
|
||||||
|
//This exists to handle things like workorderitemtags which
|
||||||
|
//need to use a unique fieldkey but it can't match the model property becuase then
|
||||||
|
//it would need to be "Tags" but there is already a "Tags" on the workorder header and in units
|
||||||
|
//so here we can specify an exact property tag to check
|
||||||
|
public string ModelProperty { get; set; } = null;
|
||||||
|
|
||||||
//CLIENT Use only for display in customization form
|
//CLIENT Use only for display in customization form
|
||||||
public string TKey { get; set; }
|
public string TKey { get; set; }
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ namespace AyaNova.Biz
|
|||||||
{
|
{
|
||||||
//No form custom = no template to check against so nothing to do
|
//No form custom = no template to check against so nothing to do
|
||||||
if (formCustom == null || string.IsNullOrWhiteSpace(formCustom.Template))
|
if (formCustom == null || string.IsNullOrWhiteSpace(formCustom.Template))
|
||||||
return;
|
return;
|
||||||
var FormTemplate = JArray.Parse(formCustom.Template);
|
var FormTemplate = JArray.Parse(formCustom.Template);
|
||||||
var FormFields = Biz.FormFieldOptionalCustomizableReference.FormFieldReferenceList(formCustom.FormKey);
|
var FormFields = Biz.FormFieldOptionalCustomizableReference.FormFieldReferenceList(formCustom.FormKey);
|
||||||
|
|
||||||
@@ -33,6 +33,9 @@ namespace AyaNova.Biz
|
|||||||
{
|
{
|
||||||
//Now get the actual property name from the available fields using the lt key
|
//Now get the actual property name from the available fields using the lt key
|
||||||
string RequiredPropertyName = FF.FieldKey;
|
string RequiredPropertyName = FF.FieldKey;
|
||||||
|
//there might be a more specific model property due to being a workorder sub item duplicate such as WorkOrderItemTags vs WorkOrderTags
|
||||||
|
if (FF.ModelProperty != null)
|
||||||
|
RequiredPropertyName = FF.ModelProperty;
|
||||||
|
|
||||||
//Is it an indexed collection field?
|
//Is it an indexed collection field?
|
||||||
if (RequiredPropertyName.Contains("."))
|
if (RequiredPropertyName.Contains("."))
|
||||||
|
|||||||
@@ -2238,7 +2238,7 @@ namespace AyaNova.Biz
|
|||||||
AddError(ApiErrorCode.VALIDATION_INVALID_VALUE, "Notes");
|
AddError(ApiErrorCode.VALIDATION_INVALID_VALUE, "Notes");
|
||||||
|
|
||||||
//Any form customizations to validate?
|
//Any form customizations to validate?
|
||||||
var FormCustomization = await ct.FormCustom.AsNoTracking().SingleOrDefaultAsync(z => z.FormKey == AyaType.WorkOrderItem.ToString());
|
var FormCustomization = await ct.FormCustom.AsNoTracking().SingleOrDefaultAsync(z => z.FormKey == AyaType.WorkOrder.ToString());//all workorder sub items use the workorder key for customization
|
||||||
if (FormCustomization != null)
|
if (FormCustomization != null)
|
||||||
{
|
{
|
||||||
//Yeppers, do the validation, there are two, the custom fields and the regular fields that might be set to required
|
//Yeppers, do the validation, there are two, the custom fields and the regular fields that might be set to required
|
||||||
|
|||||||
Reference in New Issue
Block a user