File size: 7,158 Bytes
5b2093c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39d7979
5b2093c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9e59a38
 
a166497
9e59a38
 
 
 
 
 
 
 
 
5b2093c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39d7979
5b2093c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39d7979
79f27d2
5b2093c
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
import os
import pandas as pd
from docx import Document
from docx.shared import Pt
from docx.oxml.ns import qn


def doc_process(input_path, output_path):

    qsz_folder = os.path.join(input_path, '起诉状')
    wts_folder = os.path.join(input_path, '委托书')
    info_path = os.path.join(input_path, 'info.xlsx')

    qsz_output_shex = os.path.join(output_path, '起诉状_上海耳序')
    qsz_output_fjzy = os.path.join(output_path, '起诉状_福建智云')
    qsz_output_hnsx = os.path.join(output_path, '起诉状_海南申信')

    wts_output_shex = os.path.join(output_path, '委托书_上海耳序')
    wts_output_fjzy = os.path.join(output_path, '委托书_福建智云')
    wts_output_hnsx = os.path.join(output_path, '委托书_海南申信')

    phone_wanglei = '18916935832'
    phone_zhangliren = '13817213203'

    qsz_file_list = os.listdir(qsz_folder)
    wts_file_list = os.listdir(wts_folder)

    if not os.path.exists(os.path.join(output_path)):
        os.mkdir(os.path.join(output_path))

    if not os.path.exists(qsz_output_shex):
        os.mkdir(qsz_output_shex)
        
    if not os.path.exists(qsz_output_fjzy):
        os.mkdir(qsz_output_fjzy)
        
    if not os.path.exists(qsz_output_hnsx):
        os.mkdir(qsz_output_hnsx)

    if not os.path.exists(wts_output_shex):
        os.mkdir(wts_output_shex)
        
    if not os.path.exists(wts_output_fjzy):
        os.mkdir(wts_output_fjzy)
        
    if not os.path.exists(wts_output_hnsx):
        os.mkdir(wts_output_hnsx)

    df = pd.read_excel(info_path)

    num_shex = 0
    num_fjzy = 0
    num_hnsx = 0
    num_other_lawyer = 0

    # 改管辖法院,并存到对应融担公司的目录中
    for qsz_file in qsz_file_list:
        
        # 读取起诉状文件
        qsz_path = os.path.join(qsz_folder, qsz_file)
        
        # 加载Docx文件
        doc = Document(qsz_path)
        
        # 从文件名获取合同号
        contract_id = qsz_file.split('_')[1]
        
        # 从表格中找到对应合同号的管辖法院
        court = df[df['合同号']==contract_id]['管辖法院'].tolist()[0]

        for p in doc.paragraphs:
            if '人民法院' in p.text:

                # 将正确的管辖法院更新到Docx中(加run设置字体)
                p.text = ''
                run = p.add_run(court)
                run.font.name = "Arial"
                run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')

                # 调整字体大小
                font = p.style.font
                font.size = Pt(14)
        
        # 判断担保公司
        if '福建智云' in df[df['合同号']==contract_id]['融担公司'].tolist()[0]:
            output_folder = qsz_output_fjzy
            num_fjzy += 1
        elif '海南申信' in df[df['合同号']==contract_id]['融担公司'].tolist()[0]:
            output_folder = qsz_output_hnsx
            num_hnsx += 1
        else:
            output_folder = qsz_output_shex
            num_shex += 1
            
        # 保存文件到对应目录
        output_path = os.path.join(output_folder, qsz_file)
        doc.save(output_path)

    # 改律师名字和电话,并存到对应融担公司的目录中
    for wts_file in wts_file_list:
        
        # 读取委托书文件
        wts_path = os.path.join(wts_folder, wts_file)
        
        # 加载Docx文件
        doc = Document(wts_path)
        
        # 从文件名获取合同号
        contract_id = wts_file.split('_')[1]
        
        # 从表格中找到对应合同号的管辖法院
        lawyer = df[df['合同号']==contract_id]['承办律师'].tolist()[0]
        user = df[df['合同号']==contract_id]['用户姓名'].tolist()[0]

        # 替换律师和电话
        if lawyer != '王磊':
            num_other_lawyer += 1
            for p in doc.paragraphs:
                if '王磊' in p.text and user not in p.text:
                    text_new_name = p.text.replace('王磊', '张立人')
                    p.text = ''
                    # 加run用于修改字体
                    run = p.add_run(text_new_name)
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')
                    # 调整字体
                    font = p.style.font
                    font.size = Pt(14)
                    
                if phone_wanglei in p.text:
                    text_new_phone = p.text.replace(phone_wanglei, phone_zhangliren)
                    p.text = ''
                    # 加run用于修改字体
                    run = p.add_run(text_new_phone)
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')
                    # 调整字体
                    font = p.style.font
                    font.size = Pt(14)

                if '王磊' in p.text and user in p.text:
                    # 现委托 王磊 在我单位与 沈黎宾 追偿权纠纷案件中,作为我单位的委托代理人,代理权限如下:
                    p.text = ''
                    run = p.add_run('现委托')
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')

                    run = p.add_run(' 张立人 ')
                    run.font.underline = True
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')

                    run = p.add_run('在我单位与')
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')

                    run = p.add_run(f' {user} ')
                    run.font.underline = True
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')

                    run = p.add_run('追偿权纠纷案件中,作为我单位的委托代理人,代理权限如下:')
                    run.font.name = "Arial"
                    run._element.rPr.rFonts.set(qn('w:eastAsia'),'宋体')                

        # 判断担保公司
        if '福建智云' in df[df['合同号']==contract_id]['融担公司'].tolist()[0]:
            output_folder = wts_output_fjzy
        elif '海南申信' in df[df['合同号']==contract_id]['融担公司'].tolist()[0]:
            output_folder = wts_output_hnsx
        else:
            output_folder = wts_output_shex
            
        # 保存文件到对应目录
        output_path = os.path.join(output_folder, wts_file)
        doc.save(output_path)
    
    total_have = len(qsz_file_list)
    total_done = num_shex+num_fjzy+num_hnsx
    result = f'共 {total_have} 条\n完成 {total_done} 条\n\n上海耳序:共 {num_shex} 条 | 福建智云:共 {num_fjzy} 条 | 海南申信:共 {num_hnsx} 条\n\n \
王磊律师:共 {total_have-num_other_lawyer} 条 | 张立人律师:共 {num_other_lawyer} 条\n\n所有文档已完成自动编辑!'
    
    return result

if __name__ == '__main__':
    doc_process()