工资条: TableMaker部分
TableMaker.py
Shawn
11/22/2018
这个类负责生成邮件的内容, 为了方便所以我选择直接用html格式来实现工资表.
为了方便使用所以就直接写成了工具类.
软件本体见 https://blog.csdn.net/weixin_41084236/article/details/84325652
html相关的知识详见这里
@staticmethoddef table(s): # 表格总包装return "<table border=\"1px\">" + s + "</table>"@staticmethoddef tr(s): # 表格行包装return "<tr>" + s + "</tr>"@staticmethoddef td_spin(s, span): # 表格跨列单元格包装return f"<td colspan={span}>" + s + "</td>"@staticmethoddef td(s): # 表格普通单元格包装return "<td>" + s + "</td>"@staticmethoddef p(s): # 段落包装return "<p>" + s + "</p>"
这个部分用来方便实现简便的html转换, 因为要用到的功能很少, 所以就没有调用专业的库.
@staticmethoddef salary_str(row_line_array): # 个人数据包装, 将数组包装成表格的一行info = ""for element in row_line_array:info += TableMaker.td(element)return TableMaker.tr(info)
这个部分用来将输入的个人资料数组转换成工资表的一行
@staticmethoddef table_head_str(date_str, title): # 表头包装, 根据输入的标题、日期输出四行固定格式的表头line3data = ["部门", "姓名", "卡号", "开户行", "入职日期","基本工资", "岗位工资", "合计", "绩效", "工资合计","实际天数", "出勤天数", "缺勤天数", "病假天数", "缺勤","绩效","其他", "合计", "午贴", "交补","其它", "合计", "应发工资", "公司社保", "公司公积金","合计", "个人社保", "个人公积金", "其它", "合计","税前工资", "个税1", "个税2", "实发工资"]line0 = TableMaker.tr(TableMaker.td_spin(title, 34))line1 = TableMaker.tr(TableMaker.td_spin("编制单位:XXX有限公司", 14)+ TableMaker.td_spin(date_str, 12)+ TableMaker.td_spin("单位:元", 8))line2 = TableMaker.tr(TableMaker.td_spin("", 5)+ TableMaker.td_spin("工资部分", 5)+ TableMaker.td_spin("出勤", 4)+ TableMaker.td_spin("应扣项目", 4)+ TableMaker.td_spin("应发", 5)+ TableMaker.td_spin("公司部分", 3)+ TableMaker.td_spin("代缴项目", 4)+ TableMaker.td_spin("", 4))line3 = ""for item in line3data:line3 += TableMaker.td(item)line3 = TableMaker.tr(line3)return line0 + line1 + line2 + line3
这个部分用来生成固定的表头, 由需求决定. 大体上就是用单元格\跨行单元格来拼接.
@staticmethoddef pack_up(name, salary_title, manager, date_str, personal_part): # 表格总输出,根据输入返回完整的表格+前后段落content = ''personal_line = ''table = ''opening = [" " + name + "您好:","感谢你对公司作出的贡献和努力!\n现向您发送" + salary_title + ",公司已代缴个人五险一金、个人所得税!您的工资条明细如下:"]ending = ["如有任何问题或疑问请在3个工作日内与"+manager+"联系,如无则默认为当月工资发放无误。谢谢!","继续加油!"]for _open in opening:content += TableMaker.p(_open)table += TableMaker.table_head_str(date_str, salary_title)for element in personal_part:personal_line += TableMaker.td(element)table += TableMaker.tr(personal_line)content += TableMaker.table(table)for _end in ending:content += TableMaker.p(_end)return content
这个部分是整个类最主要的功能, 根据输入一步输出邮件的内容.
排版为:开头段落+个人工资表+结尾段落
工资条: TableMaker部分相关推荐
- 工资条邮件分发 : 读取excel并单独用email发送
工资条邮件发送软件 v1.0 作者: Shawn Python 3.7 代码地址: https://github.com/RichardFu123/pythonTools/tree/master/Sa ...
- 我帮公司财务写了个“群发工资条”的Python脚本
作者 | 黄伟呢 来源 | 数据分析与统计学之美 介绍 这是一个很好的Python自动化的案例.对于小公司,采用手动方式一个个发送邮件还是可以的.如果一个上百号,上千号,或者更大规模的公司,我们再一个 ...
- 看到抖音上Python工程师晒得工资条,我沉默了......
我是个抖音中毒者 闲来无事就喜欢刷抖音 最近刷到了一个Python工程师的工资条 然后我默默的打开看了 然后我默默的关闭了 我想这个工资算下来好像也不算高 我就去其他渠道搜索了一下相关的Python工 ...
- 用WPS表格轻松设计工资条
用WPS表格轻松设计工资条 出处:PConline [ 2007-06-15 17:58:04 ] 作者:厂商动态 责任编辑:liushaoqun 在任何企业之财务管理中,一定少不了工资计算和设计工资 ...
- python对财务人员的帮助-帮公司财务妹子写了个“群发工资条”的Python脚本!
hi,大家好,我是朱小五 两周前我发了一篇办公自动化的文章,本来决定最近这个月就不发同类型的了. 结果正如你们所见: 因为这真的是一个很好的Python自动化的案例!!! 所以即使打脸也要推荐给大家! ...
- python编程工资-看到抖音上Python工程师晒得工资条,我沉默了......
原标题:看到抖音上Python工程师晒得工资条,我沉默了...... 我是个抖音中毒者 闲来无事就喜欢刷抖音 最近刷到了一个Python工程师的工资条 然后我默默的打开看了 然后就默默的关闭了 如今P ...
- day1 工资条的制作
1.for要与next连用 if的用法 if **** then elseif ***** else***** endif 2.通过简单的录制宏与适当的改写完成工资条的制作Sub 工资条() ' ' ...
- 使用录制宏制作工资条
工资条的制作 用excel普通操作固然能实现对工资条的制作,但我们仍希望通过自动的方法节省时间,提高工作效率,此时,我们可以通过Excel工具栏的开发工具-宏实现表格自动化,下面是使用录制宏的具体代码 ...
- 前有教授被骗千万,后有某重点高校青年教师晒出月薪900的工资条,大学老师工资待遇如何?...
前有清华教授被骗千万,后有某重点高校青年教师晒出月薪900的工资条,大学老师工资待遇如何? 为了了解不同地区的高校老师待遇的差距,云南某大学老师曾在小木虫论坛发出了调查帖.回帖格式为:高校所在省份+学 ...
最新文章
- 进程和线程的区别与联系
- 教你如何运用python实现简单文件读写函数
- 计算机视觉(CV)的算法有哪些,具体都有哪些特点?
- 产品设计体会(9000)人人都是产品经理,系列说明
- 从初创型到独角兽企业,监控架构演进的那些事儿
- openstack mariadb服务启动不了_在CentOS8或者RHEL8系统上体验MariaDB
- 马斯克又开始了,喋喋不休,吊足大家胃口
- 光环大数据python爬虫
- 模拟微博登陆,获取微博cookie
- Mac系统投屏到电视机的方法
- EPC项目设计界面管理研究——以上海国际金融中心项目为例
- 详解如何在Sbo Add-on开发中使用Folder控件
- minitools在win10上安装失败
- TOP 5大数据工具,掌握1个你就是专家
- 架构设计:系统间通信(36)——Apache Camel快速入门(上)
- Dell 3620 加装SSD遇到的磁盘100%的坑
- C++将两个字符串合并在一起
- golang之gorm的事务操作 事务不成功原因
- Oracle DBA-01_Oracle 11G R2 for Solaris 10(Spac)安装实施报告
- 跃居超导和离子阱的量子计算黑马,可编程可扩展的光量子硬件
热门文章
- java实现空心金字塔
- ffmpeg 打开USB摄像头
- 《数据挖掘导论(完整版)》习题答案导航_补档
- Python语法对空格的严格要求
- linux系统vmd软件如何使用,VMD使用
- 批量替换文本中的多组字符串
- 华为Mate30 4G电路原理图
- pycharm中出现Windows PowerShell版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/
- pdf转换成excel转换器哪个好
- Heritrix的介绍与使用