需求如下:
某考核系统,考核个人,需要采集xxx,xxx,xxx,xxx等七八项其他模块业务数据(包括参与,提交,联名等方式),计算方式包括:
基础得分相加;
多人共同拥有平均得分;
某些项按给定的工效计算分式计算得分;
某些项按参与次数计算得分
某些项按区间计算得分;
某些项有封顶得分等。
某些条件下不参与计分等。

计算结果要求有分页,排序功能。并且导出计算依据。
主机复杂点:
1:业务数据分布广,要跟各模块负责人去沟通怎么取数据。而且只取必要的少量数据。不能胡子眉毛一把抓
2:计分规则多变,针对不同的数据不有同的计分规则。
3:后期又要扩展根据部门考核,扩展问题。
如图所示:

计算依据:




**

代码结构图:

类结构(水平有限,不晓得对不对,哈哈,画得少):

调用时序图:

总结:
虽然只是一个接口,但花费了很多精力去弄。主要是实现了原始计算数据加载、各类分值配置和计分规则、得分计算三大组件相互之间的解耦,为后续扩展和修改打下了基础。设计上,采用了策略模式、建造者模式、门面模式等。

一个非常复杂的某考核系统计算考核得分代码层设计相关推荐

  1. 连载:告诉你如何设计一个日访问量千万级别的系统,谈oracle的高级设计和开发(2)...

    接下来正式开篇讲解在实际中大型项目中oracle的高级设计及开发的内容,以下讲解的oracle内容以及示例程序都是基于oracle11R2. 为了防止脱离实际地搞一堆理论,本人尽量用实际工作中的例子来 ...

  2. 【系统】【winget】从零开始配置一个开发用的 Windows 11 系统的电脑 - winget 代码终端安装软件

    文章目录 如何将一台全新电脑配置为程序员开发使用 一.系统(仅供参考,可不看) 1. 使用 Ventoy 制作系统U盘 2. 下载微PE镜像到U盘里 3. 下载 Win11 官方系统镜像到U盘里 4. ...

  3. 集成计算引擎在大型企业绩效考核系统的应用方案

    前言 大型企业的绩效考核系统一直是一个难于稳定的系统,总是面临着没完没了的需求变化.就其原因主要是软件架构僵化,业务逻辑与数据耦合度过高,造成需求的任何一点修改,都要对整个应用进行伤筋动骨的改动.而一 ...

  4. Java设计一个简化的教师年终业绩考核系统

    利用JAVA设计一个简化的教师年终业绩考核系统 /* 该系统包括一个接口和三个类:一个接口Calculateable具有一个抽象方法getGrade(), 用于根据职工的工作量分数计算职工的业绩等级数 ...

  5. JSP实现银柜台业务绩效考核系统

    绩效考核管理系统采用B/S结构.结合网络数据库开发技术来设计本系统.开发语言采用JSP,数据库使用Mysql数据库.完成以下基本功能: 本系统是一个独立的系统,用来解决绩效考核信息的管理问题.采用JS ...

  6. [含lw+源码等]javaweb银行柜员业务绩效考核系统

           博主介绍:✌在职Java研发工程师.专注于程序设计.源码分享.技术交流.专注于Java技术领域和毕业设计✌ 项目名称 [含lw+源码等]javaweb银行柜员业务绩效考核系统 演示视频 ...

  7. 有关绩效考核系统的一些想法

    1. 绩效考核系统应该提供补填考核表的功能.比如,针对季度考核,当前已经是2008年3季度了,那么有些员工可能由于特殊原因不能还没有填写其2008年2季度考核表,造成无法对其进行考核,这里应该可以独立 ...

  8. 毕业设计 - 银行柜员业务绩效考核系统的设计与实现【源码+论文】

    文章目录 前言 一.项目设计 1. 模块设计 系统功能模块: 2. 实现效果 二.部分源码 项目源码 前言 今天学长向大家分享一个 web项目: 银行柜员业务绩效考核系统的设计与实现 一.项目设计 1 ...

  9. MVC 银行柜员业务绩效考核系统的设计与实现 毕业设计-附源码02133

    摘要:当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料.能源.信息)之一.信息是管理的基础,是进行决策的的基本依据.在一个组织里,信息己作为人力.物力. ...

最新文章

  1. dataframe,python,numpy 问题索引1
  2. XML在JAVA项目中的作用
  3. 使用Jupyter notebook,按下ctrl+enter后,一直出现In[*]呢?
  4. C语言中printf输出特殊字符(“%d“或者“\n“)
  5. 设计模式 工厂模式比较
  6. 如何用敏捷搞垮一个IT团队?
  7. ofo 彻底凉凉。。。
  8. linux界面右键无效,在linuxtkin中运行GUI时,右键单击菜单消失得太快
  9. 挑战程序设计竞赛2:算法与数据结构(电子书与代码)
  10. 三次Hermite插值解析
  11. SylixOS中AHCI驱动框架分析
  12. 【机器学习】【决策树】C4.5算法,详解+python代码实现
  13. 趋势判研:基于Web3.0的智能生态体——保险科技生态建设...
  14. VMware vCenter Server 7.0U3
  15. 民间秘术——各类求仙方法
  16. 计算机控制室防火危险级为,8.2 空气调节 - 【已作废】火力发电厂与变电站设计防火规范 GB50229-2006 - 消防规范大全 - 消防资源网!...
  17. 视频如何转换成mp3
  18. Universal Serial Bus (USB) - 通用串行总线
  19. UNIX环境高级编程(第三版 源码及编译好的静态库文件)
  20. 国家高新技术企业的好处

热门文章

  1. IDEA使用archetype创建Maven项目(只有两个archetype)
  2. 存储文件照片哪个服务器好,照片记录的美好时光,用NAS存储吧
  3. 程序员圈 内的 鄙视链
  4. 第12周项目2—摩托车继承自行车和机动车
  5. 卸载计算机更新程序包,Win7清除Win10更新安装包的方法
  6. 什么是语音通知 / 语音短信 / 语音外呼?
  7. jupyter 中重新 import 模块
  8. OkHttp全解析(一)——基本概念与使用方法
  9. java qq邮箱服务器端口_java qq 邮箱发送错误以及端口号
  10. Android如何设置顶部状态栏颜色(主题)