예제 #1
0
def getAuthFtp(shenqingh, documentType):
    authSql = '''
        select saomiaojid,wenjianxclb
        from gg_wj_sqwjgdbb
        where shendingwjlx = '130001' and wenjianxclb in ('design publish', 'gzgg publish') and youxiaobz = '0' and shenqingh=:shenqingh
    '''
    conn = pool1521.acquire()
    cursor = conn.cursor()
    cursor.execute(authSql, shenqingh=str(shenqingh))
    #gzgg_publish对应的fid优先级最高
    authFidTuples = cursor.fetchall()
    cursor.close()
    pool1521.release(conn)
    if len(authFidTuples) == 0:
        return None
    elif len(authFidTuples) == 1:
        authResult = authFidTuples[0]
    else:
        for fidTuple in authFidTuples:
            if fidTuple[1] == 'gzgg publish':
                authResult = fidTuple
                break
    fid = authResult[0]
    ftp = getFTP(fid, version)
    if ftp is not None:
        submitDate = getTime()
        case = {}
        case['shenqingh'] = shenqingh
        case['wenjianlx'] = documentType
        case['fid'] = fid
        case['submitDate'] = submitDate
        case['url'] = ftp
        return case
    return None
예제 #2
0
def getFid(sql, shenqingh):
    conn = pool1521.acquire()
    cursor = conn.cursor()
    cursor.execute(sql, shenqingh=str(shenqingh))
    result = cursor.fetchall()
    cursor.close()
    pool1521.release(conn)
    return result
예제 #3
0
def getDate(sql, shenqingh, originFid):
    conn = pool1521.acquire()
    cursor = conn.cursor()
    cursor.execute(sql, shenqingh=str(shenqingh), fid=str(originFid))
    result = cursor.fetchone()
    cursor.close()
    pool1521.release(conn)
    if result is not None:
        return result[0]
    return None
예제 #4
0
def getShenqingH(startNum, endNum):
    logger.info("oracle start: " + str(startNum) + ", end: " + str(endNum))
    shenqinghSql = '''
      select shenqingh 
      from (select rownum num, shenqingh from gg_zlx_zhu where zhuanlilx='3' and youxiaobj='0' and shenqingr>='20090101' and rownum<:endNum ) 
      where num>=:startNum
      '''
    conn = pool1521.acquire()
    cursor = conn.cursor()
    cursor.execute(shenqinghSql, endNum=endNum, startNum=startNum)
    result = cursor.fetchall()
    cursor.close()
    pool1521.release(conn)
    return result
예제 #5
0
def insertExceptionTable(shenqingh, fid, filingno, originfid, statuscode):
    logger.info('exception, shenqingh: ' + str(shenqingh) + ',fid: ' +
                str(fid) + ',statuscode: ' + str(statuscode))
    conn = pool1521.acquire()
    cursor = conn.cursor()
    insertSql = "insert into migrate_failure(shenqingh, fid, filingno, originfid,statuscode) values(:shenqingh,:fid,:filingno,:originfid,:statuscode)"
    try:
        cursor.execute(insertSql,
                       shenqingh=str(shenqingh),
                       fid=str(fid),
                       filingno=str(filingno),
                       originfid=str(originfid),
                       statuscode=statuscode)
        conn.commit()
        cursor.close()
        pool1521.release(conn)
    except Exception as e:
        logger.info("插入表异常:" + traceback.format_exc())
        if conn is not None:
            pool1521.release(conn)
예제 #6
0
def getAuthDate(shenqingh):
    '''
    授权入库图片日期:获取申请号的所有图片名称、日期
    :param logicName:
    :return:map<name:date>
    '''
    context = {}
    conn = pool1521.acquire()
    cur = conn.cursor()
    sql = "select currentpicname,submitdate from wg_qtxxb where filingno =:shenqingh and passflag = '1'"
    cur.execute(sql, shenqingh=str(shenqingh))
    tups = cur.fetchall()
    if not tups:
        return context
    for tup in tups:
        if len(tup) == 2:
            key = tup[0]
            context[key] = tup[1]
    cur.close()
    pool1521.release(conn)
    return context