Esempio n. 1
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BRSFLG,BESBNO,BEACSB,BETELR,BEAUUS,NCCWKDAT,TRCCO,TRCDAT,TRCNO,SNDMBRCO,RCVMBRCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,BOJEDT,BOSPSQ,ORTRCCO,CUR,OCCAMT,CONT,NCCTRCST,MBRTRCST,ISDEAL,PRCCO,STRINFO,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_ztcbka WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 2
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BCURSQ,BESBNO,BEACSB,BETELR,BEAUUS,FEDT,RBSQ,TRDT,TLSQ,SBAC,ACNM,RBAC,OTNM,DASQ,MGID,PRCCO,STRINFO,BCSTAT,BDWFLG,PRTCNT,BJETIM,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_sstlog WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeDebug(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 3
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT NCCWKDAT,SNDBNKCO,TRCDAT,TRCNO,RCVBNKCO,SNDMBRCO,RCVMBRCO,TRCCO,DCFLG,PYRACC,PYEACC,CUR,OCCAMT,LOCOCCAMT,CUSCHRG,LOCCUSCHRG,ORTRCNO,BJEDTE,BSPSQN,EACTYP,EACINF,LOCEACTYP,LOCEACINF,ISDEAL,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_tddzcz WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 4
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT SNDBNKCO,TRCDAT,TRCNO,NCCWKDAT,MSGTYPCO,RCVMBRCO,SNDMBRCO,TRCCO,SNDBRHCO,SNDCLKNO,SNDTRDAT,SNDTRTIM,MSGFLGNO,ORMFN,OPRTYPNO,ROPRTPNO,SNDBNKNM,RCVBNKCO,RCVBNKNM,CUR,OCCAMT,PYRACC,PYRNAM,PYRADDR,PYEACC,PYENAM,PYEADDR,OPRATTNO,SEAL,BILDAT,BILNO,BILVER,PAYWAY,BILAMT,RMNAMT,USE,REMARK,BJEDTE,BSPSQN,BCSTAT,BDWFLG,EACTYP,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_hpdzmx WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 5
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BESBNO,BESBNM,BESBTP,BTOPSB,BEACSB,BANKBIN,STRINFO,SUBFLG,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_subbra WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 6
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,TRCCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,SNDMBRCO,RCVMBRCO,TRCDAT,TRCNO,NPCBKID,NPCBKNM,NPCACNT,OCCAMT,REMARK,PRCCO,STRINFO,NOTE1,NOTE2,NOTE4,NOTE3 FROM rcc_mrqtbl WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 7
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT NCCWKDAT,SCNBBH,SCFEDT,SCRBSQ,SCEYDT,SCTLSQ,SCRVSB,SCCATR,SCWLBZ,SCTRAM,SCFLAG,SCSTCD,SCBYZ1,SCBYZ2,SCBYZ3,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_tdzjmx WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 8
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BRSFLG,BESBNO,BEACSB,BETELR,BEAUUS,BEAUPS,TERMID,BBSSRC,DASQ,DCFLG,OPRNO,OPRATTNO,NCCWKDAT,TRCCO,TRCDAT,TRCNO,MSGFLGNO,COTRCDAT,COTRCNO,COMSGFLGNO,SNDMBRCO,RCVMBRCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,CUR,OCCAMT,CHRGTYP,LOCCUSCHRG,CUSCHRG,PYRTYP,PYRACC,PYRNAM,PYRADDR,PYETYP,PYEACC,PYENAM,PYEADDR,STRINFO,CERTTYPE,CERTNO,BNKBKNO,BNKBKBAL,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_wtrbka WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 9
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BCURSQ,BCSTAT,BDWFLG,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_spbsta WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeDebug(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 10
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT NCCWKDAT,TRCCO,BRSFLG,TRCNAM,TRCRSNM,TCNT,CTAMT,DTAMT,OFSTAMT,CLAMT,DLAMT,OFSLAMT,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_hpdzhz WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 11
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT STRDAT,ENDDAT,BESBNO,BESBNM,TRCCHRGCNT,TRCCHRGAMT,BILCHRGCNT,BILCHRGAMT,UCSWCHRGCNT,UCSWCHRGAMT,TCNT,TAMT,ISDEAL,FEDT,RBSQ,TRDT,TLSQ,MGID FROM rcc_qsqhqd WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 12
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT TRCDAT,BSPSQN,MSGFLGNO,ORMFN,TRCCO,BRSFLG,BESBNO,BEACSB,BETELR,BEAUUS,BEAUPS,TERMID,OPTYPE,NCCWKDAT,TRCNO,SNDMBRCO,RCVMBRCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,ORTRCDAT,ORTRCCO,ORTRCNO,ORSNDSUBBNK,ORSNDBNK,ORRCVSUBBNK,ORRCVBNK,ORPYRACC,ORPYRNAM,ORPYEACC,ORPYENAM,CUR,OCCAMT,CHRG,ERRCONBAL,BALANCE,UNCONRST,CONSTS,PRCCO,STRINFO,NOTE1,NOTE2,NOTE3,NOTE4,NOTE5 FROM rcc_acckj WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 13
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BRSFLG,TRCCO,NCCWKDAT,TRCDAT,TRCNO,SNDMBRCO,RCVMBRCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,CUR,LBDCFLG,LSTDTBAL,NTTDCFLG,NTTBAL,BALDCFLG,TODAYBAL,AVLBAL,NTODAYBAL,CHKRST,BOJEDT,BOSPSQ,PRCCO,STRINFO,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_rekbal WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 14
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT SNDBNKCO,TRCDAT,TRCNO,NCCWKDAT,TRCCO,MSGTYPCO,RCVMBRCO,SNDMBRCO,SNDBRHCO,SNDCLKNO,SNDTRDAT,SNDTRTIM,MSGFLGNO,ORMFN,OPRTYPNO,ROPRTPNO,SNDBNKNM,RCVBNKCO,RCVBNKNM,CUR,OCCAMT,CUSCHRG,PYRMBRCO,PYRACC,PYEMBRCO,PYEACC,ORTRCCO,ORTRCNO,DCFLG,CBFLG,CONFFLG,CANCFLG,STRINFO,BJEDTE,BSPSQN,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_tddzmx WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 15
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BESBNO,BPSBNO,CHGTYP,TRCCO,CHGNAM,CHGDATA,EFCTDAT,INVDATE,UPDTIME FROM rcc_chgtbl WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 16
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BANKBIN,BANKSTATUS,BANKATTR,STLBANKBIN,BANKNAM,BANKADDR,BANKPC,BANKTEL,EFCTDAT,INVDAT,ALTTYPE,PRIVILEGE,NEWOFLG,STRINFO,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_paybnk WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 17
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BJEDTE,BSPSQN,BRSFLG,BESBNO,BETELR,BEAUUS,NCCWKDAT,TRCCO,TRCDAT,TRCNO,SNDMBRCO,RCVMBRCO,SNDBNKCO,SNDBNKNM,RCVBNKCO,RCVBNKNM,BOJEDT,BOSPSQ,ORTRCCO,BILDAT,BILNO,BILPNAM,BILENDDT,BILAMT,PYENAM,HONBNKNM,CONT,ISDEAL,PRCCO,STRINFO,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_pjcbka WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 18
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT SNDBNKCO,TRCDAT,TRCNO,ROPRTPNO,TRCCO,RCVBNKCO,CUR,RDTCNT,RDTAMT,RCTCNT,RCTAMT,SDTCNT,SDTAMT,SCTCNT,SCTAMT,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_atrchk WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 19
0
def insInfoBil(bil_dict):
    
    AfaLoggerFunc.tradeInfo( ">>>开始登记汇票信息登记簿[" + bil_dict["BILVER"] + "][" + bil_dict["BILNO"] + "][" + bil_dict["BILRS"] + "]交易信息及相关状态" )
    if not bil_dict.has_key("BILVER"):
        return AfaFlowControl.ExitThisFlow("S999","登记汇票信息登记簿,BILVER不能为空")
        
    if not bil_dict.has_key("BILNO"):
        return AfaFlowControl.ExitThisFlow("S999","登记汇票信息登记簿,BILNO不能为空")
    
    if not bil_dict.has_key("BILRS"):
        return AfaFlowControl.ExitThisFlow("S999","登记汇票信息登记簿,BILRS不能为空")
        
    
    
    #===========将输入字典赋值到汇票信息登记簿字典==============================
    bilinf_dict = {}
    
    if not rccpsMap0000Dbil_dict2Dbilinf.map(bil_dict,bilinf_dict):
        return AfaFlowControl.ExitThisFlow( 'S999', '将输入字典赋值到汇票信息登记簿字典异常' )
    
    
    bilinf_where_dict = {}
    bilinf_where_dict['BILRS']  = bil_dict['BILRS']
    bilinf_where_dict['BILVER'] = bil_dict['BILVER']
    bilinf_where_dict['BILNO']  = bil_dict['BILNO']
    
    tmp_bilinf_dict = rccpsDBTrcc_bilinf.selectu(bilinf_where_dict)
    if tmp_bilinf_dict == None:
        return AfaFlowControl.ExitThisFlow( 'S999', '校验汇票信息登记簿是否存在相同汇票异常' )
    
    if len(tmp_bilinf_dict) <= 0:
        AfaLoggerFunc.tradeError("汇票信息登记簿不存在此汇票,插入汇票信息")
    
        #===========登记信息到汇票信息登记簿========================================
        ret = rccpsDBTrcc_bilinf.insert(bilinf_dict)
        if ret <= 0:
            AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
            return AfaFlowControl.ExitThisFlow( 'S999', '登记汇票详细信息异常' )
        
        return True
    else:
        AfaLoggerFunc.tradeError("汇票信息登记簿存在此汇票,更新汇票信息")
    
        #===========登记信息到汇票信息登记簿========================================
        ret = rccpsDBTrcc_bilinf.update(bilinf_dict,bilinf_where_dict)
        if ret <= 0:
            AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
            return AfaFlowControl.ExitThisFlow( 'S999', '登记汇票详细信息异常' )
        
        return True
Esempio n. 20
0
def StartWorkSql( ):
    global sqlErrMsg
    sqlErrMsg=''
    curs=None
    try:
        conn=Db2Connection.getConnection( )
        curs=conn.cursor( )
        curs.execute( "START TRANSACTION" )
        curs.close( )
        return True
    except Exception , e:
        if( curs != None ):
            curs.close( )
        sqlErrMsg=str( e )
        AfaLoggerFunc.tradeError( sqlErrMsg )
        return False
Esempio n. 21
0
def RollbackSql( ):
    global sqlErrMsg
    sqlErrMsg=''
    curs=None
    try:
        conn=Db2Connection.getConnection( )
        curs=conn.cursor( )
        curs.execute( "ROLLBACK" )
        curs.close( )
        return True
    except Exception , e:
        if( curs != None ):
            curs.close( )
        sqlErrMsg=str( e )
        AfaLoggerFunc.tradeError( sqlErrMsg )
        return False
Esempio n. 22
0
def ChkUnitInfo( ):

    AfaLoggerFunc.tradeInfo( '=====判断应用状态开始=====' )

    sqlStr = ''
    sqlStr = sqlStr + "SELECT STATUS,STARTDATE,ENDDATE,STARTTIME,ENDTIME,ACCNO FROM ABDT_UNITINFO "
    sqlStr = sqlStr + " AND WHERE APPNO = '" + TradeContext.sysId + "'"

    #============单位编码============
    sqlStr = sqlStr + " AND BUSINO = '" + TradeContext.busino + "'"

    #============委托方式============
    sqlStr = sqlStr + " AND AGENTTYPE IN ('1','2')"
    
    AfaLoggerFunc.tradeFatal( '查询结果 :'+sqlStr )
    
    records = AfaDBFunc.SelectSql( sqlStr )
    
    if( records == None ):
        return AfaFlowControl.ExitThisFlow( 'A0002', '查询单位协议信息异常')

    elif( len( records )!=0 ):
        AfaUtilTools.ListFilterNone( records )
        
        TradeContext.STATUS        = str(records[0][0])                             #签约状态
        TradeContext.STARTDATE     = str(records[0][1])                             #生效日期
        TradeContext.ENDDATE       = str(records[0][2])                             #失效日期
        TradeContext.STARTTIME     = str(records[0][3])                             #服务开始时间
        TradeContext.ENDTIME       = str(records[0][4])                             #服务终止时间
        TradeContext.ACCNO         = str(records[0][5])                             #对公账户
        
        
        if ( (TradeContext.STARTDATE > TradeContext.workDate) or (TradeContext.workDate > TradeContext.ENDDATE) ):
            return AfaFlowControl.ExitThisFlow( '9000', '该单位委托协议还没有生效或已过有效期')

        if ( (TradeContext.STARTTIME > TradeContext.workTime) or (TradeContext.workTime > TradeContext.ENDTIME) ):
            return AfaFlowControl.ExitThisFlow( '9000', '已经超过该系统的服务时间,该业务必须在[' + s_StartDate + ']-[' + s_EndDate + ']时间段运行')

        #=============代理业务帐号=============
        #TradeContext.__agentAccno__ = records[0][5] 
        #AfaLoggerFunc.tradeInfo('收款人帐户__agentAccno__ BB::'+ TradeContext.__agentAccno__)           

        AfaLoggerFunc.tradeInfo( '=====判断应用状态结束=======' )
        return True
    else:
        AfaLoggerFunc.tradeError( sqlStr )
        return AfaFlowControl.ExitThisFlow( 'A0003', '该地区没有开放此业务' )
Esempio n. 23
0
def ChkAppStatus( ):

    AfaLoggerFunc.tradeInfo( '判断应用状态[begin]' )

    #============业务编号============
    sqlStr = "SELECT STATUS,STARTDATE,ENDDATE,STARTTIME,ENDTIME,ACCNO FROM ABDT_UNITINFO WHERE APPNO = '" + TradeContext.appNo + "'"

    #============单位编码============
    sqlStr = sqlStr + " AND BUSINO = '" + TradeContext.busiNo + "'"

    #============委托方式============
    sqlStr = sqlStr + " AND AGENTTYPE IN ('1','2')"

    records = AfaDBFunc.SelectSql( sqlStr )
    if( records == None ):
        # AfaLoggerFunc.tradeFatal( sqlStr )
        return AfaFlowControl.ExitThisFlow( 'A0002', '代收代付_单位信息表:'+AfaDBFunc.sqlErrMsg )

    elif( len( records )!=0 ):
        AfaUtilTools.ListFilterNone( records )
        #===============判断业务状态============================
        if( records[0][0]=="0" ):
            return AfaFlowControl.ExitThisFlow( 'A0004', '该业务处于未启用状态,不能做此交易' )
        elif( records[0][0]=="2" ):
            return AfaFlowControl.ExitThisFlow( 'A0005', '该业务处于关闭状态,不能做此交易' )
        elif( records[0][0]=="3" ):
            return AfaFlowControl.ExitThisFlow( 'A0006', '该业务处于停用状态,不能做此交易' )
        
        #===============判断服务时间============================
        if( long( TradeContext.workDate )<long( records[0][1] ) or long( TradeContext.workDate )>long( records[0][2] ) ):
            return AfaFlowControl.ExitThisFlow ('A0008', "该业务已过期,有效期:["+records[0][1] + "-->" + records[0][2] + "]") 

        #================判断有效时间===========================
        if( long(TradeContext.workTime) < long(records[0][3])) or (long(TradeContext.workTime) > long(records[0][4])):
            return AfaFlowControl.ExitThisFlow( 'A0007', "超过业务开放时间,请在["+records[0][3]+"-->"+records[0][4]+"]做此业务" )

        #=============代理业务帐号=============
        TradeContext.__agentAccno__ = records[0][5]            

        TradeContext.Daccno = records[0][5]

        AfaLoggerFunc.tradeInfo( '判断应用状态[end]' )
        return True
    else:
        AfaLoggerFunc.tradeError( sqlStr )
        return AfaFlowControl.ExitThisFlow( 'A0003', '该地区没有开放此业务' )
Esempio n. 24
0
def executeUpdate( sql ):
    global sqlErrMsg
    sqlErrMsg=''
    curs=None  
    try:
        conn=Db2Connection.getConnection( )
        curs=conn.cursor( )
        curs.execute( sql )
        rowcount=curs.rowcount
        curs.close( )
        return rowcount
    except Exception , e:
        if( curs != None ):
            curs.close( )
        sqlErrMsg=str( e )
        AfaLoggerFunc.tradeError(sql)
        AfaLoggerFunc.tradeError( sqlErrMsg )
        return -1
Esempio n. 25
0
def executeQueryMany( sql , arraysize=0 ):
    global sqlErrMsg
    sqlErrMsg=''
    curs=None
    try:
        conn=Db2Connection.getConnection( )
        curs=conn.cursor( )
        curs.arraysize=arraysize
        curs.execute( sql )
        records=curs.fetchmany( )
        curs.close( )
        return records
    except Exception, e:
        if( curs != None ):
            curs.close( )
        sqlErrMsg=str( e )
        AfaLoggerFunc.tradeError(sql)
        AfaLoggerFunc.tradeError( sqlErrMsg )
        return None
Esempio n. 26
0
def ChkAbnormal( ):

    AfaLoggerFunc.tradeInfo( '查询流水表中的主机异常交易' )
    sql="SELECT COUNT(*) FROM FS_MAINTRANSDTL WHERE WORKDATE='"+ \
    TradeContext.workDate+"' AND AGENTCODE='"+TradeContext.agentCode+ \
    "' AND AGENTZONENO='"+TradeContext.zoneno+"' AND BRNO='"+TradeContext.brno+\
    "' AND TELLERNO='"+TradeContext.teller+"' AND REVTRANF='0'AND  \
    (BANKSTATUS='2' OR (BANKSTATUS='0' AND CORPSTATUS IN ('1', '2','3')))"
    result=AfaDBFunc.SelectSql( sql )
    if( result == None ):
        # AfaLoggerFunc.tradeFatal( sql )
        return -1
        
    if( result[0][0]!=0 ):
        return 1
        
    else:
        AfaLoggerFunc.tradeError( sql )
        return 0
Esempio n. 27
0
def selectu( where_dict ):
    if not chk(where_dict):
        return None

    wheresql = ""
    for where_item in where_dict.keys():
        if table_dict[where_item] == 'S':
            #20110819 曾照泰修改 汇票对账时当解付本行汇票时BILNO查询条件为模糊查询,不然查询不到原纪录
            if where_item=='BILNO':
                wheresql = wheresql + where_item + " LIKE '%" + where_dict[where_item] + "%' and  "
            else:
                wheresql = wheresql + where_item + " LIKE '" + where_dict[where_item] + "' and  "
            #end
        else:
            wheresql = wheresql + where_item + " = " + str(where_dict[where_item]) + " and "

    sql = "SELECT BILVER,BILNO,BILRS,BILTYP,BILDAT,PAYWAY,REMBNKCO,REMBNKNM,PAYBNKCO,PAYBNKNM,PYRACC,PYRNAM,PYRADDR,PYEACC,PYENAM,PYEADDR,PYHACC,PYHNAM,PYHADDR,PYITYP,PYIACC,PYINAM,BILAMT,OCCAMT,RMNAMT,CUR,SEAL,USE,REMARK,HPCUSQ,HPSTAT,NOTE1,NOTE2,NOTE3,NOTE4 FROM rcc_bilinf WHERE " + wheresql[0:-5]
    AfaLoggerFunc.tradeInfo(sql)
    records = AfaDBFunc.SelectSql( sql )
    if (records == None):
        return None
    elif (len(records) > 1):
        AfaLoggerFunc.tradeError("查询结果非唯一,请检查查询条件[" + wheresql[0:-5] + "]")
        return None
    elif (len(records) == 0):
        AfaLoggerFunc.tradeError("查询结果为空,查询条件[" + wheresql[0:-5] + "]")
        tmp_dict = {}
        return tmp_dict
    else:
        tmp_dict = {}
        for i in xrange(0,len(table_tuple)):
            if len(str(records[0][i])) == 0:
                tmp_dict[table_tuple[i]] = ""
            else:
                tmp_dict[table_tuple[i]] = records[0][i]
        #AfaLoggerFunc.tradeInfo("return return_dict:" + str(tmp_dict))
        return tmp_dict
Esempio n. 28
0
def chk(where_dict):
    for item in where_dict.keys():
        if item not in table_tuple:
            AfaLoggerFunc.tradeError( '表[rcc_ztcbka]中无列[' + item + ']' )
            return False
    return True
Esempio n. 29
0
def chk(where_dict):
    for item in where_dict.keys():
        if item not in table_tuple:
            AfaLoggerFunc.tradeError( '表[rcc_atrchk]中无列[' + item + ']' )
            return False
    return True
Esempio n. 30
0
 while file_line:
     file_line = AfaUtilTools.trim(pfile.readline())   
     file_line = rccpsUtilTools.replaceRet(file_line)
     
     if file_line == "":
         continue
         
     line_list = file_line.split('|')
     
     paybnk_where_dict = {}
     paybnk_where_dict['BANKBIN'] = line_list[0]
     tmp_paybnk_dict = rccpsDBTrcc_paybnk.selectu(paybnk_where_dict)
     if tmp_paybnk_dict == None:
         if not AfaDBFunc.RollbackSql( ):
             AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
             AfaLoggerFunc.tradeError(">>>Rollback异常")
         AfaLoggerFunc.tradeInfo(">>>Rollback成功")
         rccpsCronFunc.cronExit("S999","查询将登记行号是否存在异常")
     
     paybnk_dict = {}
     paybnk_dict['BANKBIN']      = line_list[0][:10]
     paybnk_dict['BANKSTATUS']   = line_list[1][:1]
     paybnk_dict['BANKATTR']     = line_list[2][:2]
     paybnk_dict['STLBANKBIN']   = line_list[3][:10]
     paybnk_dict['BANKNAM']      = line_list[4][:60]
     paybnk_dict['BANKADDR']     = line_list[5][:60]
     paybnk_dict['BANKPC']       = line_list[6][:6]
     paybnk_dict['BANKTEL']      = line_list[7][:30]
     paybnk_dict['EFCTDAT']      = line_list[8][:8]
     paybnk_dict['INVDAT']       = line_list[9][:8]
     paybnk_dict['ALTTYPE']      = line_list[10][:1]
Esempio n. 31
0
def SubModuleMainFst( ):
    AfaLoggerFunc.tradeInfo('财税库行_行内资金清算开始[T003001_0331112]' )
    TradeContext.TransCode='0331112'
    try:
        #=============获取当前系统时间====================
        TradeContext.workDate=UtilTools.GetSysDate( )
        TradeContext.workTime=UtilTools.GetSysTime( )
        
        #============系统标识============
        sqlStr = "SELECT * FROM AFA_UNITADM WHERE APPNO = '" + TradeContext.appNo + "' AND "
        #============商户代码============
        sqlStr = sqlStr+"UNITNO = '" + TradeContext.unitno + "' "
        AfaLoggerFunc.tradeInfo( sqlStr )
        records = AfaDBFunc.SelectSql( sqlStr )
        if( records == None ):
            return AfaFlowControll.ExitThisFlow( 'A0002', '商户信息表操作异常:'+AfaDBFunc.sqlErrMsg )
        elif( len( records )==0 ):
            AfaLoggerFunc.tradeError( sqlStr )
            return AfaFlowControll.ExitThisFlow( 'A0003', '无此商户信息' )
        else:
            records=UtilTools.ListFilterNone( records )
            ##=============商户名称=============
            #TradeContext.unitName = records[0][2]
            ##=============商户简称=============
            #TradeContext.unitSName = records[0][3]
            #
            ##===============判断商户状态============================
            #if( records[0][4]=="0" ):
            #    return AfaFlowControll.ExitThisFlow( 'A0004', '该商户处于关闭状态,不能做交易' )
            #elif( records[0][4]=="2" ):
            #    return AfaFlowControll.ExitThisFlow( 'A0005', '该商户处于暂停状态,不能做交易' )
            #elif( records[0][4]=="3" ):
            #    return AfaFlowControll.ExitThisFlow( 'A0005', '该商户处于未启用状态,不能做交易' )
            ##=============银行角色=============
            #TradeContext.__bankMode__ = records[0][5]
            #=============业务模式=============
            TradeContext.__busiMode__ = records[0][6]
            #=============账户模式=============
            TradeContext.__accMode__ = records[0][7]
            AfaLoggerFunc.tradeInfo( '业务模式:'+TradeContext.__busiMode__+'  账户模式:'+ TradeContext.__accMode__)
            ##===============业务模式============================
            #if( TradeContext.__busiMode__!="2" ): 
            #======================账户模式============================
            if( TradeContext.__accMode__ !="2" ):   #无分支商户单位,不需行内清算
                return True
                ##===============银行商户代码(商户号)============================
                #TradeContext.bankUnitno = records[0][8]
                ##===============主办分行号============================
                #if(len(records[0][9])>0):
                #    TradeContext.mainZoneno = records[0][9]
                ##===============主办网点号============================
                #if(len(records[0][10])>0):
                #    TradeContext.mainBrno = records[0][10]
                ##===============银行编码============================
                #TradeContext.bankno = records[0][16]
                ##=============单位账号=============
                #TradeContext.__agentAccno__ = records[0][17]
                ##=============摘要代码(帐务核心系统需要)=============
                #TradeContext.__zhaiYaoCode__ = records[0][32]
                ##=============摘要(帐务核心系统需要)=============
                #TradeContext.__zhaiYao__ = records[0][33]
            if( TradeContext.__accMode__ == '2' ):
                #=============贷方账号(清算行帐号)=============
                TradeContext.agentAccno = records[0][17]
                #=========商户分支单位=============
                #============系统标识============
                sqlStr = "SELECT * FROM AFA_SUBUNITADM WHERE APPNO = '" + TradeContext.appNo + "' AND "
                #============商户代码============
                sqlStr = sqlStr+"UNITNO = '" + TradeContext.unitno + "' "
                AfaLoggerFunc.tradeInfo( sqlStr )
                subRecords = AfaDBFunc.SelectSql( sqlStr )
                if(subRecords == None ):
                    # AfaLoggerFunc.tradeFatal( sqlStr )
                    return AfaFlowControll.ExitThisFlow( 'A0002', '商户分支单位信息表操作异常:'+AfaDBFunc.sqlErrMsg )
                elif( len( subRecords )==0 ):
                    return AfaFlowControll.ExitThisFlow( 'A0002', '商户分支单位中无记录,参数设置有误' )
                else:
                    subRecords=UtilTools.ListFilterNone( subRecords )
                    for i in range( 0, len( subRecords ) ):
                        subUnitno = subRecords[i][2]
                        AfaLoggerFunc.tradeInfo( 'subunitno:'+subUnitno )
                        #=============摘要代码=============
                        TradeContext.__zhaiYaoCode__ = subRecords[i][32]
                        #=============摘要=============
                        TradeContext.__zhaiYao__    = subRecords[i][33]
                        #=============清算:出现清算金额大于银行发生额,需要联社1391科目垫款====================
                        #统计县联社对账差异金额作为转账金额
                        if not DoSumAmountDiff(subUnitno):
                            return AfaFlowControll.ExitThisFlow( 'A0027', '汇总发生额失败' )
                        #TradeContext.amount='1'
                        TradeContext.amount     =str(long(float(TradeContext.amountDiff)))
                        if long(TradeContext.amount)>0 :
                            #检查是否已经清算
                            sqlStr_qs = "SELECT COUNT(*) FROM AFA_MAINTRANSDTL WHERE APPNO = '" + TradeContext.appNo + "'"
                            sqlStr_qs = sqlStr_qs + "AND  UNITNO = '" + TradeContext.unitno + "' "
                            sqlStr_qs = sqlStr_qs + "AND  SUBUNITNO = '" + subUnitno + "' "
                            sqlStr_qs = sqlStr_qs + "AND  USERNO = '-' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE2 = '" + TradeContext.ChkDate + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE3 = '" + TradeContext.ChkAcctOrd + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE4 = '" + TradeContext.PayBkCode.strip()   + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE5 = '" + TradeContext.PayeeBankNo.strip() + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE6 = '0'" 
                            AfaLoggerFunc.tradeInfo( sqlStr_qs )
                            Records_qs = AfaDBFunc.SelectSql( sqlStr_qs )
                            if(Records_qs == None ):
                                # AfaLoggerFunc.tradeFatal( sqlStr )
                                return AfaFlowControll.ExitThisFlow( 'A0002', '流水表操作异常:'+AfaDBFunc.sqlErrMsg )
                            elif (len(Records_qs)=0): 
                                TradeContext.__chkAccPwdCtl__='0'   
                                TradeContext.channelCode='009'
                                TradeContext.accType    ='001'
                                TradeContext.tellerno   ='999986'                   #
                                TradeContext.cashTelno  ='999986'                   #
                                TradeContext.termId     ='tips'
                                TradeContext.brno       =subUnitno                  #unitno作为记账网点号
                                TradeContext.zoneno     =TradeContext.brno[0:3]
                                TradeContext.accno      =subRecords[i][18]          #联社1391账户作为借方账户
                                TradeContext.__agentAccno__=subRecords[i][17]       #联社2013账户作为贷方账户
                                AfaLoggerFunc.tradeInfo( '借方:'+TradeContext.accno+'贷方:' +TradeContext.__agentAccno__)
                                TradeContext.userno      ='-'
                                TradeContext.tradeType   ='T'                       #转账类交易
                                TradeContext.userName    =subRecords[i][3]+'.清算流水'
                                AfaFlowControl.GetBranchInfo(TradeContext.brno)
                                TradeContext.note1      =TradeContext.__mngZoneno__ #上级管理机构
                                TradeContext.note2      =TradeContext.ChkDate            
                                TradeContext.note3      =TradeContext.ChkAcctOrd         
                                TradeContext.note4      =TradeContext.PayBkCode.strip()  
                                TradeContext.note5      =TradeContext.PayeeBankNo.strip()
                                TradeContext.note6      ='0' #垫款流水
                                TradeContext.revTranF   ='0'
                                #TradeContext.tradeType  ='T' #转账类交易
                                TradeContext.workTime   =UtilTools.GetSysTime( )
                                #=============获取平台流水号====================
                                if AfaFlowControl.GetSerialno( ) == -1 :
                                    AfaLoggerFunc.tradeInfo('>>>处理结果:获取平台流水号异常' )
                                    return AfaFlowControll.ExitThisFlow( 'A0027', '获取流水号失败' )
                                #
                                TradeContext.subUnitno  =subUnitno       #流水中分支商户代码
                                #=============插入流水表====================
                                if not TransDtlFunc.InsertDtl( ) :
                                    return AfaFlowControll.ExitThisFlow( 'A0027', '插入流水表失败' )
                                
                                #=============与主机通讯====================
                                AfaHostFunc.AfaCommHost('705050') 
                                #if TradeContext.errorCode!='0000':
                                #    return False
                                #=============更新主机返回状态====================
                                TransDtlFunc.UpdateDtl( 'TRADE' )
                            
                        #=============清算:从联社2013进清算行2621====================
                        ##统计县联社总发生额作为转账金额
                        #if not DoSumAmount(subUnitno):
                        #    return AfaFlowControll.ExitThisFlow( 'A0027', '汇总发生额失败' )
                        #TradeContext.amount='1'
                        TradeContext.amount     =str(long(float(TradeContext.amountQS)))
                        if long(TradeContext.amount)>0 :
                            #检查是否已经清算
                            sqlStr_qs = "SELECT COUNT(*) FROM AFA_MAINTRANSDTL WHERE APPNO = '" + TradeContext.appNo + "'"
                            sqlStr_qs = sqlStr_qs + "AND  UNITNO = '" + TradeContext.unitno + "' "
                            sqlStr_qs = sqlStr_qs + "AND  SUBUNITNO = '" + subUnitno + "' "
                            sqlStr_qs = sqlStr_qs + "AND  USERNO = '-' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE2 = '" + TradeContext.ChkDate + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE3 = '" + TradeContext.ChkAcctOrd + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE4 = '" + TradeContext.PayBkCode.strip()   + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE5 = '" + TradeContext.PayeeBankNo.strip() + "' "
                            sqlStr_qs = sqlStr_qs + "AND  NOTE6 = '1'" 
                            AfaLoggerFunc.tradeInfo( sqlStr_qs )
                            Records_qs = AfaDBFunc.SelectSql( sqlStr_qs )
                            if(Records_qs == None ):
                                # AfaLoggerFunc.tradeFatal( sqlStr )
                                return AfaFlowControll.ExitThisFlow( 'A0002', '流水表操作异常:'+AfaDBFunc.sqlErrMsg )
                            elif (len(Records_qs)=0): 
                                TradeContext.__chkAccPwdCtl__='0'   
                                TradeContext.channelCode='009'
                                TradeContext.accType    ='001'
                                TradeContext.tellerno   ='999986'                   #
                                TradeContext.cashTelno  ='999986'                   #
                                TradeContext.termId     ='tips'
                                TradeContext.brno       =TradeContext.unitno        #unitno作为记账网点号
                                TradeContext.zoneno     =TradeContext.brno[0:3]
                                TradeContext.accno      =subRecords[i][17]          #联社2013结算账户作为借方账户
                                TradeContext.__agentAccno__=TradeContext.agentAccno #清算行2621作为贷方
                                AfaLoggerFunc.tradeInfo( '借方:'+TradeContext.accno+'贷方:' +TradeContext.__agentAccno__)
                                if TradeContext.accno==TradeContext.__agentAccno__: #无需清算
                                    continue
                                TradeContext.userno      ='-'
                                TradeContext.tradeType   ='T'                       #转账类交易
                                TradeContext.userName    =subRecords[i][3]+'.清算流水'
                                AfaFlowControl.GetBranchInfo(TradeContext.brno)
                                TradeContext.note1      =TradeContext.__mngZoneno__ #上级管理机构
                                TradeContext.note2      =TradeContext.ChkDate            
                                TradeContext.note3      =TradeContext.ChkAcctOrd         
                                TradeContext.note4      =TradeContext.PayBkCode.strip()  
                                TradeContext.note5      =TradeContext.PayeeBankNo.strip()
                                TradeContext.note6      ='1' #清算流水
                                TradeContext.revTranF   ='0'
                                TradeContext.workTime   =UtilTools.GetSysTime( )
                                #=============获取平台流水号====================
                                if AfaFlowControl.GetSerialno( ) == -1 :
                                    AfaLoggerFunc.tradeInfo('>>>处理结果:获取平台流水号异常' )
                                    return AfaFlowControll.ExitThisFlow( 'A0027', '获取流水号失败' )
                                #
                                TradeContext.subUnitno  =TradeContext.unitno       #流水中分支商户代码=商户代码
                                #=============插入流水表====================
                                if not TransDtlFunc.InsertDtl( ) :
                                    return AfaFlowControll.ExitThisFlow( 'A0027', '插入流水表失败' )
                                
                                #=============与主机通讯====================
                                AfaHostFunc.AfaCommHost('705050') 
                                #if TradeContext.errorCode!='0000':
                                #    return False
                                #=============更新主机返回状态====================
                                TransDtlFunc.UpdateDtl( 'TRADE' )
                            
        #TradeContext.errorCode='0000'
        #TradeContext.errorMsg='交易成功'
        AfaLoggerFunc.tradeInfo('财税库行_行内资金清算结束[T003001_0331112]' )
        return True
    except Exception, e:
        AfaFlowControll.exitMainFlow(str(e))
Esempio n. 32
0
def main( ):
    
    AfaLoggerFunc.tradeInfo( '查询凭证结存交易['+TradeContext.TemplateCode+']进入' )
    
    #=============前台上送数据====================
    #TradeContext.sBESBNO           机构号
    #TradeContext.sTellerNo         柜员号
    #TradeContext.sVouhType         凭证种类
    #TradeCoutext.sVouhStatus       凭证状态
    #TradeCoutext.sStartDate        起始日期
    #TradeCoutext.sEndDate          终止日期
    #TradeContext.sStart          起始记录数
    #TradeContext.arraySize         查询条数
    
    try:
        #=============初始化返回报文变量==================
        TradeContext.tradeResponse = []

        #=============获取当前系统时间====================
        TradeContext.sLstTrxDay = AfaUtilTools.GetSysDate( )
        TradeContext.sLstTrxTime = AfaUtilTools.GetSysTime( ) 
        
        #begin凭证优化更改201109  
        #=============获取柜员尾箱号===============================
        HostContext.I1SBNO = TradeContext.sBesbNo         #机构号
        HostContext.I1USID = TradeContext.sTellerNo       #柜员号
        HostContext.I1WSNO = TradeContext.sWSNO           #终端号
        HostContext.I1EDDT = TradeContext.sLstTrxDay      #终止日期
        HostContext.I1TELR = TradeContext.sTellerNo       #柜员代号
        
        if(not VouhHostFunc.CommHost('0104')):
            VouhFunc.tradeExit( TradeContext.errorCode, TradeContext.errorMsg )
            raise AfaFlowControl.flowException( )
        if(TradeContext.errorCode == '0000'):
            TradeContext.sTellerTailNobak = HostContext.O2CABO
            TradeContext.sTellerTailNo    = TradeContext.sTellerTailNobak[0]                 
            AfaLoggerFunc.tradeInfo( '交易柜员尾箱号:' + TradeContext.sTellerTailNo ) 
        #end   
        
        wheresql="substr(t1.BESBNO,1,6) = substr(t.BESBNO,1,6) AND t1.VOUHTYPE = t.VOUHTYPE AND t.VOUHSTATUS = '3'"
        
        #==============设机构号=====================
        if (TradeContext.existVariable("sSelBesbNo") and len(TradeContext.sSelBesbNo) <> 0 ):
            wheresql = wheresql + " and t.BESBNO = '" + TradeContext.sSelBesbNo + "'"
        
        #==============设凭证种类=====================
        if (TradeContext.existVariable("sVouhType") and len(TradeContext.sVouhType) <> 0 ):
            wheresql = wheresql + " and t.VOUHTYPE = '" + TradeContext.sVouhType+"'"
         
        #begin凭证优化更改201109    
        #==============设尾箱号=====================
        if (TradeContext.existVariable("sTellerTailNo") and len(TradeContext.sTellerTailNo) <> 0 ):
            wheresql = wheresql + " and t.TELLERNO = '" + TradeContext.sTellerTailNo + "'"
        #end
        
        sqlStr = "\
                SELECT TELLERNO,VOUHTYPE,STARTNO,ENDNO,VOUHNUM,VOUHNAME \
                FROM ( \
                SELECT row_number() over() as rowid,t.TELLERNO,t.VOUHTYPE,t.STARTNO,t.ENDNO,t.VOUHNUM,t1.VOUHNAME \
                FROM VOUH_REGISTER t,VOUH_PARAMETER t1 \
                WHERE " + wheresql + " \
                ) as tab1 \
                where tab1.rowid >= " + str(TradeContext.sStart)
        
        AfaLoggerFunc.tradeDebug(sqlStr);
        #查询数据库并将返回的结果压至对应变量中
        records = AfaDBFunc.SelectSql( sqlStr, int(TradeContext.arraySize))
        if( records == None ):
            AfaLoggerFunc.tradeError(AfaDBFunc.sqlErrMsg)
            tradeExit('A005067', '查询[凭证登记表]操作异常!')
            raise AfaFlowControl.flowException( )
        elif( len( records ) == 0 ):
            tradeExit('A005068', '凭证不存在!' )
            raise AfaFlowControl.flowException( )
        else :
            record=AfaUtilTools.ListFilterNone( records )
            total=len( records )

            sTellerTailNo = ''
            sVouhType = ''
            sStartNo = ''
            sEndNo = ''
            sVouhNum = ''
            sVouhName = ''
            
            for i in range( 0, total ):
                if( i <> 0):
                    strSplit = '|'
                else:
                    strSplit = ''
                sTellerTailNo = sTellerTailNo + strSplit + records[i][0]
                sVouhType = sVouhType + strSplit + records[i][1]
                sStartNo = sStartNo + strSplit + records[i][2]
                sEndNo = sEndNo + strSplit + records[i][3]
                sVouhNum = sVouhNum + strSplit + records[i][4]
                sVouhName = sVouhName + strSplit + records[i][5]
           
        TradeContext.tradeResponse.append( ['sTellerTailNo',sTellerTailNo] )    
        TradeContext.tradeResponse.append( ['sTellerNo',TradeContext.sTellerNo] )              #凭证优化更改201109 
        TradeContext.tradeResponse.append( ['sVouhType',sVouhType] )
        TradeContext.tradeResponse.append( ['sVouhName',sVouhName] )
        TradeContext.tradeResponse.append( ['sStartNo',sStartNo] )
        TradeContext.tradeResponse.append( ['sEndNo',sEndNo] )
        TradeContext.tradeResponse.append( ['sVouhNum',sVouhNum] )
        TradeContext.tradeResponse.append( ['sLstTrxDay',TradeContext.sLstTrxDay] )
        TradeContext.tradeResponse.append( ['sLstTrxTime',TradeContext.sLstTrxTime] )
        TradeContext.tradeResponse.append( ['sNum',str(total)] )
        TradeContext.tradeResponse.append( ['errorCode','0000'] )
        TradeContext.tradeResponse.append( ['errorMsg','交易成功'] )

        AfaFunc.autoPackData()
        #=============程序退出====================
        AfaLoggerFunc.tradeInfo( '查询凭证结存交易['+TradeContext.TemplateCode+']退出' )
    except AfaFlowControl.flowException, e:
        AfaFlowControl.exitMainFlow( )
Esempio n. 33
0
def SubModuleMainFst( ):
    AfaLoggerFunc.tradeInfo('财税库行_行内资金清算开始[TTPS001_0331112]' )
    TradeContext.TransCode='0331112'
    try:
        #=============获取当前系统时间====================
        #TradeContext.workDate=UtilTools.GetSysDate( )
        TradeContext.workTime=UtilTools.GetSysTime( )
        
        TradeContext.__agentAccno__ = TradeContext.payeeAcct    #清算行国库待清算专户作为贷方账户
        AfaLoggerFunc.tradeInfo( '待清算专户:'+TradeContext.__agentAccno__)
        sqlStr = "SELECT BRNO,ACCNO FROM TIPS_BRANCH_ADM WHERE PAYBKCODE = '" + TradeContext.payBkCode.strip() + "' AND "
        sqlStr = sqlStr+" PAYEEBANKNO = '" + TradeContext.payeeBankNo.strip() + "' "
        AfaLoggerFunc.tradeInfo( sqlStr )
        records = AfaDBFunc.SelectSql( sqlStr )
        if( records == None ):
            return TipsFunc.ExitThisFlow( 'A0002', '机构信息表操作异常:'+AfaDBFunc.sqlErrMsg )
        elif( len( records )==0 ):
            AfaLoggerFunc.tradeError( sqlStr )
            return TipsFunc.ExitThisFlow( 'A0003', '无机构信息' )
        else:
            records=UtilTools.ListFilterNone( records )
            for i in range( 0, len( records ) ):
                AfaLoggerFunc.tradeInfo( 'brno:'+records[i][0] +' accno:'+records[i][1])
                #=============清算:出现清算金额大于银行发生额,需要联社1391科目垫款====================
                #统计县联社对账差异金额作为转账金额
                if not DoSumAmount(records[i][0]):
                    return TipsFunc.ExitThisFlow( 'A0027', '汇总发生额失败' )
                #TradeContext.amount='1'
                
                if (TradeContext.amount)>0 :
                    #检查改机构是否已经清算
                    sqlStr_qs = "SELECT COUNT(*) FROM TIPS_MAINTRANSDTL WHERE TAXPAYCODE = '-' "
                    sqlStr_qs = sqlStr_qs + "AND  DRACCNO = '"+records[i][1]+"' "
                    sqlStr_qs = sqlStr_qs + "AND  NOTE1 = '" + TradeContext.chkDate + "' "
                    sqlStr_qs = sqlStr_qs + "AND  NOTE2 = '" + TradeContext.chkAcctOrd + "' "
                    sqlStr_qs = sqlStr_qs + "AND  NOTE3 = '" + TradeContext.payBkCode.strip()   + "' "
                    sqlStr_qs = sqlStr_qs + "AND  NOTE4 = '" + TradeContext.payeeBankNo.strip() + "' "
                    sqlStr_qs = sqlStr_qs + "AND  NOTE6 = '1'" 
                    AfaLoggerFunc.tradeInfo( sqlStr_qs )
                    Records_qs = AfaDBFunc.SelectSql( sqlStr_qs )
                    if(Records_qs == None or Records_qs < 0):
                        return TipsFunc.ExitThisFlow( 'A0002', '流水表操作异常:'+AfaDBFunc.sqlErrMsg )
                    elif (Records_qs[0][0]==0): 
                        TradeContext.channelCode    = '009'
                        TradeContext.catrFlag       = '1'         #现金转账标志
                        TradeContext.tellerno       = '999986'                   #
                        TradeContext.termId         = 'tips'
                        TradeContext.brno           = records[i][0]              #
                        TradeContext.zoneno         = TradeContext.brno[0:3]
                        TradeContext.accno          = records[i][1]              #机构4401账户作为借方账户
                        TradeContext.amount         =str(TradeContext.amount)
                        AfaLoggerFunc.tradeInfo( '借方:'+TradeContext.accno+'贷方:' +TradeContext.__agentAccno__)
                        TradeContext.taxPayCode     = '-'
                        TradeContext.tradeType      = 'T'                       #转账类交易
                        TradeContext.taxPayName     = '清算流水'
                        TradeContext.note1          = TradeContext.chkDate            
                        TradeContext.note2          = TradeContext.chkAcctOrd         
                        TradeContext.note3          = TradeContext.payBkCode.strip()  
                        TradeContext.note4          = TradeContext.payeeBankNo.strip()
                        TradeContext.note6          = '1'       #清算流水
                        TradeContext.revTranF       = '0'
                        TradeContext.workTime       =UtilTools.GetSysTime( )
                        TradeContext.taxTypeNum     = '0'
                        
                        #====获取摘要代码=======
                        if not AfaFlowControl.GetSummaryCode():
                            return False
                        
                        #=============获取平台流水号====================
                        if TipsFunc.GetSerialno( ) == -1 :
                            AfaLoggerFunc.tradeInfo('>>>处理结果:获取平台流水号异常' )
                            return TipsFunc.ExitThisFlow( 'A0027', '获取流水号失败' )
                        #
                        #=============插入流水表====================
                        if not TipsFunc.InsertDtl( ) :
                            return TipsFunc.ExitThisFlow( 'A0027', '插入流水表失败' )
                        
                        #=============与主机通讯====================
                        TipsFunc.CommHost()
                        
                        #=============更新主机返回状态====================
                        TipsFunc.UpdateDtl( 'TRADE' )
                        
                        if TradeContext.errorCode!='0000':
                            AfaLoggerFunc.tradeFatal( '清算记账失败:['+TradeContext.errorCode+']'+ TradeContext.errorMsg)
                            return False
                    else:
                        continue    #已经清算,继续下一个机构
        AfaLoggerFunc.tradeInfo('财税库行_行内资金清算结束[TTPS001_0331112]' )
        return True
    except Exception, e:
        TipsFunc.exitMainFlow(str(e))
Esempio n. 34
0
def SubModuleDoFst():
    AfaLoggerFunc.tradeInfo( '***农信银系统:来账.中心类操作(1.本地操作).系统状态变更报文接收[RCC00R6_1121]进入***' )
    
    #=================查询本地相关业务状态的系统状态============================
    mbrifa_where_dict = {}
    mbrifa_where_dict['OPRTYPNO'] = TradeContext.RELOPRTYPNO
    
    mbrifa_dict = rccpsDBTrcc_mbrifa.selectu(mbrifa_where_dict)
    if mbrifa_dict == None:
        return AfaFlowControl.ExitThisFlow("S999","查询本地系统状态信息异常")
        
    if  len(mbrifa_dict) <= 0:
        return AfaFlowControl.ExitThisFlow("S999","无相关业务类型本地系统状态信息")
    
    #=================校验报文新工作日期============================================
    if int(TradeContext.NWWKDAT) < int(mbrifa_dict['NWWKDAT']):
        AfaLoggerFunc.tradeInfo("报文新工作日期[" + TradeContext.NWWKDAT + "]在本地新工作日期[" + mbrifa_dict['NWWKDAT'] + "]之前,丢弃此报文,进入下一流程,发送表示成功的通讯回执")
        #======为通讯回执报文赋值===================================================
        out_context_dict = {}
        out_context_dict['sysType']  = 'rccpst'
        out_context_dict['TRCCO']    = '9900503'
        out_context_dict['MSGTYPCO'] = 'SET008'
        out_context_dict['RCVMBRCO'] = TradeContext.SNDMBRCO
        out_context_dict['SNDMBRCO'] = TradeContext.RCVMBRCO
        out_context_dict['SNDBRHCO'] = TradeContext.BESBNO
        out_context_dict['SNDCLKNO'] = TradeContext.BETELR
        #out_context_dict['SNDTRDAT'] = TradeContext.BJEDTE
        #out_context_dict['SNDTRTIM'] = TradeContext.BJETIM
        #out_context_dict['MSGFLGNO'] = out_context_dict['SNDMBRCO'] + TradeContext.BJEDTE + TradeContext.SerialNo
        out_context_dict['ORMFN']    = TradeContext.MSGFLGNO
        out_context_dict['NCCWKDAT'] = TradeContext.NCCworkDate
        out_context_dict['OPRTYPNO'] = '99'
        out_context_dict['ROPRTPNO'] = TradeContext.OPRTYPNO
        out_context_dict['TRANTYP']  = '0'
        out_context_dict['ORTRCCO']  = TradeContext.TRCCO
        out_context_dict['PRCCO']    = 'RCCI0000'
        out_context_dict['STRINFO']  = '过期报文'
        
        rccpsMap0000Dout_context2CTradeContext.map(out_context_dict)
        
        return True
        
    elif int(TradeContext.NWWKDAT) == int(mbrifa_dict['NWWKDAT']):
        #============报文新工作日期与本地新工作日期相同,校验报文新工作状态======
        if int(TradeContext.NWSYSST) <= int(mbrifa_dict['NWSYSST']):
            AfaLoggerFunc.tradeInfo("报文新工作状态[" + TradeContext.NWSYSST + "]不在本地新工作状态[" + mbrifa_dict['NWSYSST'] + "]之后,丢弃此报文,进入下一流程,发送表示成功的通讯回执")
            #======为通讯回执报文赋值===================================================
            out_context_dict = {}
            out_context_dict['sysType']  = 'rccpst'
            out_context_dict['TRCCO']    = '9900503'
            out_context_dict['MSGTYPCO'] = 'SET008'
            out_context_dict['RCVMBRCO'] = TradeContext.SNDMBRCO
            out_context_dict['SNDMBRCO'] = TradeContext.RCVMBRCO
            out_context_dict['SNDBRHCO'] = TradeContext.BESBNO
            out_context_dict['SNDCLKNO'] = TradeContext.BETELR
            out_context_dict['SNDTRDAT'] = TradeContext.BJEDTE
            out_context_dict['SNDTRTIM'] = TradeContext.BJETIM
            out_context_dict['MSGFLGNO'] = out_context_dict['SNDMBRCO'] + TradeContext.BJEDTE + TradeContext.SerialNo
            out_context_dict['ORMFN']    = TradeContext.MSGFLGNO
            out_context_dict['NCCWKDAT'] = TradeContext.NCCworkDate
            out_context_dict['OPRTYPNO'] = '99'
            out_context_dict['ROPRTPNO'] = TradeContext.OPRTYPNO
            out_context_dict['TRANTYP']  = '0'
            out_context_dict['ORTRCCO']  = TradeContext.TRCCO
            out_context_dict['PRCCO']    = 'RCCI0000'
            out_context_dict['STRINFO']  = '过期报文'
            
            rccpsMap0000Dout_context2CTradeContext.map(out_context_dict)
            
            return True
    
    #增加日切报文后发先至情况的处理
    #通存通兑顺序10-20-30-10
    if TradeContext.RELOPRTYPNO == "30":
        if mbrifa_dict['NWSYSST'] == '10' and TradeContext.NWSYSST != '20':
            return AfaFlowControl.ExitThisFlow("S999","[" + TradeContext.RELOPRTYPNO + "]业务当前业务状态为日间开始[10],但日切报文中变更状态非业务截止准备[20],停止处理")
            
        if mbrifa_dict['NWSYSST'] == '20' and TradeContext.NWSYSST != '30':
            return AfaFlowControl.ExitThisFlow("S999","[" + TradeContext.RELOPRTYPNO + "]业务当前业务状态为业务截止准备[20],但日切报文中变更状态非业务截止[30],停止处理")
            
        if mbrifa_dict['NWSYSST'] == '30' and TradeContext.NWSYSST != '10':
            return AfaFlowControl.ExitThisFlow("S999","[" + TradeContext.RELOPRTYPNO + "]业务当前业务状态为业务截止[30],但日切报文中变更状态非日间开始[10],停止处理")
    #汇兑汇票顺序10-30-10
    else:
        if mbrifa_dict['NWSYSST'] == '10' and TradeContext.NWSYSST != '30':
            return AfaFlowControl.ExitThisFlow("S999","[" + TradeContext.RELOPRTYPNO + "]业务当前业务状态为日间开始[10],但日切报文中变更状态非业务截止[30],停止处理")
            
        if mbrifa_dict['NWSYSST'] == '30' and TradeContext.NWSYSST != '10':
            return AfaFlowControl.ExitThisFlow("S999","[" + TradeContext.RELOPRTYPNO + "]业务当前业务状态为业务截止[30],但日切报文中变更状态非日间开始[10],停止处理")
    
    mbrifa_update_dict = {}
    mbrifa_update_dict['ORWKDAT'] = mbrifa_dict['NWWKDAT']
    mbrifa_update_dict['ORSYSST'] = mbrifa_dict['NWSYSST']
    mbrifa_update_dict['NWWKDAT'] = TradeContext.NWWKDAT
    mbrifa_update_dict['NWSYSST'] = TradeContext.NWSYSST
    mbrifa_update_dict['HOLFLG']  = TradeContext.HOLFLG
    mbrifa_update_dict['NOTE1']   = mbrifa_dict['NWWKDAT']
    
    ret = rccpsDBTrcc_mbrifa.update(mbrifa_update_dict,mbrifa_where_dict)
    if ret <= 0:
        if not AfaDBFunc.RollbackSql( ):
            AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
            AfaLoggerFunc.tradeError(">>>Rollback异常")
        AfaLoggerFunc.tradeInfo(">>>Rollback成功")
        return AfaFlowControl.ExitThisFlow("S999","更新系统状态异常")
    
    #======若新系统状态为业务截止,则打开对账系统调度============================
    if TradeContext.NWSYSST == '30' and TradeContext.HOLFLG == '2':
        if TradeContext.RELOPRTYPNO == '20':
            #====打开汇兑对账系统调度=======================================
            AfaLoggerFunc.tradeInfo(">>>开始打开汇兑对账系统调度")
            
            if not rccpsCronFunc.openCron("00031"):
                if not AfaDBFunc.RollbackSql( ):
                    AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
                    AfaLoggerFunc.tradeError(">>>Rollback异常")
                AfaLoggerFunc.tradeInfo(">>>Rollback成功")
                return AfaFlowControl.ExitThisFlow("S999","打开汇兑对账系统调度异常")
                
            AfaLoggerFunc.tradeInfo(">>>结束打开汇兑对账系统调度")
            
            #====打开汇票对账系统调度=======================================
            AfaLoggerFunc.tradeInfo(">>>开始打开汇票对账系统调度")
            
            if not rccpsCronFunc.openCron("00041"):
                if not AfaDBFunc.RollbackSql( ):
                    AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
                    AfaLoggerFunc.tradeError(">>>Rollback异常")
                AfaLoggerFunc.tradeInfo(">>>Rollback成功")
                return AfaFlowControl.ExitThisFlow("S999","打开汇票对账系统调度异常")
            
            AfaLoggerFunc.tradeInfo(">>>结束打开汇票对账系统调度")
            
        elif TradeContext.RELOPRTYPNO == '30':
            #====打开通存通兑对账系统调度===================================
            AfaLoggerFunc.tradeInfo(">>>开始打开通存通兑对账系统调度")
            
            if not rccpsCronFunc.openCron("00061"):
                if not AfaDBFunc.RollbackSql( ):
                    AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
                    AfaLoggerFunc.tradeError(">>>Rollback异常")
                AfaLoggerFunc.tradeInfo(">>>Rollback成功")
                return AfaFlowControl.ExitThisFlow("S999","打开通存通兑对账系统调度异常")
                
            AfaLoggerFunc.tradeInfo(">>>结束打开通存通兑对账系统调度")
            
            #====打开信息类业务量统计系统调度======================
            AfaLoggerFunc.tradeInfo(">>>开始打开信息类业务量统计系统调度")
            
#            if not rccpsCronFunc.openCron("00067"):
#                if not AfaDBFunc.RollbackSql( ):
#                    AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
#                    AfaLoggerFunc.tradeError(">>>Rollback异常")
#                AfaLoggerFunc.tradeInfo(">>>Rollback成功")
#                return AfaFlowControl.ExitThisFlow("S999","打开信息类业务量统计系统调度异常")
            
#            AfaLoggerFunc.tradeInfo(">>>结束打开信息类业务量统计系统调度")
            
            
            
    #======若通存通兑新系统状态为日间开始,则打开行名行号生效系统调度===================
    if TradeContext.NWSYSST == '10' and TradeContext.RELOPRTYPNO == '30':
        #====开始打开行名行号生效系统调度=======================================
        AfaLoggerFunc.tradeInfo(">>>开始打开行名行号生效系统调度")
        
        if not rccpsCronFunc.openCron("00050"):
            if not AfaDBFunc.RollbackSql( ):
                AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
                AfaLoggerFunc.tradeError(">>>Rollback异常")
            AfaLoggerFunc.tradeInfo(">>>Rollback成功")
            return AfaFlowControl.ExitThisFlow("S999","打开行名行号生效系统调度异常")
            
        AfaLoggerFunc.tradeInfo(">>>结束打开行名行号生效系统调度")
            
    if not AfaDBFunc.CommitSql( ):
        AfaLoggerFunc.tradeFatal( AfaDBFunc.sqlErrMsg )
        return AfaFlowControl.ExitThisFlow("S999","Commit异常")
    AfaLoggerFunc.tradeInfo(">>>Commit成功")
        
    #======为通讯回执报文赋值===================================================
    out_context_dict = {}
    out_context_dict['sysType']  = 'rccpst'
    out_context_dict['TRCCO']    = '9900503'
    out_context_dict['MSGTYPCO'] = 'SET008'
    out_context_dict['RCVMBRCO'] = TradeContext.SNDMBRCO
    out_context_dict['SNDMBRCO'] = TradeContext.RCVMBRCO
    out_context_dict['SNDBRHCO'] = TradeContext.BESBNO
    out_context_dict['SNDCLKNO'] = TradeContext.BETELR
    out_context_dict['SNDTRDAT'] = TradeContext.BJEDTE
    out_context_dict['SNDTRTIM'] = TradeContext.BJETIM
    out_context_dict['MSGFLGNO'] = out_context_dict['SNDMBRCO'] + TradeContext.BJEDTE + TradeContext.SerialNo
    out_context_dict['ORMFN']    = TradeContext.MSGFLGNO
    out_context_dict['NCCWKDAT'] = TradeContext.NCCworkDate
    out_context_dict['OPRTYPNO'] = '99'
    out_context_dict['ROPRTPNO'] = TradeContext.OPRTYPNO
    out_context_dict['TRANTYP']  = '0'
    out_context_dict['ORTRCCO']  = TradeContext.TRCCO
    out_context_dict['PRCCO']    = 'RCCI0000'
    out_context_dict['STRINFO']  = '成功'
    
    rccpsMap0000Dout_context2CTradeContext.map(out_context_dict)
    
    AfaLoggerFunc.tradeInfo( '***农信银系统:来账.中心类操作(1.本地操作).系统状态变更报文接收[RCC00R6_1121]退出***' )
    return True