示例#1
0
def notify_show(request, notify_id):  # 查看放款通知
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '放款通知'

    notify_obj = models.Notify.objects.get(id=notify_id)
    product_name_list = [
        '房抵贷',
        '担保贷',
        '过桥贷',
    ]
    agree_amount_cn = convert(notify_obj.agree.agree_amount)
    notify_money_cn = convert(notify_obj.notify_money)
    agree_term_cn = convert_num(notify_obj.agree.agree_term)
    agree_rate_str = notify_obj.agree.agree_rate
    date_today = datetime.date.today()
    date_today_str = str(date_today)

    agree_amount = notify_obj.agree.agree_amount
    provide_agree_list = models.Provides.objects.filter(
        notify__agree=notify_obj.agree)
    if provide_agree_list:
        provide_agree_count = provide_agree_list.count()
        provide_agree_aount = provide_agree_list.aggregate(
            Sum('provide_money'))['provide_money__sum']  #
        remainder = round(agree_amount - provide_agree_aount, 2)

    return render(request, 'dbms/provide/provide-notify-show.html', locals())
示例#2
0
def meeting_notice(request, meeting_id):  # 评审会通知
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    meeting_obj = models.Appraisals.objects.get(id=meeting_id)

    return render(request, 'dbms/meeting/meeting-notice.html', locals())
示例#3
0
def overdue_draft(request, *args, **kwargs):  #
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '到期票据列表'
    '''DRAFT_STATE_LIST = [
        (1, '未入库'), (2, '已入库'), (21, '置换出库'), (31, '解保出库'), (41, '托收出库'), (99, '已注销')]'''
    overdue_draft_list = models.DraftExtend.objects.filter(
        draft_state__in=[1, 2], due_date__lt=datetime.date.today())  # 逾期票据
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['draft_num', 'draft_acceptor',
                         'draft__draft_owner__name', 'draft__draft_owner__short_name']
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        overdue_draft_list = overdue_draft_list.filter(q)

    provide_acount = overdue_draft_list.count()
    '''分页'''
    paginator = Paginator(overdue_draft_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/overdu-draft.html', locals())
示例#4
0
def overdue_search(request, *args, **kwargs):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '超期查询'
    '''SEAL_STATE_LIST = ((1, '诉前保全'), (5, '首次首封'), (11, '首次轮封'), (21, '续查封'),
                           (51, '解除查封'), (99, '注销'))'''
    date_th_befor = datetime.date.today() + datetime.timedelta(
        days=-30)  # 30天前的日期
    overdue_search_list = models.Seal.objects.filter(
        seal_state__in=[1, 5, 11,
                        21], inquiry_date__lt=date_th_befor)  # 超过30天未查询
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'dun__warrant__warrant_num',
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        overdue_search_list = overdue_search_list.filter(q)
    provide_acount = overdue_search_list.count()
    '''分页'''
    paginator = Paginator(overdue_search_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/dun/overdu-seal.html', locals())
示例#5
0
def dun_stage(request, dun_id):  # 查看合同
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '资料目录'
    dun_obj = models.Dun.objects.get(id=dun_id)
    custom = dun_obj.compensatory.all().first(
    ).provide.notify.agree.lending.summary.custom.name  # 客户名称
    compensatory_amount = dun_obj.compensatory.all().first(
    ).compensatory_amount  # 代偿金额
    compensatory_date = dun_obj.compensatory.all().first(
    ).compensatory_date  # 代偿日期
    provide_money = dun_obj.compensatory.all().first(
    ).provide.provide_money  # 放款金额
    '''STAGE_TYPE_LIST = ((1, '证据及财产线索资料'), (11, '诉前资料'), (21, '一审资料'),
                       (31, '上诉及再审'), (41, '案外之诉'),
                       (51, '执行资料'), (99, '其他'))'''
    dun_stage_1 = models.Stage.objects.filter(dun=dun_obj, stage_type=1)
    dun_stage_11 = models.Stage.objects.filter(dun=dun_obj, stage_type=11)
    dun_stage_21 = models.Stage.objects.filter(dun=dun_obj, stage_type=21)
    dun_stage_31 = models.Stage.objects.filter(dun=dun_obj, stage_type=31)
    dun_stage_41 = models.Stage.objects.filter(dun=dun_obj, stage_type=41)
    dun_stage_51 = models.Stage.objects.filter(dun=dun_obj, stage_type=51)
    dun_stage_99 = models.Stage.objects.filter(dun=dun_obj, stage_type=99)

    return render(request, 'dbms/dun/dun-stage.html', locals())
示例#6
0
def meeting_scan(request, meeting_id):  # 评审会预览
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    meeting_obj = models.Appraisals.objects.get(id=meeting_id)
    expert_list = models.Experts.objects.filter(
        article_expert__appraisal_article=meeting_obj).distinct()
    expert_article_count = {}
    article_count = list()
    for expert_obj in expert_list:
        article_count = models.Articles.objects.filter(
            expert=expert_obj, appraisal_article=meeting_obj).count()
        expert_article_count['id'] = expert_obj.id
        expert_article_count['count'] = article_count

    expert_ll = models.Experts.objects.filter(
        article_expert__appraisal_article=meeting_obj).count()
    form_meeting_article_add = forms.MeetingArticleAddForm()

    meeting_edit_form_data = {
        'review_model': meeting_obj.review_model,
        'review_date': str(meeting_obj.review_date),
        'compere': meeting_obj.compere,
    }
    form_meeting_edit = forms.MeetingEditForm(initial=meeting_edit_form_data)

    return render(request, 'dbms/meeting/meeting-scan.html', locals())
示例#7
0
def review_scan(request, custom_id):  #
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '保后详情'
    custom_obj = models.Customes.objects.get(id=custom_id)
    custom_change_data = {
        'custom_typ': custom_obj.custom_typ,
        'credit_amount': custom_obj.credit_amount,
        'custom_state': custom_obj.custom_state,
        'managementor': custom_obj.managementor,
    }
    form_custom_change = forms.CustomChangeForm(initial=custom_change_data)
    custom_controler_data = {
        'controler': custom_obj.controler,
    }
    form_controler_change = forms.CustomControlerForm(
        initial=custom_controler_data)
    date_th_later = datetime.date.today() + datetime.timedelta(
        days=30)  # 30天后的日期
    form_review_plan = forms.FormRewiewPlanAdd(
        initial={'review_plan_date': str(date_th_later)})
    form_review_add = forms.FormRewiewAdd(
        initial={'review_date': str(datetime.date.today())})
    form_inv_add = forms.FormInvestigateAdd(
        initial={'inv_date': str(datetime.date.today())})

    article_custom_list = custom_obj.article_custom.all().order_by(
        '-build_date')[:15]
    review_custom_list = custom_obj.review_custom.all().order_by(
        '-review_date', '-review_plan_date')[:5]
    investigate_custom_list = custom_obj.inv_custom.all().order_by('-inv_date')

    return render(request, 'dbms/review/review-scan.html', locals())
示例#8
0
def soondue_draft(request, *args, **kwargs):  #
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '即将到期票据列表'

    date_th_later = datetime.date.today() - datetime.timedelta(days=-30)  # 30天前的日期

    soondue_draft_list = models.DraftExtend.objects.filter(draft_state__in=[1, 2], due_date__gte=datetime.date.today(),
                                                           due_date__lt=date_th_later)  # 30天内到期
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['draft_num', 'draft_acceptor',
                         'draft__draft_owner__name', 'draft__draft_owner__short_name']
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        soondue_draft_list = soondue_draft_list.filter(q)

    provide_acount = soondue_draft_list.count()
    '''分页'''
    paginator = Paginator(soondue_draft_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/overdu-draft.html', locals())
示例#9
0
def repay_plan_prew(request, provide_id):  #还款计划预览
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '还款计划表'

    provide_list = models.Provides.objects.filter(id=provide_id)
    provide_obj = provide_list.first()

    provide_money_cn = convert(provide_obj.provide_money)  #金额大写
    agree_term_cn = convert_num(provide_obj.notify.agree.agree_term)  #期限大写

    repay_method_DE = [
        21,
    ]  #等额本息
    repay_method_FQ = [11, 31]  #按月付息

    repay_plan_list = provide_obj.track_provide.all().filter(
        track_typ__in=[21, 25, 31])
    if not repay_plan_list:
        return HttpResponse("请先生成还款计划")
    term_pri_total = round(
        repay_plan_list.aggregate(Sum('term_pri'))['term_pri__sum'],
        2)  #应收本金合计
    term_int_total = round(
        repay_plan_list.aggregate(Sum('term_int'))['term_int__sum'],
        2)  #应收利息合计

    return render(request, 'dbms/provide/repay-plan-prew.html', locals())
示例#10
0
def seal(request, *args, **kwargs):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '查封列表'

    seal_state_list = models.Seal.SEAL_STATE_LIST
    seal_list = models.Seal.objects.filter(**kwargs).select_related(
        'dun', 'warrant').order_by('dun')
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'dun__title',  # 追偿项目
            'warrant__warrant_num'  # 财产
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        seal_list = seal_list.filter(q)
    compensatory_amount = seal_list.count()  # 信息数目
    '''分页'''
    paginator = Paginator(seal_list, 119)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/dun/dun-seal.html', locals())
示例#11
0
def warrant_agree_warrant(request, agree_id, warrant_id):  # 查看合同
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    page_title = '权证管理'
    '''SURE_TYP_LIST = (
            (1, '企业保证'), (2, '个人保证'),
            (11, '房产抵押'), (12, '土地抵押'), (13, '设备抵押'), (14, '存货抵押'), (15, '车辆抵押'),
            (21, '房产顺位'), (22, '土地顺位'),
            (31, '应收质押'), (32, '股权质押'), (33, '票据质押'),
            (41, '合格证监管'), (42, '房产监管'), (43, '土地监管'),
            (51, '股权预售'), (52, '房产预售'), (53, '土地预售'))'''
    '''COUNTER_TYP_LIST = (
        (1, '企业担保'), (2, '个人保证'),
        (11, '房产抵押'), (12, '土地抵押'), (13, '设备抵押'), (14, '存货抵押'), (15, '车辆抵押'),
        (31, '应收质押'), (32, '股权质押'), (33, '票据质押'),
        (51, '股权预售'), (52, '房产预售'), (53, '土地预售'))'''
    agree_obj = models.Agrees.objects.get(id=agree_id)
    lending_obj = agree_obj.lending
    warrant_obj = models.Warrants.objects.get(id=warrant_id)

    '''WARRANT_TYP_LIST = [
        (1, '房产'), (2, '土地'), (11, '应收'), (21, '股权'),
        (31, '票据'), (41, '车辆'), (51, '动产'), (99, '他权')]'''
    sure_list = [1, 2]  # 保证反担保类型
    house_list = [11, 21, 42, 52]
    ground_list = [12, 22, 43, 53]
    receivable_list = [31]
    stock_list = [32]

    form_storage_add_edit = forms.StoragesAddEidtForm()

    return render(request, 'dbms/warrant/warrant-agree-warrant.html', locals())
示例#12
0
def ground(request, *args, **kwargs):  # 房产列表
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()

    PAGE_TITAL = '权证-土地'
    add_warrant = '添加土地'
    warrant_typ_n = 5

    form_warrant_edit = forms.WarrantEditForm()
    form_ground_add_edit = forms.GroundAddEidtForm()

    ground_app_list = models.Grounds.GROUND_APP_LIST
    ground_list = models.Grounds.objects.filter(**kwargs).order_by('warrant')
    '''分页'''
    paginator = Paginator(ground_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/ground.html', locals())
示例#13
0
def seal_scan(request, dun_id, warrant_id):  # 查看合同
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '查封详情'
    seal_obj = models.Seal.objects.get(dun_id=dun_id, warrant_id=warrant_id)
    return render(request, 'dbms/dun/dun-seal-scan.html', locals())
示例#14
0
def warrant_agree(request, *args, **kwargs):  # 按合同入库
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITAL = '权证-按合同'
    '''AGREE_STATE_LIST = ((11, '待签批'), (21, '已签批'), (31, '未落实'),
                        (41, '已落实'), (51, '待变更'), (61, '已解保'), (99, '作废'))'''
    AGREE_STATE_LIST = models.Agrees.AGREE_STATE_LIST  # 筛选条件
    '''筛选'''
    # agree_list = models.Agrees.objects.filter(**kwargs).filter(agree_state__in=[21, 31, 51]).select_related(
    #     'lending', 'branch').order_by('-agree_num')
    agree_list = models.Agrees.objects.filter(**kwargs).select_related('lending', 'branch').order_by('-agree_num')
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['agree_num', 'lending__summary__custom__name',
                         'branch__name', 'lending__summary__summary_num']
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        agree_list = agree_list.filter(q)
    agree_acount = agree_list.count()
    '''分页'''
    paginator = Paginator(agree_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/warrant-agree.html', locals())
示例#15
0
def overdue_cooperator(request, *args, **kwargs):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '逾期协议'

    overdue_cooperator_list = models.Cooperators.objects.filter(
        cooperator_state=1,
        due_date__lt=datetime.date.today()).order_by('-due_date')  # 逾期协议
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'draft_num', 'draft_acceptor', 'draft__draft_owner__name',
            'draft__draft_owner__short_name'
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        overdue_cooperator_list = overdue_cooperator_list.filter(q)

    provide_acount = overdue_cooperator_list.count()
    '''分页'''
    paginator = Paginator(overdue_cooperator_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/external/cooperative.html', locals())
示例#16
0
def employee(request, *args, **kwargs):  # 委托合同列表
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '用户列表'
    EMPLOYEE_STATUS_LIST = models.Employees.EMPLOYEE_STATUS_LIST
    '''筛选'''
    employee_list = models.Employees.objects.filter(**kwargs).select_related('department', ).order_by('employee_status','num')
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['email', 'num', 'name', 'department__name', ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        employee_list = employee_list.filter(q)

    '''分页'''
    paginator = Paginator(employee_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/employee/employee.html', locals())
示例#17
0
def article(request, *args, **kwargs):  # 项目列表
    # print(request.session.items())
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '项目列表'

    form_article_add_edit = forms.ArticlesAddForm()
    for k, v in request.GET.items():  # 获取传递参数
        pass
        # print(k, ' ', v)
    condition = {
        # 'article_state' : 0, #查询字段及值的字典,空字典查询所有
    }  # 建立空的查询字典
    for k, v in kwargs.items():
        # temp = int(v)
        temp = v
        kwargs[k] = temp
        if temp:
            condition[k] = temp  # 将参数放入查询字典
    '''筛选条件'''
    article_state_list = models.Articles.ARTICLE_STATE_LIST  # 筛选条件
    article_state_list_dic = list(
        map(lambda x: {
            'id': x[0],
            'name': x[1]
        }, article_state_list))
    # 列表或元组转换为字典并添加key[{'id': 1, 'name': '待反馈'}, {'id': 2, 'name': '已反馈'}]
    '''筛选'''
    article_list = models.Articles.objects.filter(**kwargs).select_related(
        'custom', 'director', 'assistant', 'control')
    article_list = article_list_screen(article_list, request)  # 项目筛选
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'article_num', 'custom__name', 'custom__short_name',
            'director__name', 'assistant__name', 'control__name'
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        article_list = article_list.filter(q)
    article_acount = article_list.count()  # 信息数目
    balance = article_list.aggregate(
        Sum('article_balance'))['article_balance__sum']  # 在保余额
    '''分页'''
    paginator = Paginator(article_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/article/article.html', locals())
示例#18
0
def overdue_evaluate(request, *args, **kwargs):  #
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '评估跟踪'
    warrant_typ_n = 0
    '''WARRANT_STATE_LIST = (
        (1, '未入库'), (2, '已入库'), (6, '无需入库'), (11, '续抵出库'), (21, '已借出'), (31, '解保出库'),
        (99, '已注销'))'''
    ''' WARRANT_TYP_LIST = [
        (1, '房产'), (2, '房产包'), (5, '土地使用权'), (6, '在建工程'), (11, '应收账款'),
        (21, '股权'), (31, '票据'), (41, '车辆'), (51, '动产'), (55, '其他'), (99, '他权')]'''

    EVALUATE_STATE_LIST = models.Warrants.EVALUATE_STATE_LIST  # 筛选条件
    '''筛选'''
    warrant_list = models.Warrants.objects.filter(**kwargs).exclude(
        evaluate_state__in=[41, 99])
    warrant_list = warrant_list_screen(warrant_list, request)
    '''EVALUATE_STATE_LIST = [(0, '待评估'), (5, '机构评估'), (11, '机构预估'), (21, '综合询价'), (31, '购买成本'),
                               (41, '拍卖评估'), (99, '无需评估')]'''
    '''ARTICLE_STATE_LIST = [(1, '待反馈'), (2, '已反馈'), (3, '待上会'), (4, '已上会'), (5, '已签批'),
                          (51, '已放款'), (52, '已放完'), (55, '已解保'), (61, '待变更'), (99, '已注销')]'''
    '''LENDING_STATE = [(4, '已上会'), (5, '已签批'),
                     (51, '已放款'), (52, '已放完'), (55, '已解保'), (61, '待变更'), (99, '已注销')]'''
    warrant_list = warrant_list.filter(
        lending_warrant__sure__lending__lending_state__in=[5, 51, 52, 61]).distinct()
    ddd = []
    for warrant in warrant_list:
        if warrant.evaluate_state == 0:
            ddd.append(warrant.id)
        else:
            if warrant.meeting_date:
                cccc = warrant.meeting_date - warrant.evaluate_date
                if cccc.days > 365:
                    ddd.append(warrant.id)
    warrant_list = models.Warrants.objects.filter(id__in=ddd).order_by('-meeting_date')

    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['warrant_num']
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        warrant_list = warrant_list.filter(q)
    warrant_acount = warrant_list.count()
    '''分页'''
    paginator = Paginator(warrant_list, 119)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/overdu-evaluate.html', locals())
示例#19
0
def provide_scan(request, provide_id):  # 查看放款
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '放款详情'

    provide_list = models.Provides.objects.filter(id=provide_id)
    provide_obj = provide_list.first()

    today_str = str(datetime.date.today())
    date_th_later = datetime.date.today() + datetime.timedelta(
        days=30)  # 30天后的日期
    date_year_later = datetime.date.today() + datetime.timedelta(
        days=365)  # 一年后的日期
    form_repayment_data = {
        'repayment_money': provide_obj.provide_money,
        'repayment_date': today_str,
    }
    form_repayment_add = forms.FormRepaymentAdd(
        initial=form_repayment_data)  #还款form
    form_compensatory_add = forms.FormCompensatoryAdd(
        initial={'compensatory_date': today_str})  #代偿form
    form_track_plan = forms.FormTrackPlan(
        initial={'plan_date': str(date_th_later)})
    form_track_ex_add = forms.FormTrackEXAdd(
        initial={'ex_track_date': today_str})  #跟踪form
    form_track_add = forms.FormTrackAdd()  #跟踪计划form
    provide_state_change_data = {'provide_status': provide_obj.provide_status}
    form_change_provide_state = forms.FormProvideStateChange(
        initial=provide_state_change_data)  #放款状态修改form
    form_extension_data = {
        'extension_amount': provide_obj.provide_balance,
        'extension_date': today_str,
        'extension_due_date': str(date_year_later),
    }
    form_extension = forms.FormExtensionAdd(
        initial=form_extension_data)  #展期form

    provide_money = provide_obj.provide_money
    agree_rate = provide_obj.notify.agree.agree_rate  #保费率/利率
    investigation_fee = provide_obj.notify.agree.investigation_fee  #调查费率(%)
    try:
        single_quota_rate = float(agree_rate)
        charge = round(provide_money * single_quota_rate / 100, 2)
        charge_fee = round(provide_money * investigation_fee / 100, 2)
    except ValueError:
        agree_rate = 0
        charge = 0
        charge_fee = round(provide_money * investigation_fee / 100, 2)
    form_provide_db_data = {
        'agree_rate': agree_rate,
        'charge': charge,
        'investigation_fee': investigation_fee,
        'charge_fee': charge_fee,
    }
    form_provide_db = forms.FormProvideDB(initial=form_provide_db_data)
    return render(request, 'dbms/provide/provide-scan.html', locals())
示例#20
0
def result_preview(request, agree_id, result_id):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    agree_obj = models.Agrees.objects.get(id=agree_id)  # 委托合同
    result_obj = models.ResultState.objects.get(id=result_id)  # 反担保合同
    result_detail = result_obj.result_detail

    return render(request, 'dbms/agree/preview-result.html', locals())
示例#21
0
def review_overdue(request, *args, **kwargs):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '逾期保后'

    review_overdue_list = models.Customes.objects.filter(
        review_state=1, review_plan_date__lt=datetime.date.today()).order_by(
            'review_plan_date')  # 逾期保后
    review_overdue_list = custom_list_screen(review_overdue_list, request)
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'name',
            'short_name',
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        review_overdue_list = review_overdue_list.filter(q)

    provide_acount = review_overdue_list.count()

    flow_amount = review_overdue_list.aggregate(
        Sum('custom_flow'))['custom_flow__sum']  # 流贷余额
    accept_amount = review_overdue_list.aggregate(
        Sum('custom_accept'))['custom_accept__sum']  # 承兑余额
    back_amount = review_overdue_list.aggregate(
        Sum('custom_back'))['custom_back__sum']  # 保函余额

    if flow_amount:
        flow_amount = flow_amount
    else:
        flow_amount = 0
    if accept_amount:
        accept_amount = accept_amount
    else:
        accept_amount = 0
    if back_amount:
        back_amount = back_amount
    else:
        back_amount = 0
    balance = flow_amount + accept_amount + back_amount
    '''分页'''
    paginator = Paginator(review_overdue_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/review/review.html', locals())
示例#22
0
def warrant_agree_scan(request, agree_id):  # 查看合同
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '权证管理'
    agree_obj = models.Agrees.objects.get(id=agree_id)
    lending_obj = agree_obj.lending
    '''ARTICLE_STATE_LIST = ((1, '待反馈'), (2, '已反馈'), (3, '待上会'), (4, '已上会'), (5, '已签批'),
                          (51, '已放款'), (52, '已放完'), (55, '已解保'), (61, '待变更'), (99, '已注销'))'''
    '''SURE_TYP_LIST = (
        (1, '企业保证'), (2, '个人保证'),
        (11, '房产抵押'), (12, '土地抵押'), (13, '动产抵押'), (14, '在建工程抵押'), (15, '车辆抵押'),
        (21, '房产顺位'), (22, '土地顺位'), (23, '在建工程顺位'), (24, '动产顺位'),
        (31, '应收质押'), (32, '股权质押'), (33, '票据质押'), (34, '动产质押'), (39, '其他权利质押'),
        (42, '房产监管'), (43, '土地监管'), (44, '票据监管'), (47, '动产监管'), (49, '其他监管'),
        (51, '股权预售'), (52, '房产预售'), (53, '土地预售'))'''
    '''WARRANT_TYP_LIST = [
        (1, '房产'), (2, '房产包'), (5, '土地'), (6, '在建工程'), (11, '应收账款'),
        (21, '股权'), (31, '票据'), (41, '车辆'), (51, '动产'), (55, '其他'), (99, '他权')]'''

    SURE_LIST = [1, 2]  # 保证类
    HOUSE_LIST = [11, 21, 42, 52]  # 房产类
    GROUND_LIST = [12, 22, 43, 53]  # 土地类
    COUNSTRUCT_LIST = [14, 23]  # 在建工程类
    RECEIVABLE_LIST = [31, ]  # 应收账款类
    STOCK_LIST = [32, 51]  # 股权类
    DRAFT_LIST = [33, 44]  # 票据类
    VEHICLE_LIST = [15, ]  # 车辆类
    CHATTEL_LIST = [13, 24, 34, 47]  # 动产类
    OTHER_LIST = [39, 49]  # 其他类
    '''反担保情况'''
    custom_lending_list = models.Customes.objects.filter(lending_custom__sure__lending=lending_obj)
    warrant_lending_h_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ__in=[1, 2])
    warrant_lending_g_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=5)
    warrant_lending_6_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=6)
    warrant_lending_r_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=11)
    warrant_lending_s_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=21)
    warrant_lending_d_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=31)
    warrant_lending_v_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=41)
    warrant_lending_c_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=51)
    warrant_lending_o_list = models.Warrants.objects.filter(lending_warrant__sure__lending=lending_obj,
                                                            warrant_typ=55)
    '''他权情况'''
    hypothec_agree_list = models.Hypothecs.objects.filter(agree=agree_obj)

    form_storage_add_edit = forms.StoragesAddEidtForm(initial={'storage_date': str(datetime.date.today())})

    return render(request, 'dbms/warrant/warrant-agree-scan.html', locals())
示例#23
0
def dun(request, *args, **kwargs):  #
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '追偿列表'

    dun_stage_list = models.Dun.DUN_STAGE_LIST
    dun_list = models.Dun.objects.filter(**kwargs).order_by('title')
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'title',  # 追偿项目编号
            'compensatory__provide__notify__agree__lending__summary__summary_num',  # 纪要编号
            'compensatory__provide__notify__agree__lending__summary__custom__name',  # 客户名称
            'compensatory__provide__notify__agree__lending__summary__custom__short_name',  # 客户名称
            'compensatory__provide__notify__agree__agree_num',  # 委托担保合同编号
            'compensatory__provide__notify__agree__branch__name',  # 放款银行
            'compensatory__provide__notify__agree__branch__short_name',  # 放款银行
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        dun_list = dun_list.filter(q)
    dun_amount = dun_list.aggregate(
        Sum('dun_amount'))['dun_amount__sum']  # 追偿总额
    if dun_amount:
        dun_amount = round(dun_amount, 2)
    else:
        dun_amount = 0
    dun_retrieve_sun = dun_list.aggregate(
        Sum('dun_retrieve_sun'))['dun_retrieve_sun__sum']  # 回收总额
    if dun_retrieve_sun:
        dun_retrieve_sun = round(dun_retrieve_sun, 2)
    else:
        dun_retrieve_sun = 0
    dun_charge_sun = dun_list.aggregate(
        Sum('dun_charge_sun'))['dun_charge_sun__sum']  # 费用总额
    if dun_charge_sun:
        dun_charge_sun = round(dun_charge_sun, 2)
    else:
        dun_charge_sun = 0
    compensatory_amount = dun_list.count()  # 信息数目
    '''分页'''
    paginator = Paginator(dun_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    form_dun_add = forms.FormDunAdd()  # 联系人
    return render(request, 'dbms/dun/dun.html', locals())
示例#24
0
def classification(request, *args, **kwargs):  # 分类列表
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    job_list = request.session.get('job_list')  # 获取当前用户的所有角色
    PAGE_TITLE = '分类列表'
    if kwargs:
        fication = kwargs['fication']
    else:
        fication = 0
    '''PROVIDE_STATUS_LIST = [(1, '在保'), (11, '解保'), (21, '代偿')]'''
    FICATION_LIST = [(11, '正常'), (21, '关注'), (31, '次级'), (41, '可疑'),
                     (51, '损失')]  # 筛选条件
    '''筛选'''
    provide_list = models.Provides.objects.filter(provide_balance__gt=0)
    provide_list = provide_list.filter(
        **kwargs).select_related('notify').order_by('-provide_date')
    provide_list = provide_list_screen(provide_list, request)
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'notify__agree__lending__summary__custom__name',
            'notify__agree__lending__summary__custom__short_name',
            'notify__agree__branch__name', 'notify__agree__branch__short_name',
            'notify__agree__agree_num'
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        provide_list = provide_list.filter(q)

    balance = provide_list.aggregate(
        Sum('provide_balance'))['provide_balance__sum']  # 在保余额

    provide_acount = provide_list.count()
    '''分页'''
    paginator = Paginator(provide_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)
    today_str = str(datetime.date.today())
    form_fication = forms.FormFicationAdd(initial={'fic_date': today_str})

    form_fication_all_data = {
        'fic_date': today_str,
        'fication': fication,
    }
    form_fication_all = forms.FormFicationAll(initial=form_fication_all_data)

    return render(request, 'dbms/review/classification.html', locals())
示例#25
0
def cooperative(request, *args, **kwargs):  # 合作机构
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '合作机构'

    COOPERATOR_TYPE_LIST = models.Cooperators.COOPERATOR_TYPE_LIST
    cooperator_list = models.Cooperators.objects.filter(**kwargs).order_by(
        '-flow_credit', '-flow_limit')
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = [
            'name',  # 追偿项目编号
            'short_name',  # 客户名称
        ]
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        cooperator_list = cooperator_list.filter(q)

    flow_credit_amount = cooperator_list.aggregate(
        Sum('flow_credit'))['flow_credit__sum']  # 综合额度
    if flow_credit_amount:
        flow_credit_amount = round(flow_credit_amount, 2)
    else:
        flow_credit_amount = 0
    back_credit_amount = cooperator_list.aggregate(
        Sum('back_credit'))['back_credit__sum']  # 保函额度
    if back_credit_amount:
        back_credit_amount = round(back_credit_amount, 2)
    else:
        back_credit_amount = 0

    flow_amount = cooperator_list.aggregate(
        Sum('cooperator_flow'))['cooperator_flow__sum']  # 流贷余额
    accept_amount = cooperator_list.aggregate(
        Sum('cooperator_accept'))['cooperator_accept__sum']  # 承兑余额
    back_amount = cooperator_list.aggregate(
        Sum('cooperator_back'))['cooperator_back__sum']  # 保函余额
    balance = cooperator_list.aggregate(Sum('amount'))['amount__sum']  # 保函余额

    compensatory_amount = cooperator_list.count()  # 信息数目

    ####分页信息###
    paginator = Paginator(cooperator_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/external/cooperative.html', locals())
示例#26
0
def agreement_add_ajax(request):  # 合作协议ajax
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    response = {
        'status': True,
        'message': None,
        'forme': None,
    }
    post_data_str = request.POST.get('postDataStr')
    post_data = json.loads(post_data_str)
    cooperator_list = models.Cooperators.objects.filter(
        id=post_data['cooperator_id'])
    cooperator_obj = cooperator_list.first()
    cooperator_state = cooperator_obj.cooperator_state
    '''COOPERATOR_STATE_LIST = ((1, '正常'), (11, '注销'))'''
    form_agreement_add = forms.FormAgreementAdd(post_data)
    if form_agreement_add.is_valid():
        if cooperator_state == 1:
            agreement_cleaned = form_agreement_add.cleaned_data
            flow_credit = round(agreement_cleaned['flow_credit'], 2)
            flow_limit = round(agreement_cleaned['flow_limit'], 2)
            back_credit = round(agreement_cleaned['back_credit'], 2)
            back_limit = round(agreement_cleaned['back_limit'], 2)
            credit_date = agreement_cleaned['credit_date']
            due_date = agreement_cleaned['due_date']
            try:
                with transaction.atomic():
                    agreement_obj = models.Agreements.objects.create(
                        cooperator=cooperator_obj,
                        flow_credit=flow_credit,
                        flow_limit=flow_limit,
                        back_credit=back_credit,
                        back_limit=back_limit,
                        credit_date=credit_date,
                        due_date=due_date,
                        agreementor=request.user)
                    cooperator_list.update(flow_credit=flow_credit,
                                           flow_limit=flow_limit,
                                           back_credit=back_credit,
                                           back_limit=back_limit,
                                           credit_date=credit_date,
                                           due_date=due_date)
                response['message'] = '合作协议添加成功!'
            except Exception as e:
                response['status'] = False
                response['message'] = '合作协议添加失败:%s' % str(e)
        else:
            response['status'] = False
            response['message'] = '状态为:%s,合作协议添加失败' % cooperator_state
    else:
        response['status'] = False
        response['message'] = '表单信息有误!!!'
        response['forme'] = form_agreement_add.errors
    result = json.dumps(response, ensure_ascii=False)
    return HttpResponse(result)
示例#27
0
def agree_preview(request, agree_id):
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()

    agree_obj = models.Agrees.objects.get(id=agree_id)

    AGREE_TYP_D = models.Agrees.AGREE_TYP_D  # 担保公司合同类型
    AGREE_TYP_X = models.Agrees.AGREE_TYP_X  # 小贷公司合同类型

    agree_amount_cn = convert(agree_obj.agree_amount)  # 转换为金额大写
    agree_amount_str = amount_s(agree_obj.agree_amount)  # 元转换为万元并去掉小数点后面的零
    agree_amount_y = amount_y(agree_obj.agree_amount)  # 元转换为万元并去掉小数点后面的零
    agree_term_cn = convert_num(agree_obj.agree_term)  # 合同期限转大写
    agree_copy_cn = convert_num(agree_obj.agree_copies)

    UN, ADD, CNB = un_dex(agree_obj.agree_typ)  # 不同合同种类下主体适用

    if agree_obj.agree_typ in [
            22,
    ]:  # (22, 'D-公司保函'),
        page_home_y_y = '申请人(乙方)'
        page_home_y_j = '担保人(甲方)'
    elif agree_obj.agree_typ in [
            21,
    ]:  # (21, 'D-分离式保函'),
        page_home_y_y = '乙方'
        page_home_y_j = '甲方'
    else:
        page_home_y_y = '被担保人(乙方)'
        page_home_y_j = '担保人(甲方)'

    notarization_typ = False  # 是否公证
    if agree_obj.agree_typ in [1, 2, 3, 4, 21, 22, 23]:
        agree_copy_jy_cn = convert_num(agree_obj.agree_copies - 2)
    else:
        notarization_typ = True
        agree_copy_jy_cn = convert_num(agree_obj.agree_copies - 3)
    '''利率(费率)处理'''
    agree_rate_cn_q = ''
    try:
        rate_b = True
        single_quota_rate = float(agree_obj.agree_rate)
        charge = round(agree_obj.agree_amount * single_quota_rate / 100, 2)
        agree_rate_cn_q = convert_num(float(
            agree_obj.agree_rate))  # 合同利率转换为千分之,大写
        agree_rate_p = round(((20 - float(agree_obj.agree_rate)) / 30 * 10), 4)
        agree_rate_w = convert_num_4(agree_rate_p)
        charge_cn = convert(charge)
    except ValueError:
        rate_b = False
        single_quota_rate = agree_obj.agree_rate
        agree_rate_cn_q = agree_obj.agree_rate
        agree_rate_w = '叁点叁叁叁叁'

    return render(request, 'dbms/agree/preview-agree.html', locals())
示例#28
0
def employee_scan(request, employee_id):  # 查看用户
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '用户详情'

    employee_list = models.Employees.objects.filter(id=employee_id)
    employee_obj = employee_list.first()

    return render(request, 'dbms/employee/employee-scan.html', locals())
示例#29
0
def warrant(request, *args, **kwargs):  # 权证列表
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITAL = '权证列表'
    add_warrant = '添加权证'
    warrant_typ_n = 0
    '''WARRANT_STATE_LIST = (
        (1, '未入库'), (2, '已入库'), (6, '无需入库'), (11, '续抵出库'), (21, '已借出'), (31, '解保出库'),
        (99, '已注销'))'''
    ''' WARRANT_TYP_LIST = [
        (1, '房产'), (2, '房产包'), (5, '土地使用权'), (6, '在建工程'), (11, '应收账款'),
        (21, '股权'), (31, '票据'), (41, '车辆'), (51, '动产'), (55, '其他'), (99, '他权')]'''
    '''模态框'''
    form_warrant_add = forms.WarrantAddForm()  # 权证添加
    form_house_add_edit = forms.HouseAddEidtForm()  # 房产添加
    form_ground_add_edit = forms.GroundAddEidtForm()  # 土地添加
    form_construct_add_edit = forms.ConstructionAddForm()  # 在建工程
    form_receivable_add = forms.FormReceivable()  # 应收添加
    form_stockes_add_edit = forms.FormStockes()  # 21股权添加
    form_draft_add_eidt = forms.FormDraft()  # 31票据添加
    form_vehicle_add_eidt = forms.FormVehicle()  # 41车辆添加
    form_chattel_add_eidt = forms.FormChattel()  # 51动产添加
    form_other_add_eidt = forms.FormOthers()  # 55其他添加
    form_other_add_eidt_41 = forms.FormOthers41()  # 55其他添加
    form_hypothecs_add_eidt = forms.HypothecsAddEidtForm()  # 99他权添加

    warrant_typ_list = models.Warrants.WARRANT_TYP_LIST  # 筛选条件
    '''筛选'''
    warrant_list = models.Warrants.objects.filter(**kwargs).order_by('warrant_num')
    warrant_list = warrant_list_screen(warrant_list, request)
    '''搜索'''
    search_key = request.GET.get('_s')
    if search_key:
        search_fields = ['warrant_num']
        q = Q()
        q.connector = 'OR'
        for field in search_fields:
            q.children.append(("%s__contains" % field, search_key.strip()))
        warrant_list = warrant_list.filter(q)
    warrant_acount = warrant_list.count()
    '''分页'''
    paginator = Paginator(warrant_list, 19)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/warrant/warrant.html', locals())
示例#30
0
def dun_scan(request, dun_id):  # 查看合同
    current_url_name = resolve(request.path).url_name  # 获取当前URL_NAME
    authority_list = request.session.get('authority_list')  # 获取当前用户的所有权限
    menu_result = MenuHelper(request).menu_data_list()
    PAGE_TITLE = '追偿管理'
    today_str = datetime.date.today()
    date_th_later = today_str + datetime.timedelta(days=365)

    dun_obj = models.Dun.objects.get(id=dun_id)
    from_clue_add = forms.FormClueAdd()  # 财产线索
    from_custom_add = forms.FormCustomAdd()  # 被告人
    from_sealup_data = {
        'sealup_date': str(today_str),
        'due_date': str(date_th_later)
    }
    from_sealup_add = forms.FormSealupAdd(initial=from_sealup_data)  # 查封情况
    from_standing_add = forms.FormStandingAdd()  # 添加追偿台账
    form_charge_add = forms.FormChargeAdd(
        initial={'charge_date': str(today_str)})  # 追偿费用
    form_retrieve_add = forms.FormRetrieveAdd(
        initial={'retrieve_date': str(today_str)})  # 案款回收
    form_inquiry_add = forms.FormInquiryAdd()  # 查询
    form_evaluate_add = forms.FormInquiryEvaluateAdd(
        initial={'evaluate_date': str(today_str)})  # 评估
    form_hanging_add = forms.FormInquiryHangingAdd(
        initial={'auction_date': str(today_str)})  # 挂网
    form_turn_add = forms.FormInquiryTurnAdd(
        initial={'transaction_date': str(today_str)})  # 成交
    form_stage_add = forms.FormStageAdd(initial={'stage_date':
                                                 str(today_str)})  # 目录
    form_staff_add = forms.FormStaffAdd()  # 联系人
    form_agent_data = {
        'agent_date': str(today_str),
        'due_date': str(today_str + datetime.timedelta(days=365 * 3))
    }
    form_agent_add = forms.FormAgentAdd(initial=form_agent_data)  # 代理合同
    form_judgment_add = forms.FormJudgmentAdd(
        initial={'judgment_date': str(today_str)})  # 判决裁定
    standing_list = models.Standing.objects.filter(
        dun=dun_obj).order_by('-standingor_date')
    stage_list = models.Stage.objects.filter(dun=dun_obj)
    '''分页'''
    paginator = Paginator(standing_list, 6)
    page = request.GET.get('page')
    try:
        p_list = paginator.page(page)
    except PageNotAnInteger:
        p_list = paginator.page(1)
    except EmptyPage:
        p_list = paginator.page(paginator.num_pages)

    return render(request, 'dbms/dun/dun-scan.html', locals())