IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 人事工作中的Python运用——批量劳动合同+实习协议 -> 正文阅读

[Python知识库]人事工作中的Python运用——批量劳动合同+实习协议

HELLO,大家好呀!

今天为大家带来的是“python批量劳动合同+实习协议生成器”,为什么我会制作这个程序,因为我所在的实习公司人流量流动很大,所以一人一份的准备手动打合同就非常麻烦;

合同内容要素主要是:

签订日期+合同金额+合同生效日期+合同结束日期+试用期结束日期+文件类型(劳动合同/实习协议)

准备一个EXCEL(命名为“批量合同.xlsx”),内容的填写要求见右边的提示

?劳动合同(命名为“劳动合同【模板勿动】.docx”)修改部分:

签订日期:

?? 奰??? ???? 躄???? ??? 罍???

?

?

合同期限:

本劳动合同为 √固定期限□无固定期限劳动合同,合同期限自日起至日止,共计年。其中试用期个月,自日起至日止。

?

合同工资:

?乙方每月工资为人民币? 懿? 元(税前)

?

? 实习协议(命名为“实习协议【模板勿动】.docx”)修改部分:

实习合同期限:

第一条 本合同自? 奰? ? 躄? ? 罍? 日起生效, 颣? ? 薐? ? 豳? 日终止。

?实习津贴:

第九条 如果甲乙双方就支付实习期间补贴的达成一致意见的,甲方以每月? 懿? 的标准支付乙方,并于次月15统一结算。

?签订日期:

?奰? 日? ? ? ? ? ? ? ? ? ? ?

以上合同内容请对应修改本公司自己的合同模板,切记一定要让替换的字符下面有下划线,否则会替换失败!

Python代码:

from docx import Document
from openpyxl import load_workbook
import os
import datetime
import time
# 结合路径判断生成文件夹,规避程序报错而终止的风险
if not os.path.exists('./' + '全部合同'):
    os.mkdir('./' + '全部合同')
    print("创建目录成功")

workbook = load_workbook( './' + '批量合同.xlsx')
sheet = workbook.active
#人数
numbers = int(sheet.max_row)-1
print("人数共计:{}人".format(str(numbers)))

for table_row in range(2, sheet.max_row + 1):
    wordfile = Document('./' + 'CBC劳动合同【模板勿动】.docx')
    print("=====合同姓名类型=====")
    name = str(sheet.cell(row=table_row, column=1).value)
    print(name)
    series = str(sheet.cell(row=table_row, column=6).value)
    print(series)
    try:
        #获取合同开始日期
        print("=====合同开始日期=====")
        date_kaishi =  sheet['B{}'.format(table_row)].value
        try:
            date_kaishi_year = "20"+str(date_kaishi.strftime('%y')) 
            date_kaishi_month = str(date_kaishi.strftime('%m'))
            date_kaishi_day = str(date_kaishi.strftime('%d'))
        except:
            date_kaishi_year = datetime.datetime.strptime(date_kaishi,'%Y-%m-%d').year
            date_kaishi_month = datetime.datetime.strptime(date_kaishi,'%Y-%m-%d').month
            date_kaishi_day = datetime.datetime.strptime(date_kaishi,'%Y-%m-%d').day
        print(date_kaishi_year)
        print(date_kaishi_month)
        print(date_kaishi_day)
        #获取合同终止日期
        print("=====合同终止日期=====")
        date_zhongzhi = sheet['C{}'.format(table_row)].value
        try:
            date_zhongzhi_year = "20"+str(date_zhongzhi.strftime('%y')) 
            date_zhongzhi_month = str(date_zhongzhi.strftime('%m'))
            date_zhongzhi_day = str(date_zhongzhi.strftime('%d'))
        except:
            date_zhongzhi_year = datetime.datetime.strptime(date_zhongzhi,'%Y-%m-%d').year
            date_zhongzhi_month = datetime.datetime.strptime(date_zhongzhi,'%Y-%m-%d').month
            date_zhongzhi_day = datetime.datetime.strptime(date_zhongzhi,'%Y-%m-%d').day
        print(date_zhongzhi_year)
        print(date_zhongzhi_month)
        print(date_zhongzhi_day)
        #获取合同试用日期
        print("=====试用截止日期=====")
        date_shiyong = sheet['D{}'.format(table_row)].value
        print(date_shiyong)
        if date_shiyong ==  None:
            print("无试用期")
            date_shiyong_if = "/"
            date_shiyong_year = "/"
            date_shiyong_month = "/"
            date_shiyong_day = "/"
            date_shiyong_year_1 = "/"
            date_shiyong_month_1 = "/"
            date_shiyong_day_1 = "/"
        else:
            date_shiyong_year = date_kaishi_year
            date_shiyong_month = date_kaishi_month
            date_shiyong_day = date_kaishi_day
            try:
                date_shiyong_if = "陆"
                date_shiyong_year_1 = "20"+str(date_shiyong.strftime('%y')) 
                date_shiyong_month_1 = str(date_shiyong.strftime('%m'))
                date_shiyong_day_1 = str(date_shiyong.strftime('%d'))
            except:
                date_shiyong_if = "陆"
                date_shiyong_year_1 = datetime.datetime.strptime(date_shiyong,'%Y-%m-%d').year
                date_shiyong_month_1 = datetime.datetime.strptime(date_shiyong,'%Y-%m-%d').month
                date_shiyong_day_1 = datetime.datetime.strptime(date_shiyong,'%Y-%m-%d').day
        print(date_shiyong_if)
        print(date_shiyong_year)
        print(date_shiyong_month)
        print(date_shiyong_day)        
        print(date_shiyong_year_1)
        print(date_shiyong_month_1)
        print(date_shiyong_day_1)
        #获取合同金额
        print("=====试用合同金额=====")
        money = sheet['E{}'.format(table_row)].value
        print(money)

        if series == "劳动合同":
            wordfile = Document('./' + '劳动合同【模板勿动】.docx')
        elif series == "实习协议":
            wordfile = Document('./' + '实习协议【模板勿动】.docx')
        else:
            print("暂时不支持本合同类型,跳过!")
            continue
        all_paragraphs = wordfile.paragraphs
        for paragraph in all_paragraphs:
            for run in paragraph.runs:
                try:
                    if "奰" in run.text:
                        run.text = run.text.replace("奰", date_kaishi_year)
                    elif "躄" in run.text:  
                        run.text = run.text.replace("躄", date_kaishi_month)
                    elif "罍" in run.text:  
                        run.text = run.text.replace("罍", date_kaishi_day)
                    elif "颣" in run.text:  
                        run.text = run.text.replace("颣", date_zhongzhi_year)
                    elif "薐" in run.text:   
                        run.text = run.text.replace("薐", date_zhongzhi_month)
                    elif "豳" in run.text:
                        run.text = run.text.replace("豳", date_zhongzhi_day)
                    elif "懿" in run.text:
                        run.text = run.text.replace("懿", str(money))
                    elif "鰘" in run.text:
                        run.text = run.text.replace("鰘", date_shiyong_if)
                    elif "翳" in run.text:
                        run.text = run.text.replace("翳", date_shiyong_year)
                    elif "薹" in run.text: 
                        run.text = run.text.replace("薹", date_shiyong_month)
                    elif "虩" in run.text: 
                        run.text = run.text.replace("虩", date_shiyong_day)
                    elif "舄" in run.text:  
                        run.text = run.text.replace("舄", date_shiyong_year_1)
                    elif "衚" in run.text:
                        run.text = run.text.replace("衚", date_shiyong_month_1)
                    elif "衕" in run.text:
                        run.text = run.text.replace("衕", date_shiyong_day_1)                    
                    
                except Exception as e:
                    print("替换文本出错:"+str(e)) 
            
    except Exception as e:
        print("出错:"+str(e)) 
    wordfile.save('./' + f'全部合同/{name}_{series}.docx')
    print(f"{name}_{series}.docx | 另存成功")
input ("Please Enter to close this exe:")

测试:

?

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:30:58  更:2022-07-21 21:31:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 11:43:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码