@@ -61,6 +61,7 @@ def __init__(self, item, parent=None):
6161 self .editPkey .textChanged .connect (self .updateSql )
6262 self .editStart .textChanged .connect (self .updateSql )
6363 self .editEnd .textChanged .connect (self .updateSql )
64+ self .editUser .textChanged .connect (self .updateSql )
6465
6566 self .updateSql ()
6667
@@ -114,6 +115,7 @@ def updateSql(self):
114115 self .colPkey = self .db .connector .quoteId (self .editPkey .text ())
115116 self .colStart = self .db .connector .quoteId (self .editStart .text ())
116117 self .colEnd = self .db .connector .quoteId (self .editEnd .text ())
118+ self .colUser = self .db .connector .quoteId (self .editUser .text ())
117119
118120 self .columns = [self .db .connector .quoteId (x .name ) for x in self .table .fields ()]
119121
@@ -173,8 +175,8 @@ def showHelp(self):
173175 QMessageBox .information (self , "Help" , helpText )
174176
175177 def sql_alterTable (self ):
176- return u"ALTER TABLE %s ADD %s serial, ADD %s timestamp, ADD %s timestamp;" % (
177- self .schematable , self .colPkey , self .colStart , self .colEnd )
178+ return u"ALTER TABLE %s ADD %s serial, ADD %s timestamp, ADD %s timestamp, ADD %s varchar ;" % (
179+ self .schematable , self .colPkey , self .colStart , self .colEnd , self . colUser )
178180
179181 def sql_setPkey (self ):
180182 return u"ALTER TABLE %s DROP CONSTRAINT %s, ADD PRIMARY KEY (%s);" % (
@@ -209,6 +211,7 @@ def sql_functions(self):
209211 IF NEW.%(end)s IS NULL THEN
210212 INSERT INTO %(schematable)s (%(cols)s, %(start)s, %(end)s) VALUES (%(oldcols)s, OLD.%(start)s, current_timestamp);
211213 NEW.%(start)s = current_timestamp;
214+ NEW.%(user)s = current_user;
212215 END IF;
213216 RETURN NEW;
214217END;
@@ -222,12 +225,13 @@ def sql_functions(self):
222225 if NEW.%(start)s IS NULL then
223226 NEW.%(start)s = now();
224227 NEW.%(end)s = null;
228+ NEW.%(user)s = current_user;
225229 end if;
226230 RETURN NEW;
227231END;
228232$$
229233LANGUAGE 'plpgsql';""" % {'view' : self .view , 'schematable' : self .schematable , 'cols' : cols , 'oldcols' : old_cols ,
230- 'start' : self .colStart , 'end' : self .colEnd , 'func_at_time' : self .func_at_time ,
234+ 'start' : self .colStart , 'end' : self .colEnd , 'user' : self . colUser , ' func_at_time' : self .func_at_time ,
231235 'func_update' : self .func_update , 'func_insert' : self .func_insert }
232236 return sql
233237
0 commit comments