ApprovalSheetReportHandlers.cs
2.36 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
using System;
using System.Collections.Generic;
using System.Linq;
using Sungero.Company;
using Sungero.Core;
using Sungero.CoreEntities;
namespace Sungero.Docflow
{
partial class ApprovalSheetReportServerHandlers
{
public override void AfterExecute(Sungero.Reporting.Server.AfterExecuteEventArgs e)
{
Docflow.PublicFunctions.Module.DeleteReportData(Constants.ApprovalSheetReport.SourceTableName, ApprovalSheetReport.ReportSessionId);
}
public override void BeforeExecute(Sungero.Reporting.Server.BeforeExecuteEventArgs e)
{
ApprovalSheetReport.ReportSessionId = Guid.NewGuid().ToString();
Functions.ApprovalTask.UpdateApprovalSheetReportTable(ApprovalSheetReport.Document, ApprovalSheetReport.ReportSessionId);
ApprovalSheetReport.HasRespEmployee = false;
var document = ApprovalSheetReport.Document;
if (document == null)
return;
// Наименование отчета.
ApprovalSheetReport.DocumentName = Docflow.PublicFunctions.Module.FormatDocumentNameForReport(document, false);
// НОР.
var ourOrg = document.BusinessUnit;
if (ourOrg != null)
ApprovalSheetReport.OurOrgName = ourOrg.Name;
// Дата отчета.
ApprovalSheetReport.CurrentDate = Calendar.Now;
// Ответственный.
var responsibleEmployee = Functions.OfficialDocument.GetDocumentResponsibleEmployee(document);
if (responsibleEmployee != null &&
responsibleEmployee.IsSystem != true)
{
var respEmployee = string.Format("{0}: {1}",
Reports.Resources.ApprovalSheetReport.ResponsibleEmployee,
responsibleEmployee.Person.ShortName);
if (responsibleEmployee.JobTitle != null)
respEmployee = string.Format("{0} ({1})", respEmployee, responsibleEmployee.JobTitle.DisplayValue.Trim());
ApprovalSheetReport.RespEmployee = respEmployee;
ApprovalSheetReport.HasRespEmployee = true;
}
// Распечатал.
if (Employees.Current == null)
{
ApprovalSheetReport.Clerk = Users.Current.Name;
}
else
{
var clerkPerson = Employees.Current.Person;
ApprovalSheetReport.Clerk = clerkPerson.ShortName;
}
}
}
}