| 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) |
| |
| |
| 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: |
|
|
| |
| 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) |
| |
| |
| 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 = 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 = 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() |