|
@@ -67,118 +67,118 @@ namespace PRSDesktop
|
|
|
{
|
|
|
editor.Editable = Security.IsAllowed<CanSkipDeliveryPhotos>() ? Editable.Enabled : Editable.Disabled;
|
|
|
}
|
|
|
- else if (column.ColumnName.Equals("Contact.ID"))
|
|
|
- {
|
|
|
- editor.Editable = Editable.Hidden;
|
|
|
- }
|
|
|
- else if (column.ColumnName.Equals("Contact.Name"))
|
|
|
- {
|
|
|
- editor.Editable = Editable.Enabled;
|
|
|
- (editor as TextBoxEditor).Buttons = new[]
|
|
|
- {
|
|
|
- new(items?.FirstOrDefault(), "Select", 50, ContactNameLookup, true),
|
|
|
- new EditorButton(items?.FirstOrDefault(), "Clear", 50, ContactNameClear, true)
|
|
|
- };
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- private void ContactNameClear(object editor, object? item)
|
|
|
- {
|
|
|
- if (item is not Delivery delivery)
|
|
|
- return;
|
|
|
-
|
|
|
- delivery.Contact.ID = Guid.Empty;
|
|
|
- delivery.Address.Street = "";
|
|
|
- delivery.Address.City = "";
|
|
|
- delivery.Address.State = "";
|
|
|
- delivery.Address.PostCode = "";
|
|
|
-
|
|
|
- if(editor is BaseDynamicEditorControl baseEditor)
|
|
|
- {
|
|
|
- baseEditor.SetValue(baseEditor.ColumnName, "");
|
|
|
- }
|
|
|
+ // else if (column.ColumnName.Equals("Contact.ID"))
|
|
|
+ // {
|
|
|
+ // editor.Editable = Editable.Hidden;
|
|
|
+ // }
|
|
|
+ // else if (column.ColumnName.Equals("Contact.Name"))
|
|
|
+ // {
|
|
|
+ // editor.Editable = Editable.Enabled;
|
|
|
+ // (editor as TextBoxEditor).Buttons = new[]
|
|
|
+ // {
|
|
|
+ // new(items?.FirstOrDefault(), "Select", 50, ContactNameLookup, true),
|
|
|
+ // new EditorButton(items?.FirstOrDefault(), "Clear", 50, ContactNameClear, true)
|
|
|
+ // };
|
|
|
+ // }
|
|
|
}
|
|
|
|
|
|
- private void ContactNameLookup(object editor, object? item)
|
|
|
- {
|
|
|
- var contacts = new MultiSelectDialog<Contact>(
|
|
|
- null,
|
|
|
- null,
|
|
|
- false
|
|
|
- );
|
|
|
-
|
|
|
- if (contacts.ShowDialog() != true)
|
|
|
- return;
|
|
|
-
|
|
|
- var contact = contacts.Items().FirstOrDefault();
|
|
|
- if (contact == null)
|
|
|
- return;
|
|
|
- if (item is not Delivery delivery)
|
|
|
- return;
|
|
|
-
|
|
|
- delivery.Contact.ID = contact.ID;
|
|
|
- delivery.Address.Street = contact.Address.Street;
|
|
|
- delivery.Address.City = contact.Address.City;
|
|
|
- delivery.Address.State = contact.Address.State;
|
|
|
- delivery.Address.PostCode = contact.Address.PostCode;
|
|
|
-
|
|
|
- if (editor is BaseDynamicEditorControl baseEditor)
|
|
|
- {
|
|
|
- baseEditor.SetValue(baseEditor.ColumnName, contact.Name);
|
|
|
- }
|
|
|
- //SetEditorValue(item, "Contact.Name", contact.Name);
|
|
|
- //SetEditorValue(item,"Address.Street",contact.Address.Street);
|
|
|
- //SetEditorValue(item, "Address.City",contact.Address.City);
|
|
|
- //SetEditorValue(item, "Address.State",contact.Address.State);
|
|
|
- //SetEditorValue(item, "Address.PostCode",contact.Address.PostCode);
|
|
|
- }
|
|
|
-
|
|
|
- protected override Dictionary<string, object?> EditorValueChanged(IDynamicEditorForm editor, Delivery[] items, string name, object value)
|
|
|
- {
|
|
|
- var result = base.EditorValueChanged(editor, items, name, value);
|
|
|
- if (name.Equals("Job.ID"))
|
|
|
- {
|
|
|
- items.ForEach(item => { item.Contact.ID = Guid.Empty; });
|
|
|
- editor.SetEditorValue("Contact.Name", "");
|
|
|
- }
|
|
|
- else if (name.Equals("Contact.Name"))
|
|
|
- {
|
|
|
- var street = "";
|
|
|
- var city = "";
|
|
|
- var state = "";
|
|
|
- var postcode = "";
|
|
|
- if (items.First().Contact.IsValid())
|
|
|
- {
|
|
|
- street = items.First().Address.Street;
|
|
|
- city = items.First().Address.City;
|
|
|
- state = items.First().Address.State;
|
|
|
- postcode = items.First().Address.PostCode;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- CoreRow row = null;
|
|
|
- if (items.First().ID != Guid.Empty)
|
|
|
- {
|
|
|
- row = new Client<Job>().Query(
|
|
|
- new Filter<Job>(x => x.ID).IsEqualTo(items.First().Job.ID),
|
|
|
- new Columns<Job>(x => x.ID, x => x.SiteAddress.Street, x => x.SiteAddress.City, x => x.SiteAddress.State,
|
|
|
- x => x.SiteAddress.PostCode)
|
|
|
- ).Rows.FirstOrDefault();
|
|
|
- street = row != null ? row.Get<Job, string>(x => x.SiteAddress.Street) : "";
|
|
|
- city = row != null ? row.Get<Job, string>(x => x.SiteAddress.City) : "";
|
|
|
- state = row != null ? row.Get<Job, string>(x => x.SiteAddress.State) : "";
|
|
|
- postcode = row != null ? row.Get<Job, string>(x => x.SiteAddress.PostCode) : "";
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- editor.SetEditorValue("Address.Street", street);
|
|
|
- editor.SetEditorValue("Address.City", city);
|
|
|
- editor.SetEditorValue("Address.State", state);
|
|
|
- editor.SetEditorValue("Address.PostCode", postcode);
|
|
|
- }
|
|
|
-
|
|
|
- return result;
|
|
|
- }
|
|
|
+ // private void ContactNameClear(object editor, object? item)
|
|
|
+ // {
|
|
|
+ // if (item is not Delivery delivery)
|
|
|
+ // return;
|
|
|
+ //
|
|
|
+ // delivery.Contact.ID = Guid.Empty;
|
|
|
+ // delivery.Address.Street = "";
|
|
|
+ // delivery.Address.City = "";
|
|
|
+ // delivery.Address.State = "";
|
|
|
+ // delivery.Address.PostCode = "";
|
|
|
+ //
|
|
|
+ // if(editor is BaseDynamicEditorControl baseEditor)
|
|
|
+ // {
|
|
|
+ // baseEditor.SetValue(baseEditor.ColumnName, "");
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // private void ContactNameLookup(object editor, object? item)
|
|
|
+ // {
|
|
|
+ // var contacts = new MultiSelectDialog<Contact>(
|
|
|
+ // null,
|
|
|
+ // null,
|
|
|
+ // false
|
|
|
+ // );
|
|
|
+ //
|
|
|
+ // if (contacts.ShowDialog() != true)
|
|
|
+ // return;
|
|
|
+ //
|
|
|
+ // var contact = contacts.Items().FirstOrDefault();
|
|
|
+ // if (contact == null)
|
|
|
+ // return;
|
|
|
+ // if (item is not Delivery delivery)
|
|
|
+ // return;
|
|
|
+ //
|
|
|
+ // delivery.Contact.ID = contact.ID;
|
|
|
+ // delivery.Address.Street = contact.Address.Street;
|
|
|
+ // delivery.Address.City = contact.Address.City;
|
|
|
+ // delivery.Address.State = contact.Address.State;
|
|
|
+ // delivery.Address.PostCode = contact.Address.PostCode;
|
|
|
+ //
|
|
|
+ // if (editor is BaseDynamicEditorControl baseEditor)
|
|
|
+ // {
|
|
|
+ // baseEditor.SetValue(baseEditor.ColumnName, contact.Name);
|
|
|
+ // }
|
|
|
+ // //SetEditorValue(item, "Contact.Name", contact.Name);
|
|
|
+ // //SetEditorValue(item,"Address.Street",contact.Address.Street);
|
|
|
+ // //SetEditorValue(item, "Address.City",contact.Address.City);
|
|
|
+ // //SetEditorValue(item, "Address.State",contact.Address.State);
|
|
|
+ // //SetEditorValue(item, "Address.PostCode",contact.Address.PostCode);
|
|
|
+ // }
|
|
|
+
|
|
|
+ // protected override Dictionary<string, object?> EditorValueChanged(IDynamicEditorForm editor, Delivery[] items, string name, object value)
|
|
|
+ // {
|
|
|
+ // var result = base.EditorValueChanged(editor, items, name, value);
|
|
|
+ // if (name.Equals("Job.ID"))
|
|
|
+ // {
|
|
|
+ // items.ForEach(item => { item.Contact.ID = Guid.Empty; });
|
|
|
+ // editor.SetEditorValue("Contact.Name", "");
|
|
|
+ // }
|
|
|
+ // else if (name.Equals("Contact.Name"))
|
|
|
+ // {
|
|
|
+ // var street = "";
|
|
|
+ // var city = "";
|
|
|
+ // var state = "";
|
|
|
+ // var postcode = "";
|
|
|
+ // if (items.First().Contact.IsValid())
|
|
|
+ // {
|
|
|
+ // street = items.First().Address.Street;
|
|
|
+ // city = items.First().Address.City;
|
|
|
+ // state = items.First().Address.State;
|
|
|
+ // postcode = items.First().Address.PostCode;
|
|
|
+ // }
|
|
|
+ // else
|
|
|
+ // {
|
|
|
+ // CoreRow row = null;
|
|
|
+ // if (items.First().ID != Guid.Empty)
|
|
|
+ // {
|
|
|
+ // row = new Client<Job>().Query(
|
|
|
+ // new Filter<Job>(x => x.ID).IsEqualTo(items.First().Job.ID),
|
|
|
+ // new Columns<Job>(x => x.ID, x => x.SiteAddress.Street, x => x.SiteAddress.City, x => x.SiteAddress.State,
|
|
|
+ // x => x.SiteAddress.PostCode)
|
|
|
+ // ).Rows.FirstOrDefault();
|
|
|
+ // street = row != null ? row.Get<Job, string>(x => x.SiteAddress.Street) : "";
|
|
|
+ // city = row != null ? row.Get<Job, string>(x => x.SiteAddress.City) : "";
|
|
|
+ // state = row != null ? row.Get<Job, string>(x => x.SiteAddress.State) : "";
|
|
|
+ // postcode = row != null ? row.Get<Job, string>(x => x.SiteAddress.PostCode) : "";
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // editor.SetEditorValue("Address.Street", street);
|
|
|
+ // editor.SetEditorValue("Address.City", city);
|
|
|
+ // editor.SetEditorValue("Address.State", state);
|
|
|
+ // editor.SetEditorValue("Address.PostCode", postcode);
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // return result;
|
|
|
+ // }
|
|
|
|
|
|
private bool DocumentsClick(CoreRow? arg)
|
|
|
{
|