Python银行数据分析之--农业银行数据转换
Python银行数据分析之--农业银行数据转换
# 农业银行数据转换
def abcBankProcessDo(t, companyName, accountingTitle, begin):
t = t[3:]
# 倒序输出
t.reverse()
# 主体公司 会计科目
# companyName, accountingTitle, begin = input("输入主体公司:"), input("输入会计科目:"), input("输入期初数:")
new_list = []
n = 0
new_list.append(
["序号", "交易ID", "支出金额", "存入金额", "账户余额", "承担主体", "对方开户行", "对方账号", "对方户名", "银行摘要", "凭证号", "凭证摘要", "凭证锁单状态",
"交易时间",
"主键", "交易日期", "主体公司", "会计科目", "期末数", "期初数"])
for i in range(len(t)):
if not t[i][6]: continue
if not t[i][1]:
t[i][1] = "000000"
tradeDateTime = "{}-{}-{} {}:{}:{}".format(t[i][0][:4], t[i][0][4:6], t[i][0][6:], t[i][1][:2],
t[i][1][2:4],
t[i][1][4:])
tradeDate = "{}-{}-{}".format(t[i][0][:4], t[i][0][4:6], t[i][0][6:])
tradeDateStr = "{}{}{}".format(t[i][0][:4], t[i][0][4:6], t[i][0][6:])
row_list = []
n = n + 1
row_list.append("=IF(O2<>O1,1,A1+1)") # 序号
row_list.append("") # 交易ID
# 支出金额
if t[i][2][:1] == "+":
row_list.append("0")
else:
row_list.append(t[i][2][1:])
# 存入金额
if t[i][2][:1] == "+":
row_list.append(t[i][2][1:])
else:
row_list.append("0")
row_list.append(t[i][3]) # 账户余额
row_list.append("") # 承担主体
row_list.append(t[i][6]) # 对方开户行
row_list.append(t[i][5]) # 对方账号
# 对方户名
if (t[i][10] == "财付通" or t[i][10] == "支付宝") and not t[i][4]:
row_list.append(t[i][10])
elif (t[i][10] == "手续费" or t[i][10] == "转支" or t[i][10] == "逾期扣款") and not t[i][4]:
row_list.append(t[i][6])
else:
row_list.append(t[i][4])
row_list.append("{}{}{}{}".format(t[i][10], t[i][9], t[i][8], t[i][7])) # 银行摘要
row_list.append("") # 凭证号
row_list.append("") # 凭证摘要
row_list.append("") # 凭证锁单状态
row_list.append(tradeDateTime) # 交易时间
# 主键
row_list.append("{}{}{}".format(companyName, tradeDateStr, accountingTitle))
row_list.append(tradeDate) # 交易日期
row_list.append(companyName) # 主体公司
row_list.append(accountingTitle) # 会计科目
row_list.append(begin) # 期末数
row_list.append(begin) # 期初数
new_list.append(row_list)
# 序号更正 和校验余额连续性后
# return updateNumberAndBalanceContinuityVerify(new_list)
return new_list

浙公网安备 33010602011771号