示例#1
0
        if not rccpsFtpFunc.getRccps(file_path):
            rccpsCronFunc.cronExit("S999","下载汇兑对账汇总文件[" + file_path + "]异常")
        
        file_path = "settlefile/HDMXCNY1340000008" + NCCWKDAT
        
        if not rccpsFtpFunc.getRccps(file_path):
            rccpsCronFunc.cronExit("S999","下载汇兑对账明细文件[" + file_path + "]异常")
        
        AfaLoggerFunc.tradeInfo(">>>结束下载汇兑对账文件")
        
        #================关闭汇兑对账文件下载系统调度,打开导入汇兑对账文件系统调度==
        AfaLoggerFunc.tradeInfo(">>>开始关闭汇兑对账文件下载系统调度,打开导入汇兑对账文件系统调度")
        if not rccpsCronFunc.closeCron("00031"):
            rccpsCronFunc.cronExit("S999","关闭汇兑对账文件下载系统调度异常")
            
        if not rccpsCronFunc.openCron("00034"):
            rccpsCronFunc.cronExit("S999","打开汇兑对账明细文件导入系统调度异常")
        
        if not AfaDBFunc.CommitSql( ):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","Commit异常")
        AfaLoggerFunc.tradeInfo(">>>Commit成功")
        
        AfaLoggerFunc.tradeInfo(">>>结束关闭汇兑对账文件下载系统调度,打开导入汇兑对账文件系统调度")
        
        AfaLoggerFunc.tradeInfo("***农信银系统: 系统调度类.汇兑对账文件下载[rccpsHDDZGetFile]退出***")
        

    except Exception, e:
        #所有异常
示例#2
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
示例#3
0
        
        ret = AfaDBFunc.InsertSql(temp_sql)
        
        if ret < 0:
            AfaLoggerFunc.tradeInfo(AfaDBFunc.sqlErrMsg)
            rccpsCronFunc.cronExit("S999","对账来账行内未清算,中心清算类型异常")
        
        AfaLoggerFunc.tradeInfo(">>>结束对账来账行内未清算,中心清算类型")
        
        #================关闭汇票对账明细账勾兑系统调度,打开汇票对账错账处理系统调度==
        AfaLoggerFunc.tradeInfo(">>>开始关闭汇票对账明细账勾兑系统调度,打开汇票对账错账处理系统调度")
        if not rccpsCronFunc.closeCron("00043"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","关闭汇票对账明细账勾兑系统调度异常")
            
        if not rccpsCronFunc.openCron("00040"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","打开汇票对账错账处理系统调度异常")
        
        if not AfaDBFunc.CommitSql( ):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","Commit异常")
        AfaLoggerFunc.tradeInfo(">>>Commit成功")
        
        AfaLoggerFunc.tradeInfo(">>>结束关闭汇票对账明细账勾兑系统调度,打开汇票对账错账处理系统调度")
        
        AfaLoggerFunc.tradeInfo("***农信银系统: 系统调度类.汇票对账明细账勾兑[rccpsHPDZMXCompare]退出***")
    
    except Exception, e:
        #所有异常
示例#4
0
        #================主机对帐文件转码======================================
        AfaLoggerFunc.tradeInfo(">>>开始转码主机对账文件")
        dFileName = 'rccpsdz' + NCCWKDAT
        sFileName = 'NXSCA'
        fldName = 'nxsca.fld'
        if( not rccpsCronFunc.FormatFile('0', fldName, sFileName, dFileName)):
            rccpsCronFunc.cronExit('A099', '转换主机对账文件编码异常')
        AfaLoggerFunc.tradeInfo(">>>结束转码主机对账文件")
        
        #================关闭通存通兑主机对账明细账下载系统调度,打开通存通兑主机对账文件导入系统调度==
        AfaLoggerFunc.tradeInfo(">>>开始关闭通存通兑主机对账明细账下载系统调度,打开通存通兑主机对账文件导入系统调度")
        if not rccpsCronFunc.closeCron("00068"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","关闭通存通兑对账明细账下载系统调度异常")
            
        if not rccpsCronFunc.openCron("00069"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","打开通存通兑对账文件导入系统调度异常")
        
        if not AfaDBFunc.CommitSql( ):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","Commit异常")
        AfaLoggerFunc.tradeInfo(">>>Commit成功")
        
        AfaLoggerFunc.tradeInfo(">>>结束关闭通存通兑主机对账明细账下载系统调度,打开通存通兑主机对账文件导入系统调度")
        
        AfaLoggerFunc.tradeInfo("***农信银系统: 系统调度类.通存通兑对账明细账勾兑[rccpsTDDZMXCompare]退出***")
    
    except Exception, e:
        #所有异常
示例#5
0
     ret = AfaDBFunc.InsertSql(temp_sql)
     
     if ret < 0:
         rccpsCronFunc.cronExit("S999","对账来账,通存业务,中心未确认异常")
     
     AfaLoggerFunc.tradeInfo(">>>结束对账来账,通存业务,中心未确认")
     
     
     
     #================关闭通存通兑对账明细账勾兑系统调度,打开通存通兑对账差错文件上传系统调度==
     AfaLoggerFunc.tradeInfo(">>>开始关闭通存通兑对账明细账勾兑系统调度,打开通存通兑对账错账处理系统调度")
     if not rccpsCronFunc.closeCron("00063"):
         AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
         rccpsCronFunc.cronExit("S999","关闭通存通兑对账明细账勾兑系统调度异常")
         
     if not rccpsCronFunc.openCron("00060"):
         AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
         rccpsCronFunc.cronExit("S999","打开通存通兑对账差错文件上传系统调度异常")
         
     if not rccpsCronFunc.openCron("00065"):
         rccpsCronFunc.cronExit("S999","打开通存通兑结转文件生成及发送到主机调度异常")
     
     if not AfaDBFunc.CommitSql( ):
         AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
         rccpsCronFunc.cronExit("S999","Commit异常")
     AfaLoggerFunc.tradeInfo(">>>Commit成功")
     
     AfaLoggerFunc.tradeInfo(">>>结束关闭通存通兑对账明细账勾兑系统调度,打开通存通兑对账差错文件上传系统调度")
     
     AfaLoggerFunc.tradeInfo("***农信银系统: 系统调度类.通存通兑对账明细账勾兑[rccpsTDDZMXCompare]退出***")
 
示例#6
0
#        
#        ret = AfaDBFunc.InsertSql(temp_sql)
#        
#        if ret < 0:
#            rccpsCronFunc.cronExit("S999","对账金额不符异常")
#        
#        AfaLoggerFunc.tradeInfo(">>>结束对账金额不符")
        
        
        #================关闭通存通兑主机明细账勾兑系统调度,打开通存通兑主机错账处理系统调度==
        AfaLoggerFunc.tradeInfo(">>>开始关闭通存通兑主机明细账勾兑系统调度,打开通存通兑主机错账处理系统调度")
        if not rccpsCronFunc.closeCron("00070"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","关闭通存通兑主机明细账勾兑系统调度异常")
            
        if not rccpsCronFunc.openCron("00071"):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","打开通存通兑主机错账处理系统调度异常")
        
        if not AfaDBFunc.CommitSql( ):
            AfaLoggerFunc.tradeInfo( AfaDBFunc.sqlErrMsg )
            rccpsCronFunc.cronExit("S999","Commit异常")
        AfaLoggerFunc.tradeInfo(">>>Commit成功")
        
        AfaLoggerFunc.tradeInfo(">>>结束关闭通存通兑主机明细账勾兑系统调度,打开通存通兑主机错账处理系统调度")
        
        AfaLoggerFunc.tradeInfo("***农信银系统: 系统调度类.通存通兑主机明细账勾兑[rccpsTDZJDZCompare]退出***")
    
    except Exception, e:
        #所有异常