- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在开发一个员工管理系统,员工可以在其中
现在我要介绍一种方法来处理这些报表中的公共(public)假期和员工缺勤。我在网上看了一些文章比如
但我什么也想不通。我的问题基本上是。
处理员工缺勤的最佳方法是什么?考虑到员工不会在那一天签到这一事实。
如何在报告中添加/指定周末/公共(public)假期?由于 future 更改公共(public)/常规假期很可能会影响我们前几个月的报告。
非常感谢您的帮助!谢谢
最佳答案
很少(如果有的话)数据库将日期范围作为一种数据类型来处理,虽然有一些方法可以计算日期范围交集,但它们很昂贵,并且会导致任何大型数据集被抓取。因此你需要用计算速度来换取数据存储
因此,最好的检查方法是有一个存储日期的表,然后使用该表中的日期将日期范围扩大到范围内的所有日期,结构很简单,只有一个包含日期的列在里面
我不建议使用日期表来跟踪假期,而只是将这些作为“公共(public)假期”类型的缺席包括在内,您可能想在日期表中标记周末(或一周中的哪一天),但不要不要用它来表示一个人那天是否工作,而是有一个 workingPattern 表,上面写着 factory worker
类型的员工周一工作 4 小时,周二工作 6 小时。这将为您提供员工的预期工作时间以及他们一周内预计工作的天数,而不会强制每个员工遵循相同的工作模式
例如
select d.Date, a.*
from absence as a
join dates as d on d.Date between a.StartDate and a.EndDate
然后这将为您提供此人缺席的每个日期,让您可以非常轻松地比较不同的缺席时间
大多数雇佣系统很少允许员工提前一年以上工作,所以我建议有一个每月运行的工作,并使用 (今天 + 12 个月)
和 (今天 + 13 个月)
您也可以删除旧日期,但在执行此操作之前,请确保没有需要查询数据的情况。即,您离开的最晚日期之前的所有内容都已存档。
接下来要记住的是人为因素,人们会忘记上类或下类打卡,因此您需要牢记这一点,并有一份日常工作来寻找没有匹配打卡下类的打卡,反之亦然, 然后您可以标记这些以供人工更正或自动处理它们
一旦你对这两个元素进行排序,你就可以计算每个人每天的工作时间,将其交叉连接到每日缺勤 View ,这将允许你检查不一致,比如日期表上没有打卡或缺勤的日期(未经授权absence)可以通过缺勤表中的适当条目或冲突来纠正,例如有人在他们应该休假的时候上类,你可以再次标记为人工更正或自动处理,比如如果打卡存在则忽略缺勤
你实际如何构建你的系统取决于你的系统需要什么,但如果你不考虑这些因素,这些是会杀死你的系统的常见因素
关于c# - 在员工管理系统中实现假期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38562078/
我希望通过 Workday API 检索 Workday 工作人员(又名员工)Web 配置文件 URL。用例是我正在构建一个聊天机器人来检索用户信息,并且我希望能够深度链接到工作人员(员工)网络配置文
我很困惑我希望员工 ID 是自动生成的前缀格式我知道在 sql server 中触发之前是可能的我正在关注帖子 http://www.aspdotnet-suresh.com/2012/04/set-
我读了一个教程,其中有这个结构: struct { char Name[25]; int Age; float SkillRating; } Employee; defines
我有两个表 employee(name,id) ,其中包含所有员工和另一个表 reader(id,date) ,它给出了日期和哪个员工在场。我如何找到一定范围内的缺席者列表日期? 对于特定日期,我能够
我需要员工 ID 的标准正则表达式,例如 EMP015 015EMP EMP_015 E_015 EMP-015 EMP.VIS EMP/056 基本上它应该允许 . 或 _ 或 - 或 / 在字母数
我是 Angular 的新手,正在使用 Angular 编写代码,我正在观看视频教程。我注意到我的代码中有一些东西,但我无法理解它是如何工作的。 我想知道这段代码是什么意思组件上的“员工:员工 []”
下面从HR角度,来分析员工离职成本,欢迎大家留言讨论。 一个员工离职后留下的坑,并不是再找一个人填上就万事大吉了。 一般来说,核心人才的流失,至少有1-2个月的招聘期、3个月的适应期,6个月的融入期;
我有两个表 Employee 和 Department 此图像显示每个员工的经理。我想编写一个 SQL 查询,为我提供所有主管(经理、经理的经理......)的列表。 我只想要一个列,在给定特定员工时
我想将 ER 图的这一部分转换为关系模型。我们有一个三元关系,它说的是以下内容: 1 位客户将 1 个项目提供给 -> 多个开发人员 1 位客户分配给 1 位开发人员 -> 多个项目 1 个开发人员被
我将要开发一个应用程序,该应用程序将使用一些基于 SOAP 的 Web 服务框架。我做了一些研究,我有点喜欢 Axis2C 框架,但在某些主题中,我发现原来的 Axis2C 实现存在内存泄漏问题,并且
我的 SQL 数据库中有两个表: 公司: ID(自增) 姓名 地址 ... 员工: ID(自增) 公司编号 internal_id 姓名 姓氏 问题是我想要一个与他们所属的公司相关的员工 ID (in
我试图在堆栈溢出和谷歌上找到这个问题的答案,但没有找到。如果有问题需要更正或重复问题,请告诉我。 当我计算员工对象 (emp_obj) 和员工类的大小时,在这两种情况下我都得到了 4 个字节。但是我不
问题 如何在 Angular 员工 component.html 上返回 EmployeeCode ? 示例数据引用表 Code tableName FieldName LabelText
我是 hibernate 新手,正在使用 hibernate 版本 4.3.4 JAR 文件。我正在尝试使用 intelliJ 社区版中的 mySQL 服务器执行简单的 Hibernate 程序。以下
我正在使用 laravel 5.4 和 Yajra Datatable,但我无法使其工作..我遇到了“Uncaught TypeError: $(...).DataTable is not a fun
我想创建一个小型示例应用程序,它可以读取我的员工徽章并将其显示在屏幕上(或者如果我可以复制它就更好了,这样我们就可以使用我们的手机徽章而不是我们的塑料身份证) 几个问题1. 这在技术上可行吗?如果是这
我有一个 person 对象,需要将它存储为 byte[] 并再次检索该 byte[] 并转换为 person 对象 并且 BinaryFormatter 在 Silverlight 中不可用 最佳答
最近开始学习oracle和sql。 在学习的过程中,我遇到了几个问题,我的 friend 在接受采访时被问到这些问题。 SELECT * FROM Employees WHERE NULL IS N
当我执行以下命令来创建分片时: mysqlfabric sharding add_table 1 employees.employees emp_no 我收到以下错误: DatabaseError:
这是我的表格 门票 tic_id, tic_cat tic_priority tic_cus tic_date tic_title tic_
我是一名优秀的程序员,十分优秀!