示例#1
0
 def needs_user_man(self):
     maxversion = dbhelper.get_scalar(
         self, "SELECT MAX(version) FROM wiki WHERE name like %s", 0,
         user_manual_wiki_title)
     if (not maxversion) or maxversion < user_manual_version:
         return True
     return False
示例#2
0
文件: api.py 项目: nyuhuhuu/trachacks
 def needs_user_man(self):
     maxversion = dbhelper.get_scalar(self.env.get_db_cnx(),
                                      "SELECT MAX(version) FROM wiki WHERE name like %s", 0,
                                      user_manual_wiki_title)
     if (not maxversion) or maxversion < user_manual_version:
         return True
     return False
示例#3
0
    def do_reports_upgrade(self):
        print "Beginning Reports Upgrade"
        #make version hash
        _versions = dbhelper.get_result_set(
            self.env.get_db_cnx(), """
                                           SELECT report as id, version, r.title as title
                                           FROM report_version
                                           JOIN report r ON r.Id = report_version.report
                                           """)
        versions = {}
        for (id, version, title) in _versions.rows:
            versions[title] = (id, version)

        biggestId = dbhelper.get_scalar(
            self.env.get_db_cnx(),
            "SELECT ID FROM report ORDER BY ID DESC LIMIT 1")

        def insert_report_version(id, ver):
            sql = "DELETE FROM report_version WHERE report = %s;"
            dbhelper.execute_non_query(self.env.get_db_cnx(), sql, id)
            sql = """
            INSERT INTO report_version (report, version)
            VALUES (%s, %s);"""
            # print "about to insert report_version"
            dbhelper.execute_non_query(self.env.get_db_cnx(), sql, id, ver)
            # print "inserted report_version"

        for report_group in all_reports:
            rlist = report_group["reports"]
            for report in rlist:
                title = report["title"]
                new_version = report["version"]
                report_id = [
                    rid for (rid, map_title) in self.reportmap
                    if map_title == title
                ]
                if not report_id:
                    bit = True
                    sql = """INSERT INTO report (id,author,title,query,description) 
                             VALUES (%s,'Timing and Estimation Plugin',%s,%s,'') """
                    biggestId += 1
                    dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                               biggestId, title, report["sql"])
                    insert_report_version(biggestId, new_version)

                    report["reportnumber"] = biggestId
                    self.reportmap.extend([(biggestId, title)])
                else:
                    report_id = report_id[0]
                    report["reportnumber"] = report_id
                    # If we had a report make sure its at the correct version
                    if versions.has_key(title):
                        (_, ver) = versions[title]
                    else:
                        ver = 0
                    if not ver:
                        sql = """
                        UPDATE report
                        SET query=%s 
                        WHERE id = %s """
                        print "updating report: %s" % title
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                                   report["sql"], report_id)
                        insert_report_version(report_id, new_version)
                    elif ver < new_version:
                        sql = """
                        UPDATE report
                        SET query=%s 
                        WHERE id = %s """
                        print "updating report to new version: %s" % title
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                                   report["sql"], report_id)

                        sql = """
                        UPDATE report_version
                        SET version = %s
                        WHERE report = %s
                        """
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                                   new_version, report_id)
示例#4
0
def getTextEstimate(env, id):
    return dbhelper.get_scalar(env,
                               "SELECT DIFFCOMMENT FROM estimate WHERE ID=%s",
                               0, id)
示例#5
0
def getHtmlEstimate(env, id):
    return dbhelper.get_scalar(env, "SELECT COMMENT FROM estimate WHERE ID=%s",
                               0, id)
示例#6
0
def nextEstimateLineItemId(env):
    return (dbhelper.get_scalar(env, estimateLineItemIdSql) or 0) + 1
 def get_max_ordering(self, maingroup, subgroup):
     """ Find the maximum ordering value used for this group of the custom_report table"""
     return dbhelper.get_scalar(
         self.env,
         "SELECT MAX(ordering) FROM custom_report WHERE maingroup=%s AND subgroup=%s",
         0, maingroup, subgroup) or 0
 def get_new_report_id(self):
     """find the next available report id """
     rtn = dbhelper.get_scalar(self.env, "SELECT MAX(id) FROM report")
     return (rtn and rtn + 1) or 1
示例#9
0
def getHtmlEstimate(env, id):
    return dbhelper.get_scalar(env, "SELECT COMMENT FROM estimate WHERE ID=%s", 0, id)
示例#10
0
def nextEstimateLineItemId (env):
    return (dbhelper.get_scalar(env, estimateLineItemIdSql) or 0)+1
示例#11
0
def getTextEstimate(env, id):
    return dbhelper.get_scalar(env, "SELECT DIFFCOMMENT FROM estimate WHERE ID=%s", 0, id)
 def get_max_ordering(self, maingroup, subgroup):
   """ Find the maximum ordering value used for this group of the custom_report table"""
   return dbhelper.get_scalar(self.env, "SELECT MAX(ordering) FROM custom_report WHERE maingroup=%s AND subgroup=%s",
                          0, maingroup, subgroup) or 0
 def get_new_report_id (self):
   """find the next available report id """
   rtn = dbhelper.get_scalar(self.env, "SELECT MAX(id) FROM report")
   return (rtn and rtn+1) or 1
示例#14
0
文件: api.py 项目: nyuhuhuu/trachacks
    def do_reports_upgrade(self):
        print "Beginning Reports Upgrade"
        #make version hash
        _versions = dbhelper.get_result_set(self.env.get_db_cnx(),
                                           """
                                           SELECT report as id, version, r.title as title
                                           FROM report_version
                                           JOIN report r ON r.Id = report_version.report
                                           """)
        versions = {}
        for (id, version, title) in _versions.rows:
            versions[title] = (id, version)
            
        biggestId = dbhelper.get_scalar(self.env.get_db_cnx(),
                                        "SELECT ID FROM report ORDER BY ID DESC LIMIT 1")
        def insert_report_version(id, ver):
            sql = "DELETE FROM report_version WHERE report = %s;"
            dbhelper.execute_non_query(self.env.get_db_cnx(), sql, id  )
            sql = """
            INSERT INTO report_version (report, version)
            VALUES (%s, %s);"""
            # print "about to insert report_version"
            dbhelper.execute_non_query(self.env.get_db_cnx(), sql, id, ver )
            # print "inserted report_version"
            
        for report_group in all_reports:
            rlist = report_group["reports"]
            for report in rlist:
                title = report["title"]
                new_version = report["version"]
                report_id = [rid
                             for (rid, map_title) in self.reportmap
                             if map_title == title]
                if not report_id:
                    bit = True; 
                    sql = """INSERT INTO report (id,author,title,query,description) 
                             VALUES (%s,'Timing and Estimation Plugin',%s,%s,'') """
                    biggestId += 1
                    dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                               biggestId, title, report["sql"])
                    insert_report_version(biggestId, new_version)

                    report["reportnumber"] = biggestId
                    self.reportmap.extend([(biggestId,title)])
                else:
                    report_id = report_id[0]
                    report["reportnumber"] = report_id
                     # If we had a report make sure its at the correct version
                    if versions.has_key(title):
                        ( _ , ver) = versions[title]
                    else:
                        ver = 0
                    if not ver:
                        sql = """
                        UPDATE report
                        SET query=%s 
                        WHERE id = %s """
                        print "updating report: %s" % title
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                                   report["sql"], report_id )
                        insert_report_version( report_id, new_version )
                    elif ver < new_version:
                        sql = """
                        UPDATE report
                        SET query=%s 
                        WHERE id = %s """
                        print "updating report to new version: %s" % title
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql,
                                                   report["sql"], report_id )
                        
                        sql = """
                        UPDATE report_version
                        SET version = %s
                        WHERE report = %s
                        """
                        dbhelper.execute_non_query(self.env.get_db_cnx(), sql, new_version, report_id)