def start(self): try: str_sql = "select * from bouns{}sql".format(self.date) list_need = ['员工编号', '姓名', '身份证号码', '银行账号', '员工子组名称', '部室', '应发奖金', '其他补发', '其他补扣', '实发奖金', '累计收入额', '累计减除费用', '累计子女教育', '累计赡养老人', '累计继续教育', '累计住房贷款利息', '累计住房租金', '累计专项扣除', '累计已预缴税额', '工资已缴税额', '累计应纳税所得额', '累计应纳税额', '累计减免税额', '累计应扣缴税额', '累计应补(退)税额'] df_bouns = pd.read_sql_query(str_sql, self.conn)[list_need] str_file_path, res = QFileDialog.getSaveFileName(self.window, "保存文件至", r"d:\{}.xlsx" .format("河钢乐亭{}奖金明细".format(self.date)), "excel 文件(*.xlsx)") excelFormat(str_file_path, df_bouns, 9, 20) except xlsxwriter.exceptions.FileCreateError: QMessageBox.warning(self.window, "河钢乐亭薪酬管理系统", "同名文件正在打开,请关闭后重新生成。", QMessageBox.Yes) except Exception as e: QMessageBox.warning(self.window, "河钢乐亭薪酬管理系统", "发生错误{}".format(str(e)), QMessageBox.Yes) else: QMessageBox.information(self.window, "河钢乐亭薪酬管理系统", "奖金明细生成完毕!", QMessageBox.Ok)
def start(self): str_file_name = strReturnFileName(self.window, self.date, "报税文件") print(str_file_name) df_wage_detail = self.dfTexCalc() try: if str_file_name: df_wage_detail.to_excel(str_file_name, index=False) excelFormat(str_file_name, df_wage_detail, 9, 12, "A:V") except xlsxwriter.exceptions.FileCreateError: QMessageBox.warning(self.window, "河钢乐亭薪酬管理系统", "同名文件正在打开,请关闭后重新生成。", QMessageBox.Yes) except DataFormatError as e: QMessageBox.information(self.window, "河钢乐亭薪酬管理系统", str(e), QMessageBox.Ok) except Exception as e: QMessageBox.information(self.window, "河钢乐亭薪酬管理系统", "发生未知错误,内容如下{}".format(str(e)), QMessageBox.Ok) else: QMessageBox.information(self.window, "河钢乐亭薪酬管理系统", "报税文件生成完毕!", QMessageBox.Ok)
"住房补贴"] \ + df_budget["工作补贴"] + df_budget["交通补贴"] + df_budget["班中餐"] + df_budget["误餐"] + df_budget[ "中班津贴"] + df_budget["夜班津贴"] \ + df_budget["其他补发"] + df_budget["其他补扣"] + df_budget["取暖费"]) * df_budget["合计"] + df_budget[ "异地津贴"] \ + df_budget["异地差旅费"] + df_budget["外租房津贴"] df_budget["养老保险单位实缴"] = df_budget["应发工资"] * 0.16 df_budget["失业保险单位实缴"] = df_budget["应发工资"] * 0.007 df_budget["工伤保险单位实缴"] = df_budget["应发工资"] * 0.017 df_budget["医疗保险单位实缴"] = df_budget["应发工资"] * 0.07 df_budget["生育保险单位实缴"] = df_budget["应发工资"] * 0.008 df_budget["公积金单位实缴"] = df_budget["应发工资"] * 0.12 df_budget["职工教育经费"] = df_budget["应发工资"] * 0.015 df_budget["补充医疗保险"] = 11 * df_budget["合计"] df_budget["工资总额(含保险)"] = df_budget["应发工资"] + df_budget["养老保险单位实缴"] + df_budget["失业保险单位实缴"] + df_budget["工伤保险单位实缴"] \ + df_budget["医疗保险单位实缴"] + df_budget["生育保险单位实缴"] + df_budget["公积金单位实缴"] + df_budget[ "补充医疗保险"] + df_budget["职工教育经费"] float_workincome_summary = df_budget["应发工资"].sum() float_workincome_summary2 = df_budget["工资总额(含保险)"].sum() print(df_budget.head()) print("工资总额(不含保险)为{}".format(float_workincome_summary)) print("工资总额(含保险)为{}".format(float_workincome_summary2)) import sqlite3 conn = sqlite3.connect("budget") df_budget.to_sql("bdget20202", conn, if_exists="replace") excelFormat("2020年2月份岗位预算表.xlsx", df_budget, 9, 15, "A:BU")