CounterpartyHandlers.cs
3.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Sungero.Core;
using Sungero.CoreEntities;
using Sungero.Parties.Counterparty;
namespace Sungero.Parties
{
partial class CounterpartyClientHandlers
{
public override void Closing(Sungero.Presentation.FormClosingEventArgs e)
{
var key = Counterparties.Resources.ParameterSaveFromUIFormat(_obj.Id);
if (e.Params.Contains(key))
e.Params.Remove(key);
}
public virtual void CodeValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
if (string.IsNullOrWhiteSpace(e.NewValue) || e.NewValue == e.OldValue)
return;
// Использование пробелов в середине кода запрещено.
var newCode = e.NewValue.Trim();
if (Regex.IsMatch(newCode, @"\s"))
e.AddError(Sungero.Company.Resources.NoSpacesInCode);
}
public override void Refresh(Sungero.Presentation.FormRefreshEventArgs e)
{
if (!_obj.AccessRights.CanChangeCard())
{
foreach (var prop in _obj.State.Properties)
prop.IsEnabled = false;
}
e.Params.AddOrUpdate(Counterparties.Resources.ParameterSaveFromUIFormat(_obj.Id), true);
}
public virtual void AccountValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
var errorMessage = Functions.Counterparty.CheckAccountLength(e.NewValue);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(errorMessage);
}
public virtual void NCEOValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
if (_obj.Nonresident != true)
{
var errorMessage = Functions.Counterparty.CheckNceoLength(_obj, e.NewValue);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(errorMessage);
}
}
public virtual void PSRNValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
if (_obj.Nonresident != true)
{
var errorMessage = Functions.Counterparty.CheckPsrnLength(_obj, e.NewValue);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(errorMessage);
}
}
public virtual void NonresidentValueInput(Sungero.Presentation.BooleanValueInputEventArgs e)
{
if (e.NewValue != true)
{
var errorMessage = Functions.Counterparty.CheckTin(_obj, _obj.TIN);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(_obj.Info.Properties.TIN, errorMessage);
errorMessage = Functions.Counterparty.CheckPsrnLength(_obj, _obj.PSRN);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(_obj.Info.Properties.PSRN, errorMessage);
errorMessage = Functions.Counterparty.CheckNceoLength(_obj, _obj.NCEO);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(_obj.Info.Properties.NCEO, errorMessage);
}
}
public virtual void EmailValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
if (!string.IsNullOrWhiteSpace(e.NewValue) && !Functions.Module.EmailIsValid(e.NewValue))
e.AddWarning(Resources.WrongEmailFormat);
}
public virtual void TINValueInput(Sungero.Presentation.StringValueInputEventArgs e)
{
if (_obj.Nonresident != true)
{
var errorMessage = Functions.Counterparty.CheckTin(_obj, e.NewValue);
if (!string.IsNullOrEmpty(errorMessage))
e.AddError(_obj.Info.Properties.TIN, errorMessage, _obj.Info.Properties.Nonresident);
}
}
}
}