IncomingInvoiceClientFunctions.cs
2.87 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
using System;
using System.Collections.Generic;
using System.Linq;
using Sungero.Contracts.IncomingInvoice;
using Sungero.Core;
using Sungero.CoreEntities;
using Sungero.FinancialArchive;
namespace Sungero.Contracts.Client
{
partial class IncomingInvoiceFunctions
{
/// <summary>
/// Показывать сводку по документу в заданиях на согласование и подписание.
/// </summary>
/// <returns>True, если в заданиях нужно показывать сводку по документу.</returns>
[Public]
public override bool NeedViewDocumentSummary()
{
return true;
}
/// <summary>
/// Получить список типов документов, доступных для смены типа.
/// </summary>
/// <returns>Список типов документов, доступных для смены типа.</returns>
public override List<Domain.Shared.IEntityInfo> GetTypesAvailableForChange()
{
if (_obj.ExchangeState != null)
return new List<Domain.Shared.IEntityInfo>() { Docflow.SimpleDocuments.Info };
var types = new List<Domain.Shared.IEntityInfo>();
types.Add(ContractStatements.Info);
types.Add(IncomingTaxInvoices.Info);
types.Add(OutgoingTaxInvoices.Info);
types.Add(UniversalTransferDocuments.Info);
types.Add(Waybills.Info);
return types;
}
/// <summary>
/// Заполнить свойство "Договор" с явным преобразованием типа.
/// </summary>
/// <param name="convertedDoc">Преобразуемый документ.</param>
/// <param name="contract">Значение свойства до преобразования.</param>
/// <remarks>Используется при смене типа первички на вх. счёт.</remarks>
[Public, Obsolete("Используйте метод FillLeadingDocument")]
public static void FillContractFromLeadingDocument(Docflow.IOfficialDocument convertedDoc,
Docflow.IContractualDocumentBase contract)
{
// 115833 Не маппится свойство, если этого свойства нет в источнике.
if (IncomingInvoices.Is(convertedDoc))
Functions.IncomingInvoice.FillLeadingDocument(IncomingInvoices.As(convertedDoc), contract);
}
/// <summary>
/// Дополнительное условие доступности действия "Сменить тип".
/// </summary>
/// <returns>True - если действие "Сменить тип" доступно, иначе - false.</returns>
public override bool CanChangeDocumentType()
{
return _obj.VerificationState == VerificationState.InProcess || base.CanChangeDocumentType();
}
}
}