CREATE TABLE `attendance_cfg` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '细胞ID',`month` char(7) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '年月:202111',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=启用1=停用2=删除',`off_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '休息类型:0=单休,1=双休',`days` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '出勤天数:最大31',`off_days` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '休息天数:最大31',`param_json` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '月度配置json',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '操作人ID',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`),KEY `company_id` (`company_id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:细胞考勤配置表';
CREATE TABLE `attendance_check` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`check_id` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '打卡记录id',`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '细胞ID',`userinfo_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '寻木美系统userinfo_ID',`deliuser_id` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '得力系统user_ID',`check_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '打卡时间戳',`check_day` timestamp NULL DEFAULT NULL COMMENT '打卡时间',`check_minute` time NOT NULL DEFAULT '00:00:00' COMMENT '打卡时-分-秒',`check_imei` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '考勤机设备序列号',`check_name` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '考勤机设备名',`check_type` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '得力打卡类型',`check_data` varchar(1024) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '打卡补充数据',`cal` char(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '打卡日历2021-11-9',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=有效1=无效打卡',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '校对人',`editor_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '校对类型10=补卡',`remark` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '校对备注',`created_at` timestamp NULL DEFAULT NULL COMMENT '记录api导出时间',`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`),KEY `userinfo_id` (`userinfo_id`)
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:得力Deli打卡记录表';
CREATE TABLE `attendance_clock` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '细胞ID',`clock_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '打卡次数:0=2次,1=4次',`is_remind` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '打卡提醒:0=不提醒,1=提醒',`is_overtime` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否算加班:0=不计算,1=计算',`reset_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '每月可补卡次数',`work_time` decimal(4,1) NOT NULL DEFAULT '8.0' COMMENT '工作时长8',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=启用1=停用2=删除',`late_min` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '算迟到分钟数',`back_num` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '算旷工迟到分钟数',`clock_json` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '每天打卡时间段json',`can_late` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '晚到/早走几分钟不记为异常:0=不允许,1=允许',`late_str` varchar(512) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '配置:晚到/早走几分钟',`can_free` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '允许晚到晚走/早到早走:0=不允许,1=允许',`free_str` varchar(512) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '配置:自由是上班时间',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '操作人ID',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`),KEY `company_id` (`company_id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:打卡配置表';
CREATE TABLE `attendance_leave` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`userinfo_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '寻木美系统userinfo_ID',`day` char(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '年月:2021-11-11',`day_type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '病假|事假|丧假|产假|调休...1-16款',`leave_time` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '假期时长:1-8小时',`start_time` time NOT NULL DEFAULT '00:00:00' COMMENT '请假开始时间',`end_time` time NOT NULL DEFAULT '00:00:00' COMMENT '请假结束时间',`remark` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '备注',`status` tinyint(2) unsigned NOT NULL DEFAULT '0' COMMENT '状态',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '确认人ID',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`),KEY `userinfo_id` (`userinfo_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:假期-记录表';
CREATE TABLE `attendance_machine` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`imei` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '机器序列号',`name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '机器序名称',`address` varchar(1024) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '考勤机位置',`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '考勤机所属细胞id',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=启用1=停用2=删除',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '操作人ID',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:设备管理表';
CREATE TABLE `attendance_month` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`userinfo_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '寻木美系统userinfo_ID',`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '员工所属细胞id',`month` char(7) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '年月:2021-11',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=正常1=异常2=无效',`work_days` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '实际出勤天数',`work_hours` decimal(6,1) unsigned NOT NULL DEFAULT '0.0' COMMENT '实际工作时长',`except_days` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '异常天数',`later_hours` decimal(6,1) unsigned NOT NULL DEFAULT '0.0' COMMENT '迟到时长',`before_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '早退次数',`before_hours` decimal(6,1) unsigned NOT NULL DEFAULT '0.0' COMMENT '早退时长',`no_work_hours` decimal(6,1) unsigned NOT NULL DEFAULT '0.0' COMMENT '旷工时长',`un_clock_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '漏打卡次数',`reset_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '补卡次数',`out_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '外出次数',`company_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '出差天数',`year_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '年假天数',`leave_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '事假天数',`sick_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '病假天数',`over_work_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '调休假天数',`marry_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '婚假天数',`baby_num` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '产假天数',`daddy_num` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '陪产假天数',`die_num` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '丧假天数',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '确认人ID',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`),KEY `month` (`month`),KEY `userinfo_id` (`userinfo_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:月度报表';
CREATE TABLE `attendance_records` (`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,`attendance_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,`attendance_id` bigint(20) unsigned DEFAULT NULL COMMENT '考试中心id',`describe` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '记录描述',`type` tinyint(4) NOT NULL COMMENT '记录类型,物流,支付等',`subtype` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '子类型',`state` tinyint(3) unsigned DEFAULT NULL COMMENT '可用标志状态',`param` text COLLATE utf8mb4_unicode_ci COMMENT '记录参数',`editor_id` int(11) NOT NULL COMMENT '编辑人ID',`deleted_at` timestamp NULL DEFAULT NULL,`created_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`) USING BTREE,KEY `attendance_id` (`attendance_id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:考勤操作记录表';
CREATE TABLE `attendance_work` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`userinfo_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '寻木美系统userinfo_ID',`company_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '员工所属细胞id',`work_day` char(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '打卡日历2021-11-11',`status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态:0=正常1=异常2=无效',`check_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '当日打卡次数',`reset_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '当日补卡次数',`leave_num` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '缺卡次数',`editor_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '校对人ID',`late_min` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '迟到时长',`before_min` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '早退时长',`unwork_min` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '旷工时长',`over_min` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '加班时长',`record1` time NOT NULL DEFAULT '00:00:00' COMMENT '上午上班时间',`record2` time NOT NULL DEFAULT '00:00:00' COMMENT '上午下班时间',`record3` time NOT NULL DEFAULT '00:00:00' COMMENT '下午上班时间',`record4` time NOT NULL DEFAULT '00:00:00' COMMENT '下午下班时间',`remark` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '备注',`created_at` timestamp NULL DEFAULT NULL,`deleted_at` timestamp NULL DEFAULT NULL,`updated_at` timestamp NULL DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考勤:日历表';

规则:

考勤月份:根据筛选条件的月份统计

员工:员工档案名称

岗位名称:员工档案岗位名称

应出勤天数:计算当月需要出勤的天数(从出勤天数内获取上班天数)

实际出勤天数:应出勤天数-异常天数-事假天数

标准工作时长:根据本月应出勤的天数*打卡设置内的工作时长

实际工作时长:标准工作时长-迟到时长-旷工时长-早退时长

状态:正常(异常天数=0)异常(异常天数≥1)

异常天数:统计员工异常的打卡记录

迟到时长:员工迟到分钟数<120分钟

早退次数:累计员工打卡记录内的早退次数(一天早退两次统计两次)

早退时长:累计员工打卡记录内的早退时长

旷工时长:员工迟到分钟数≥120分钟

漏打卡次数/补卡次数/外出次数/出差天数/年假添加/事假天数/病假添加/调休假天数/婚假天数/产假天数/陪产假天数/丧假天数:根据用户保存的校对类型统计

日报规则:

日期:

员工:打卡用户名称

岗位名称:档案内的岗位名称

标准工作时长:根据本月应出勤的天数*打卡设置内的工作时长

实际工作时长:标准工作时长-迟到时长-旷工时长-早退时长

打卡时段:登录细胞配置打卡时间段

打卡类型:用户配置的每日应打卡次数(格式:1天xx次)

最早打卡时间:用户今日最早打卡时间(00:00:00-23:59:59)

最晚打卡时间:用户进入最后一次打卡时间(00:00:00-23:59:59)

打卡次数:在打卡规则内有效的打卡次数(例:9:00打上班卡,无论员工在9:00及9:00前打了多少次卡,只统计一次上班打卡)

状态:打卡次数等于打卡类型时状态等于“正常”;打卡次数小于打卡类型、实际工作时长<标准工作时长状态为“异常”

迟到时长:根据用户在打卡设置内的配置进行判断,无弹性打卡时超过用户设置的上班时间便开始统计迟到分钟数;有弹性打卡超过用户设置的最晚时间还未打卡便统计迟到分钟数(例:9:00上班,可晚30分钟,员工在31打卡时,迟到分钟数为31分钟)

早退时长:根据用户咋打卡设置内的配置判断。无弹性打卡时,打卡时间早于用户设置的下班时间视为早退;有弹性打卡时,打卡时间下班时间相差超过用户设置的最早分钟数,便视为早退(例:18:00下班,可早20分钟打卡,用户在17:32打卡,早退分钟数为28分钟)

缺卡次数:打卡类型-打卡次数-补发次数

补卡次数:根据用户在今日校对时选择的打卡时间校对方式进行统计(例:用户在今日一个时间段内做了两次补卡操作,仍算做补卡1次)

A打卡记录(9:33 12:10 18:31)
C打卡记录(9:33 11:55 12:01   14:04 18:31)
D打卡记录(9:33 11:55 14:04 18:31)
E打卡记录(9:33 11:45 12:01   18:44 19:31)
F打卡记录(8:44 12:01)
G打卡时间(7:56 8:45 11.45 11:59 13:23 16:43 18:43  20:21)
H打卡时间(8:56)
I打卡时间(18:58)
J打卡时间(8:55 12:01 12:44 13:44 18:56)
K打卡时间(8:33 12:03 18:31 18:59)如何找出有效的4次打卡记录
子公司有的是打卡2次
有的4次
2021年11月20日18:03:59

php开发考勤系统、OA系统简易版Mysql数据库设计相关推荐

  1. oa java开发_[原创]OA系统买JAVA开发的还是PHP开发?

    [原创]OA系统买JAVA开发的还是PHP开发? 买OA办公系统的时候,发现OA的开发语言有很多种,有些是PHP的.有些是JAVA的等等.而对于不同的开发语言对OA系统的应用效果有什么影响,究竟哪一种 ...

  2. linux中安装多个mysql_liunx系统下安装多个MySql数据库并做主从配置

    在网上搜索了很多资料,都没有看到像样的文档,思路不是很清晰,对第一次安装的朋友来说较为困难,经过长时间的安装尝试和查询网上零碎的知识点,终于成功的完成Linux系统下多MySql数据库安装和主从配置, ...

  3. 论坛系统mysql数据库设计_BBS论坛系统的设计与实现(MySQL)

    BBS论坛系统的设计与实现(MySQL)(任务书,开题报告,中期检查表,文献综述,外文翻译,毕业论文12000字,程序代码,MySQL数据库) 论文主要介绍了BBS论坛系统的设计和实现.设计包括数据库 ...

  4. 快速开发协同办公OA系统 让企业管理提质增效

    OA系统是一个企业除了生产控制之外的一切信息处理与管理的集合.对企业高层领导来说,OA系统是决策支持系统.它运用科学的数学模型,结合企业内部/外部的信息,为企业领导的决策提供参考和依据:对于企业中层管 ...

  5. 引迈JNPF敏捷开发框架的开发运用之OA系统开发

    JNPF敏捷开发框架的第三个重量级运用是OA系统的开发.OA系统即,企业办公自动化系统,使公文在流转.审批.发布等方面提高效率,实现办公管理标准化和信息规范化,降低企业运行成本.那如何打造一个符合企业 ...

  6. 基于springboot开发的医院OA系统

    该项目是根据FEBS-Shiro 2.0(链接:https://github.com/febsteam/FEBS-Shiro) 二次开发的,用于学习,请勿用于商业用途! 项目名称:医院OA系统 | B ...

  7. 云服务器oa系统,oa系统放到云服务器云服务器

    oa系统放到云服务器云服务器 内容精选 换一换 精简视图提供了云服务器资源概况和状态的可视化统计结果,帮助您直观的了解云服务器资源.在精简视图中,您可以快速获取弹性云服务器基本信息.登录信息.配置信息 ...

  8. 服务器中搭建OA系统,oa系统搭建在云服务器上

    oa系统搭建在云服务器上 内容精选 换一换 一块共享云硬盘不建议同时挂载至不同类型操作系统的云服务器上使用,不同类型的操作系统指Windows.Linux等.一块共享云硬盘同时挂载至同一种操作系统不同 ...

  9. 考试系统mysql数据库设计_驾校理论考试系统之数据库设计一

    应用开发工具:Microsoft Visual Studio 2010 旗舰版 - 简体中文 sp1-- Microsoft Visual C# 2010 应用程序:文档处理:Microsoft Of ...

最新文章

  1. 更改zabbix-server的端口
  2. Core篇——初探Core的认证,授权机制
  3. 解决VS2013卡顿现象,很有用
  4. python模块安装(xgboost)
  5. nodejs核心模块fs删除文件_用 NodeJS 重命名系统文件
  6. git 应用 resetrevert
  7. Centos 7 Puppet之foreman介绍安装测试
  8. CentOS 7 安装OpenOffice并实现WordToPDF(Java调用)
  9. 手机验证码免费10条\java、C#、html....
  10. Postman测试导出导入Excel教程
  11. ASP.NET 安全认证(二)——灵活运用 Form 表单认证中的 deny 与 allow 及保护 .htm 等文件(转)...
  12. 小白学统计|面板数据分析与Stata应用笔记(一)
  13. Spring Cloud如何可用于微服务架构
  14. PMI权限(授权)管理基础设施
  15. 定积分的基本性质5 区间可加性
  16. 用批处理文件实现同步到个人时间服务器,局域网内时间同步net time的使用
  17. 利用单片机最小系统外接DS12C887 在LCD1602上显示实时时钟
  18. asu在线硕士计算机课程,亚利桑那州立大学将在中国推出在线硕士学历项目 纯中文授课...
  19. 总结关于webpack
  20. TL431做比较器该如何理解?

热门文章

  1. Android开发app实现发送短信功能
  2. 基于JAVA高铁在线购票系统计算机毕业设计源码+数据库+lw文档+系统+部署
  3. 小米应用市场隐私政策
  4. Java黑皮书课后题第3章:*3.31(金融:货币兑换)编写程序,提示用户输入从美元到人民币的兑换汇率,然后提示用户输入0表美元兑人民币、1表人民币兑美元。继而提示用户输入美元数量或人民币数量,兑换
  5. Unity 使用NVIDIA FleX for Unity插件实现制作软体、水流流体、布料等效果学习教程
  6. L3 Sequence
  7. 华为m40怎么升级鸿蒙,华为再亮剑,这四款手机将支持升级鸿蒙系统,网友:够给力!...
  8. spring boot校园二手销售网站 毕业设计源码161417
  9. 美国网站直接shopping之经验总结
  10. vcs+verdi/Debussy