| 180 |
- |
1 |
#!/usr/bin/perl
|
|
|
2 |
|
|
|
3 |
use strict;
|
|
|
4 |
use cPanelUserConfig;
|
|
|
5 |
use RollerCon;
|
|
|
6 |
use WebDB;
|
|
|
7 |
use DBI;
|
|
|
8 |
|
|
|
9 |
my $dbh = WebDB::connect ();
|
|
|
10 |
|
|
|
11 |
my $dupes = $dbh->prepare ("select distinct Gid, RCid, count(*) as count from assignment where role like ? group by Gid, RCid having count > 1");
|
|
|
12 |
my $userdupe = $dbh->prepare ("select * from assignment where Gid = ? and RCid = ? and role like ? order by wb_ticket_act desc, cast(substr(role, 5) as UNSIGNED)");
|
|
|
13 |
|
|
|
14 |
$dupes->execute ('CLA-%');
|
|
|
15 |
|
|
|
16 |
while (my @row = $dupes->fetchrow_array ()) {
|
|
|
17 |
my ($gid, $rcid) = @row;
|
|
|
18 |
my $counter = 0;
|
|
|
19 |
|
|
|
20 |
$userdupe->execute ($gid, $rcid, 'CLA-%');
|
|
|
21 |
while (my $dupe = $userdupe->fetchrow_hashref ()) {
|
|
|
22 |
print "Deleting [$dupe->{Aid}, $dupe->{RCid}, $dupe->{role}]\n" if $counter;
|
|
|
23 |
$dbh->do ("delete from assignment where Aid = ?", undef, $dupe->{Aid}) if $counter;
|
|
|
24 |
$counter++;
|
|
|
25 |
}
|
|
|
26 |
}
|