Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: cp1250 -*-
- from datetime import timedelta,date
- from random import randint
- import random
- from biblioteka import genCyf,genGrosze,genZlotowki,nazwaPlatnika,genWersjaDok,genEmail,genTerminalKeynumber,paybackNumber,aliasType,genLiczbyZDopelnieniemZera,genWartPkt
- from glob import glob
- import os
- import datetime
- Hliczba_rek = 1
- Tliczba_rek = str(randint(1,0000000010))
- while len(Tliczba_rek) !=10:
- Tliczba_rek = '0'+ Tliczba_rek
- print ('$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$')
- Rliczba_rek = 1
- Eliczba_rek = 1
- data_ksieg = str(date.today())
- #print date.today()
- suma = 0.0
- #print liczba_rek
- zaw = ''
- T_zaw_rek =''
- R_zaw_rek =''
- E_zaw_rek =''
- generatorCyfr = genCyf(6)
- dopelnienie_zera = genLiczbyZDopelnieniemZera()
- ################################################ GENEROWANIE REKORDU T
- for i in range (1,int(Tliczba_rek)+1):
- T_linia =''
- R_linia =''
- E_linia =''
- utc_datetime = datetime.datetime.utcnow()
- czas_utc = utc_datetime.strftime("%Y-%m-%d%H:%M:%S")
- czas_utc2 = str(czas_utc)
- dataWplaty = str(date.today() - timedelta(days=randint(1,10)))
- #Constant 'T' (indicator of Transaction)
- T_a ='T'
- T_linia+=T_a
- #Filenumber;identification number of the job, assigned by the business partner; (see H6)
- T_b = generatorCyfr
- T_linia+= T_b+ ' '
- #Sequence number for transactions in this file, starting by 1
- T_c = 'sequence_number'
- T_linia+=T_c
- #Partnercode
- T_d = 'rea'
- T_linia+=T_d
- #BusinessUnitcode
- T_e = 'rea'
- T_linia+=T_e
- #Branchnumber where the transaction has taken place
- T_f = 'Branchnumber'
- T_linia +=T_f
- #Terminal keynumber
- T_g = 'ID'+genTerminalKeynumber(8)
- T_linia+=T_g
- #PAYBACK cardnumber: 16-digits
- T_h = paybackNumber(16)
- T_linia+=T_h
- #Alias_type
- T_i = aliasType()
- T_linia+=T_i
- #Effective date: Date of event creation at partner
- T_j = czas_utc
- T_linia+=T_j
- #Collect event type
- T_k = dopelnienie_zera[0]
- T_linia+=T_k
- #Channel that transferred the collect event
- T_l = dopelnienie_zera[1]
- T_linia+=T_l+'\n'
- T_zaw_rek+=T_linia
- ################################################ GENEROWANIE REKORDU R
- R_a ='R'
- R_linia+=R_a
- R_b = genCyf(4)
- R_linia+= R_b+ ' '
- R_c = genCyf(8)
- R_linia+=R_c+','
- R_d1 = genZlotowki()
- R_d = R_d1+'.'+genGrosze()
- kwota = float(R_d)
- suma += kwota
- R_linia+=R_d+','
- R_e = genCyf(12)
- R_linia+=R_e+ ','
- R_f = dataWplaty
- R_linia +=R_f+','
- if len(str(R_d1))==2:
- wart_pkt = str(randint(100,999))
- elif len(str(R_d1))==3:
- wart_pkt = str(randint(1000,9999))
- else:
- wart_pkt = str(10000)
- R_g = '10.00.01,T/PKT '+wart_pkt+'/'+dataWplaty+'/Opłata za rachunek nr_'+genCyf(8)+','+wart_pkt+','
- R_linia+=R_g+','
- R_h = nazwaPlatnika()
- R_linia+=R_h+','
- R_j = 'PAYBACK,0.3'
- R_linia+=R_j+'\n'
- R_zaw_rek+=R_linia
- ################################################ GENEROWANIE REKORDU E
- E_a ='E'
- E_linia+=E_a
- E_b = genCyf(4)
- E_linia+= E_b+ ' '
- E_c = genCyf(8)
- E_linia+=E_c+','
- E_d1 = genZlotowki()
- E_d = E_d1+'.'+genGrosze()
- kwota = float(E_d)
- suma += kwota
- E_linia+=E_d+','
- E_e = genCyf(12)
- E_linia+=E_e+ ','
- E_f = dataWplaty
- E_linia +=E_f+','
- if len(str(E_d1))==2:
- wart_pkt = str(randint(100,999))
- elif len(str(E_d1))==3:
- wart_pkt = str(randint(1000,9999))
- else:
- wart_pkt = str(10000)
- E_g = '10.00.01,T/PKT '+wart_pkt+'/'+dataWplaty+'/Opłata za rachunek nr_'+genCyf(8)+','+wart_pkt+','
- E_linia+=E_g+','
- E_h = nazwaPlatnika()
- E_linia+=E_h+','
- E_j = 'PAYBACK,0.3'
- E_linia+=E_j+'\n'
- E_zaw_rek+=E_linia
- nag = 'H'+genWersjaDok()+' '+'trn'+'rea'+genCyf(4)+' '+generatorCyfr+genEmail(10)+'@'+'wp.pl'+czas_utc+str(Tliczba_rek)+genWartPkt()+'TURNOVER_SUM'+'\n'
- zaw=nag+T_zaw_rek+R_zaw_rek+E_zaw_rek
- print zaw
- mies = data_ksieg[5:7]
- dzien = data_ksieg[8:]
- search = glob(os.path.join(mies+dzien+'*'))
- if search:
- #jeżeli masz conajmniej jeden element w liście
- nrplik = len(search)+1 #zwraca 7 i żeby stworzyć nowy trzeba dodać nowy
- nrplik1 = str(nrplik)
- if len(nrplik1) == 1:
- nrplik = '00' +nrplik1
- elif len(nrplik1) == 2:
- nrplik ='0' +nrplik1
- else:
- nrplik = nrplik1
- else:
- nrplik ='001'
- nazwa_pliku = mies+dzien+str(nrplik)+'SOS.BMPB'
- file1 = open(nazwa_pliku,'w')
- file1.write(zaw)
- file1.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement