예제 #1
0
from nono.db_factory import DBFactory
from nono.base import process_request, get_transfer_deb_param
import time

url = 'http://XXXX.prod.com/XXXX-XXXX/debtSale/transfer'

conn = DBFactory()

expect_price = 20000000


def fetch_bo_list(va_id, start, end):
    dea_sql = '''SELECT * from debt_exchange_account dea where va_id = %s
           and status in (1) and bank_flag = 1 and price >0 and locking_num = 0  and bo_id not in (2143881,2156960,2149682,2149730,2176851,2176903,2131167,2141030,2149521) order by price desc limit %s, %s '''
    return conn.query(dea_sql, (va_id, start, end))


def process_transfer(dea_item_list):
    transfer_price = 0
    for dea_item in dea_item_list:
        transfer_price += dea_item['price']
        param = get_transfer_deb_param(23665, dea_item, target_type=3)
        #print param
        process_request(url, param)
        if transfer_price > expect_price:
            print "repurchase debt completed, the compelted price is %s" % (
                transfer_price)
            return
        # time.sleep(1)
    print "THE CURRENT PRICE IS %s" % (transfer_price)
예제 #2
0
from nono.base import  process_request, get_transfer_deb_param
from nono.db_factory import DBFactory
import sys

db = DBFactory()
url = 'http://XXXX.prod.com/XXXX-XXXX/debtSale/transfer'


def process_debt_change(va_id, target_id):
    sql = '''select va_id, bo_id, seri_no, user_id 
            from debt_exchange_account 
            where va_id = %s and price > 0 and status in (1,2) and bank_flag = 1 '''
    dea_list = db.query(sql=sql, param=(va_id, ))
    if len(dea_list) == 0:
        return None
    for dea_item in dea_list:
        data = get_transfer_deb_param(dea_item=dea_item, target_id=target_id, target_type=3)
        process_request(path=url, data=data)


if __name__ == '__main__':
    argv = sys.argv
    source_id = argv[1]
    target_id = argv[2]
    process_debt_change(source_id, target_id)
예제 #3
0
from functools import partial

from threadpool import ThreadPool, makeRequests

from nono.base import process_request
from nono.db_factory import DBFactory

pool = ThreadPool(10)

factory = DBFactory()

url = 'http://XXXX.prod.com/XXXX-XXXX/debtSale/transfer'


def fetch_debt_list(start, end):
    dea_sql = '''SELECT
                        sum(unpaid.price_principal) price,
                        unpaid.bo_id,
                        unpaid.user_id,
                        seri_no,
                        va_id
                FROM XXXX_borrows_accept_unpaid unpaid 
                INNER JOIN XXXX_borrows_info bo 
                  ON unpaid.bo_id = bo.bo_id
                WHERE bo.p_id = 87 AND unpaid.is_delete = 0 AND unpaid.va_id = 23665
                    GROUP BY unpaid.bo_id, seri_no,va_id
                    HAVING count(unpaid.id) = 6
                    ORDER BY sum(unpaid.price_principal) DESC
            limit %s , %s '''

    result_list = factory.query(dea_sql, (start, end))
예제 #4
0
from nono.db_factory import DBFactory
import time

dea_sql = '''update debt_exchange_account set seri_no = %s where va_id = %s and bo_id = %s'''
task_sql = '''update XXXX_debt_sale_task set seri_no = %s where from_id = %s and bo_id = %s and seri_no = '' '''
ba_sql = '''update XXXX_borrows_accept_unpaid set seri_no = %s where va_id = %s and bo_id = %s'''

bo_sql = '''select * from XXXX_single_debt_bo'''
dea_va_sql = '''select DISTINCT  bo_id, va_id from XXXX_borrows_accept_unpaid WHERE bo_id = %s and plan_time = %s and price_principal >0  '''


def gen_seri_no(bo_id, va_id):

    return '0000' + time.strftime("%y%d%m") + str(bo_id) + str(va_id)


if __name__ == '__main__':
    db = DBFactory()
    single_list = db.query(bo_sql, ())
    for bo_item in single_list:
        dea_list = db.query(dea_va_sql,
                            (bo_item['bo_id'], bo_item['plan_time']))
        for dea_item in dea_list:
            bo_id = dea_item['bo_id']
            va_id = dea_item['va_id']
            seri_no = gen_seri_no(dea_item['bo_id'], dea_item['va_id'])
            print(dea_sql % (seri_no, va_id, bo_id)) + ";"
            # print(task_sql%(seri_no, va_id, bo_id))+ ";"
            print(ba_sql % (seri_no, va_id, bo_id)) + ";"