首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建高级管理/人员轮值

创建高级管理/人员轮值
EN

Stack Overflow用户
提问于 2015-10-02 16:54:03
回答 1查看 1.4K关注 0票数 1

我知道这个地方是用来上传可能需要帮助的代码,不过我希望你不会介意帮忙,因为我不知道从哪里真正开始这段代码。您是专家,我是一个新手,需要在未来的编码帮助。如果有一个章节针对这类事情,我会很高兴重新发布。

情况如下:

我正在为我的员工开发一个高级管理后端面板,我目前的想法是使用MySQLi数据库来创建staff rota,并将其显示在一个简单的日历中,比如aPanel上的表中。

现在,高级部分是工作人员可以在轮值上发布的时间/天内单击"Clock In""Clock Out"

该系统将不让工作人员Clock In,除非他们在轮值在一天中的那个时间。然后,我可以进入该小组的一个管理部门,以便我可以查看该工作人员因缺勤或迟到等而被安排上班的时间。给他们几个小时内记录下来的时间。

也许一些额外的功能是,他们会在下班后自动超时,或者系统会记录加班等等?

我不知道我将如何去创建这样的系统,如果真的有可能的话,如果有人对这个想法有任何建议/提示/例子,我会感激任何帮助!

万事如意!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-02 17:36:51

您的系统必须由以下几个部分组成:

  1. 数据库存储-为系统提供所有必要的信息,员工时间表,时刻表条目,用户信息等等。听起来你已经有了很多这样的信息,尽管它可能需要一些调整来达到你的目的。
  2. 工作人员外派/管理界面-系统允许管理员或有适当权限的人为工作人员分配日程,向系统添加新工作人员等。
  3. 时间锁定前端-工作人员将使用这个登录查看他们的时间表,并进入/退出。
  4. (可能)自动监控系统--如果您希望系统自动监视活动员工,并在他们的日程安排结束时给他们计时,您将需要一个重复的任务,一个脚本,每X分钟运行一次,并将所需的工作人员排出时间。

这不是一个快速和简单的项目,但也不是很复杂。您需要避免的主要缺陷是自己编写代码的诱惑。一开始可能是个好主意,你只需要几个硬编码的页面,对吗?不过,相信我,这个过程最终总是会让人头疼。找到一个可作为应用程序基础的框架。这是一个更多的学习,但您将能够更多地关注于构建您的应用程序,而不是重新发明车轮。

对于PHP,我强烈推荐塞福尼。它使用教条作为它的ORM,这将使处理数据交互变得更加容易,以及细枝模板,这比直接混合PHP/HTML要好得多。Symfony有很好的文档和一些教程。(以及一个活动堆栈溢出标记。)

不管您做了什么选择,最好的做法就是选择一个框架作为应用程序的基础,这将使所有的小设计决策变得更加容易。(对于任何被广泛使用的框架来说,错误发生的几率也较低。)

你的个人问题有点模糊,不能直接回答,没有系统在他们身边。不过,我会尽量给他们一些一般性的建议。

我正在为我的员工开发一个高级管理后端面板,我目前的想法是使用MySQLi数据库来创建staff rota,并将其显示在一个简单的日历中,比如aPanel上的表中。

您可能想看看全历,一个很好的可定制的JS日历。

现在,提前的部分是工作人员可以在轮值上发布的时间/天数中单击"Clock In“或"Clock Out”。

当员工登录到应用程序时,应用程序将加载该员工的日程安排。如果它们有当前(或即将到来的)任务,则以形式显示时钟。表单中的时钟在提交时将将员工状态更改为时钟,并将时间戳插入到与员工关联的时隙日志中。如果员工当前处于时钟状态,则显示一个时钟退出表单(可能带有换档笔记),这样做也是一样的,只是将状态切换为Clocked。

该系统将不让工作人员进入,除非他们在一天中的那个时间上轮值。

在提交表中的时钟后,很容易检查这类事情。如果他们还没来得及打卡,那就犯个错误。(请注意,千万不要假设提交前的验证是足够的.)也就是说,不要依赖于这样一个事实:只有当员工能够按时上班时,才会出现计时表。

然后,我可以进入该小组的一个管理部门,以便我可以查看该工作人员因缺勤或迟到等而被安排上班的时间。给他们几个小时内记录下来的时间。

在管理部分,您可以通过获取给定日期范围内的给定员工的所有时间锁定日志、工作总时数以及与预期的计划进行比较来创建报告。

也许一些额外的功能是,他们会在下班后自动超时,或者系统会记录加班等等?

让脚本每X分钟运行一次(较低的时间将具有更高的分辨率,但消耗更多的资源)作为服务器上的计划任务,检查员工中的每一个时钟,并锁定那些不应该再被锁定的脚本。如果您正在使用Symfony,我建议为该工作创建一个自定义控制台命令

希望这足以让你开始工作。请随时带着您可能遇到的更多具体问题回来。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32912108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档