Дипломная работа: Автоматизация учета и обработки заявок пользователей на техническую поддержку (Help Desk) в ООО "Сфера ИТ"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
76
Приложение № 1
Листинг модуля «Новая телефонная заявка»
package Kernel::System::Ticket;
use strict;
use warnings;
use File::Path;
use utf8;
use Encode ();
use parent qw(
Kernel::System::EventHandler
Kernel::System::Ticket::TicketSearch
Kernel::System::Ticket::TicketACL
);
use Kernel::Language qw(Translatable);
use Kernel::System::VariableCheck qw(:all);
our @ObjectDependencies = (
'Kernel::Config',
'Kernel::System::Cache',
'Kernel::System::Calendar',
'Kernel::System::CustomerUser',
'Kernel::System::DB',
'Kernel::System::DynamicField',
'Kernel::System::DynamicField::Backend',
'Kernel::System::DynamicFieldValue',
'Kernel::System::Email',
77
'Kernel::System::Group',
'Kernel::System::HTMLUtils',
'Kernel::System::LinkObject',
'Kernel::System::Lock',
'Kernel::System::Log',
'Kernel::System::Main',
'Kernel::System::PostMaster::LoopProtection',
'Kernel::System::Priority',
'Kernel::System::Queue',
'Kernel::System::Service',
'Kernel::System::SLA',
'Kernel::System::State',
'Kernel::System::TemplateGenerator',
'Kernel::System::DateTime',
'Kernel::System::Ticket::Article',
'Kernel::System::Type',
'Kernel::System::User',
'Kernel::System::Valid',
'Kernel::Language',
);
=head1 NAME
Kernel::System::Ticket - Functions to create, modify and delete tickets as well as re-
lated helper functions
=head1 SYNOPSIS
Create ticket object
78
use Kernel::System::ObjectManager;
local $Kernel::OM = Kernel::System::ObjectManager->new();
my $TicketObject = $Kernel::OM->Get('Kernel::System::Ticket');
Create a new ticket
my $TicketID = $TicketObject->TicketCreate(
Title => 'Some Ticket Title',
Queue => 'Raw',
Lock => 'unlock',
Priority => '3 normal',
State => 'new',
CustomerID => '12345',
CustomerUser => 'customer@example.com',
OwnerID => 1,
UserID => 1,
);
Lock the ticket
my $Success = $TicketObject->TicketLockSet(
Lock => 'lock',
TicketID => $TicketID,
UserID => 1,
);
Update the title
my $Success = $TicketObject->TicketTitleUpdate(
79
Title => 'Some Title',
TicketID => $TicketID,
UserID => 1,
);
Move ticket to another queue
my $Success = $TicketObject->TicketQueueSet(
Queue => 'Some Queue Name',
TicketID => $TicketID,
UserID => 1,
);
Set a ticket type
my $Success = $TicketObject->TicketTypeSet(
Type => 'Incident',
TicketID => $TicketID,
UserID => 1,
);
Assign another customer
my $Success = $TicketObject->TicketCustomerSet(
No => '12345',
User => 'customer@company.org',
TicketID => $TicketID,
UserID => 1,
);
80
Update the state
my $Success = $TicketObject->TicketStateSet(
State => 'pending reminder',
TicketID => $TicketID,
UserID => 1,
);
Update pending time (only for pending states)
my $Success = $TicketObject->TicketPendingTimeSet(
String => '2019-08-14 22:05:00',
TicketID => $TicketID,
UserID => 1,
);
Set a new priority
my $Success = $TicketObject->TicketPrioritySet(
TicketID => $TicketID,
Priority => 'low',
UserID => 1,
);
Assign to another agent
my $Success = $TicketObject->TicketOwnerSet(
TicketID => $TicketID,
NewUserID => 2,
UserID => 1,
Источник: https://baza.diplomsite.ru/previewfile/2374