Changeset 2204 for trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
- Timestamp:
- 02/19/19 19:43:10 (5 years ago)
- Location:
- trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql.pm
r2194 r2204 18 18 our $VERSION = (q$Rev: 2149 $ =~ /^Rev: (\d+) /)[0]; 19 19 20 sub SCHEMA_VERSION { 2 8};20 sub SCHEMA_VERSION { 29 }; 21 21 22 22 =head1 NAME … … 154 154 # return; 155 155 } 156 $self->_CreateInternalObjects; 156 if (!$self->_CreateInternalObjects) { 157 $self->rollback; 158 } 157 159 158 160 1; … … 214 216 if ($change > 0) { 215 217 $self->db->commit; 216 } else { 217 $self->db->rollback; 218 } 219 220 return 1; 218 } 219 220 return $change; 221 221 } 222 222 … … 1092 1092 ); 1093 1093 1094 my ($potype, $pname, $pikey); 1095 1096 if (my $obj = $self->get_object($otype, $name)) { 1097 my $parent = $obj->ParentObject; 1098 $potype = $parent->type; 1099 $pname = $parent->name; 1100 $pikey = $parent->Iid; 1101 } 1102 1094 1103 my $sth = $self->db->prepare(q{ 1095 INSERT into objectslogs (ikey, irev, otype, name, changetype, username, message )1096 VALUES (?,?,?,?,?,?,? )1104 INSERT into objectslogs (ikey, irev, otype, name, changetype, username, message, parentotype, parentname, parentikey) 1105 VALUES (?,?,?,?,?,?,?,?,?,?) 1097 1106 }); 1098 1107 … … 1105 1114 $self->user || '@Console', 1106 1115 sprintf($message, @args), 1116 $potype, $pname, $pikey, 1107 1117 ); 1108 1118 } … … 1119 1129 my $sth = $self->db->prepare(q{ 1120 1130 select ikey from objectslogs where 1121 otype = ? and 1122 name = ? 1131 (otype = $1 and name = $2) 1123 1132 group by ikey 1124 1133 }); … … 1130 1139 @ids or return; 1131 1140 1132 my $sth2 = $self->db->prepare( sprintf(1141 my $sth2 = $self->db->prepare( 1133 1142 q{ 1134 select * from objectslogs where ikey IN (%s) 1143 select * from objectslogs where ikey = ANY ($1) 1144 or parentikey = ANY ($1) 1135 1145 order by logdate asc 1136 1146 }, 1137 join(',', ('?') x scalar(@ids)) 1138 )); 1139 1140 $sth2->execute(@ids); 1147 ); 1148 1149 $sth2->execute( \@ids ); 1141 1150 my @logs; 1142 1151 while (my $res = $sth2->fetchrow_hashref) { -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/Address.pm
r2078 r2204 337 337 } 338 338 339 sub ParentObject { 340 my ($self) = @_; 341 342 return $self->base->get_object('user', $self->_get_attributes('user')); 343 } 344 339 345 sub _create { 340 346 my ($class, $base, $id, %data) = @_; -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/Employment.pm
r2147 r2204 316 316 } 317 317 $class->SUPER::_get_attr_schema($base, $attrs); 318 } 319 320 sub ParentObject { 321 my ($self) = @_; 322 323 return $self->base->get_object('user', $self->_get_attributes('user')); 318 324 } 319 325 -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/objects.pm
r2196 r2204 306 306 307 307 sub Iid { $_[0]->_get_ikey } 308 309 sub ParentObject { } 308 310 309 311 sub _get_ikey { … … 1417 1419 } 1418 1420 1421 sub ReportChange { 1422 my ($self, $changetype, $message, @args) = @_; 1423 1424 $self->base->ReportChange( 1425 $self->type, 1426 $self->id, 1427 $self->Iid, 1428 $changetype, $message, @args 1429 ) 1430 } 1431 1432 1419 1433 1; 1420 1434 -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/upgrade.pm
r2175 r2204 1161 1161 } 1162 1162 ] 1163 }, 1164 { 1165 ver => 29, 1166 sql => [ 1167 q{ 1168 ALTER TABLE objectslogs 1169 ADD COLUMN parentotype text; 1170 ALTER TABLE objectslogs 1171 ADD COLUMN parentname text; 1172 ALTER TABLE objectslogs 1173 ADD COLUMN parentikey bigint; 1174 CREATE INDEX objectslogs_parentotype_idx 1175 ON public.objectslogs 1176 USING btree (parentotype); 1177 CREATE INDEX objectslogs_parentname_idx 1178 ON objectslogs 1179 USING btree (parentname); 1180 CREATE INDEX objectslogs_parentikey_idx 1181 ON objectslogs 1182 USING btree (parentikey); 1183 } 1184 ], 1163 1185 }, 1164 1186 ); … … 1224 1246 ); 1225 1247 1248 return 1; 1226 1249 } 1227 1250
Note: See TracChangeset
for help on using the changeset viewer.