科技项目管理系统(已完成)
¥20000
具体需求联系甲方
1 业务功能
科技项目管理系统业务功能主要包括公告与通知、重大科
技项目需求建议、科技项目管理(项目申请、任务书签订、信息
变更、项目验收、资金管理)、科技成果管理、科技团队与人员
信息管理、统计分析、质量控制等。
1.1 公告与通知
1.1.1 公告与通知创建功能
——根据业务管理部门要求,创建年度或项目实施过程管
理的业务公告与通知,赋予公告与通知唯一标识符,建立包含公
告与通知基本信息(包含公告与通知标题、主要内容、涉及项目
列表、附件文件、通知扫描文件、起止时间、发布人、发布时间)。
确保涉及项目列表表要与科技项目唯一标识符相对应。
——录入时要提供时间数据校验功能。
1.1.2 公告与通知修改功能
——对公告与通知进行修改,修改时要提供逻辑校验功能,
并提供修改日志记录功能。审核通过发布后的公告与通知不能
修改,只有浏览功能。
——对特定的公告与通知进行删除操作,删除时要提供“删
除确认”功能,并提供删除日志记录功能;
——删除时只做删除标志,而不做真正的物理删除;
——审核通过后的公告与通知只能由最上级机构进行删除。
1.1.3 公告与通知浏览功能
——对特定的公告与通知进行查看浏览,涉及业务办理的
的能转跳到相应业务模块。
1
1.1.4 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.1.5 公告与通知发布审核与反馈
提供公告与通知发布审核与反馈功能。审核不通过时要提
供相应原因的录入功能,并能将此原因进行反馈。
1.2 重大科技项目需求建议
包括重大科技项目需求建议入库管理和年度重大科技项目
需求建议单填报与入库审核审核。
1.2.1 重大科技项目建议单创建功能
——根据年度重大科技项目需求征集通知要求,在规定时
间内,业务参与部门填报重大科技项目需求信息,创建年度重大
科技项目建议单,赋予年度重大科技项目建议单唯一标识符,建
立包含年度重大科技项目基本信息(包含重大科技项目名称、主
要涉及领域、研发时限、战略意义、关键科技问题、国内外研究
现状、工作基础、研究目标与预期成果、研发建议、预计经费预
算)。
——录入时要提供时间数据校验功能。
——录入时可提供国内外研究现状中的主要参考文献检查
功能。记录文献索引数据网站引用地址,并对其进行可达性验证。
1.2.2 重大科技项目建议单修改功能
——对重大科技项目建议单进行修改,修改时要提供逻辑
校验功能,并提供修改日志记录功能。征集时间外重大科技项目
建议单不能修改,只有浏览功能。
——对特定的重大科技项目建议单进行删除操作,删除时
2
要提供“删除确认”功能,并提供删除日志记录功能;
——删除时只做删除标志,而不做真正的物理删除;
——历史年度重大科技项目建议单只能由最上级机构进行
删除。
1.2.3 重大科技项目建议单浏览功能
——对特定的重大科技项目建议单进行查看浏览。
1.2.4 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.2.5 重大科技项目建议单入库审核与反馈
——提供重大科技项目建议单入库审核与反馈功能。入库
审核要提供审核意见情况的录入功能,并能将此原因进行反馈。
——已经审核批准入库项目不再提供修改功能。
1.2.6 重大科技项目建议单内容相似度 AI 检测功能
——提供重大科技项目建议单研发建议内容的相似度 AI 检
测功能,对检测结果进行反馈。
1.2.7 需求征集表统计报表
——对重大科技项目建议单进行统计报表,提供统计报表
结果的导出功能。
1.3 年度科技项目申请书
1.3.1 科技项目申请书创建功能
——根据业务需求,创建年度科技项目申请书,赋予申请书
唯一标识符,建立包含申请书基本信息(如项目名称、项目负责
人、研究领域、项目计划书、预算等)。录入时要提供业务逻辑
校验功能,确保数据的准确性和完整性
3
1.3.2 科技项目申请书修改功能
——对科技项目申请书进行修改,修改时要提供逻辑校验
功能,并提供修改日志记录功能。审核通过后的申请书不能修改,
只有浏览功能。
1.3.3 科技项目申请书删除功能
——对特定的科技项目申请书进行删除操作,删除时要提
供“删除确认”功能,并提供删除日志记录功能;删除时只做删除
标志,而不做真正的物理删除;审核通过后的申请书只能由最上
级机构进行删除。
1.3.4 科技项目申请书浏览功能
——对特定的科技项目申请书进行查看浏览。
1.3.5 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.3.6 科技项目申请书审核与反馈
——提供科技项目申请书审核与反馈功能。审核不通过时
要提供相应原因的录入功能,并能将此原因进行反馈。审核通过
的申请书不再提供修改功能。
1.3.7 科技项目立项通知创建功能
——根据通知模板,结合预通过科技项目名单生成年度项
目通过通知,赋予通知唯一标识符,通知内容包含项目名称、负
责人、立项时间等。
1.3.8 科技项目申请预通过名单浏览
——提供科技项目申请预通过名单的浏览功能,允许用户
查看已预通过项目的详细信息。
4
1.3.9 科技项目申请提醒功能
——提供科技项目申请提醒功能,并能查询科技项目申请
提醒信息,提醒内容包括申请截止时间、审核进度等。查询结果
提供查看和导出功能。
1.4 年度科技项目任务书
1.4.1 科技项目任务书创建功能
——根据业务需求,创建年度科技项目任务书,赋予任务书
唯一标识符,建立包含任务书基本信息(如任务目标、研究内容、
计划进度、经费预算等)。录入时要提供业务逻辑校验功能。
1.4.2 科技项目任务书修改功能
——对科技项目任务书进行修改,修改时要提供逻辑校验
功能,并提供修改日志记录功能。审核通过后的任务书不能修改,
只有浏览功能。
1.4.3 科技项目任务书删除功能
——对特定的科技项目任务书进行删除操作,删除时要提
供“删除确认”功能,并提供删除日志记录功能;删除时只做删除
标志,而不做真正的物理删除;审核通过后的任务书只能由最上
级机构进行删除。
1.4.4 科技项目任务书浏览功能
——对特定的科技项目任务书进行查看浏览。
1.4.5 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。——查询结果要支持翻页和排序功
能。 ——查询结果支持导出功能。
1.4.6 科技项目任务书审核与反馈
——提供科技项目任务书审核与反馈功能。审核不通过时
要提供相应原因的录入功能,并能将此原因进行反馈。审核通过
5
的任务书不再提供修改功能。
1.4.7 科技项目任务书签订登记创建
——根据任务书签订相关通知,业务办理部门上传盖章后
的扫描电子版文件,业务处室接收纸质任务书进行受理登记,并
赋予签订登记唯一标识符。
1.4.8 科技项目任务书签订登记查询
——提供签订登记查询功能,用户可以按多种条件组合查
询已登记的任务书签订信息。
1.4.9 科技项目任务书签订通知内容生成
——根据任务书签订登记信息,生成任务书签订通知,通知
内容包括项目名称、负责人、签订日期等,并赋予通知唯一标识
符。
1.4.10 科技项目任务书提醒功能
——提供科技项目任务书填写、修改、提交、逾期签订等提
醒功能,并能查询科技项目任务书提醒信息,查询结果提供查看
和导出功能。
1.5 变更管理
——提供科技项目变更功能,针对项目负责人变更/项目名
称变更/研究内容变更/任务延期/其他情况变更的申请和审批。
1.5.1 科技项目变更申请创建功能
——根据项目推进和具体实际情况,创建项目变更申请单,
赋予申请单唯一标识符,建立包含申请单基本信息(如项目编号、
项目名称、承担单位、项目负责人及联系方式、申请变更事项、
变更情况说明、附件、变更事项批复等)。录入时要提供业务逻
辑校验功能。
1.5.2 科技项目变更申请修改功能
——对科技项目变更申请进行修改,修改时要提供逻辑校
6
验功能,并提供修改日志记录功能。审核通过后的变更申请单不
能修改,只有浏览功能。
1.5.3 科技项目变更申请删除功能
——对特定的科技项目变更申请进行删除操作,删除时要
提供“删除确认”功能,并提供删除日志记录功能;删除时只做删
除标志,而不做真正的物理删除;审核通过后的变更申请不能进
行删除。
1.5.4 科技项目变更申请浏览功能
——对特定的科技项目变更申请进行查看浏览。
1.5.5 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.5.6 科技项目变更申请审核与反馈
——提供科技项目变更申请审核与反馈功能。审核不通过
时要提供相应原因的录入功能,并能将此原因进行反馈。审核通
过的变更申请不再提供修改功能。
1.6 中期评估报告
1.5.1 科技项目中期评估任务单创建功能
——按照项目中期评估要求,创建项目中期评估任务单,赋
予中期评估任务单唯一标识符,建立包含中期评估任务单基本
信息(如项目编号、项目名称、承担单位、项目负责人及联系方
式、中期评估报告、附件等)。录入时要提供业务逻辑校验功能。
1.5.2 科技项目中期评估任务单修改功能
——对科技项目中期评估任务单进行修改,修改时要提供
逻辑校验功能,并提供修改日志记录功能。审核通过后的中期评
7
估任务单不能修改,只有浏览功能。
1.5.3 科技项目中期评估任务单删除功能
——对特定的科技项目中期评估任务单请进行删除操作,
删除时要提供“删除确认”功能,并提供删除日志记录功能;删除
时只做删除标志,而不做真正的物理删除;审核通过后的中期评
估任务单不能进行删除。
1.5.4 科技项目中期评估任务单浏览功能
——对特定的科技项目中期评估任务单进行查看浏览。
1.5.5 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.5.6 科技项目中期评估任务单审核与反馈
——提供科技项目中期评估任务单审核与反馈功能。审核
不通过时要提供相应原因的录入功能,并能将此原因进行反馈。
审核通过的中期评估任务单不再提供修改功能。
1.5.7 科技项目中期评估任务提醒
——提供科技项目中期评估任务填写、修改、提交、逾期等
提醒功能,并能查询科技项目中期评估任务提醒信息,查询结果
提供查看和导出功能。
1.7 项目验收申请
1.7.1 项目验收申请单创建功能
——根据项目进度,业务部门创建项目验收申请单,赋予申
请单唯一标识符,录入时要提供业务逻辑校验功能,确保数据的
准确性和完整性。
1.7.2 项目验收申请单修改功能
8
——对项目验收申请单进行修改,修改时要提供逻辑校验
功能,并提供修改日志记录功能。提交审核后的申请单不能修改,
只有浏览功能。
1.7.3 项目验收申请单审批与反馈功能
——提供项目验收申请单的审批与反馈功能,审批不通过
时要提供相应原因的录入功能,并能将此原因进行反馈。
1.7.4 项目验收申请单浏览功能
——对特定的项目验收申请单进行查看浏览。
1.7.5 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.7.6 项目验收通知内容生成
——根据审核通过的验收申请单生成项目验收通知,通知
内容包括项目名称、负责人、验收日期等,并赋予通知唯一标识
符。
1.8 项目评审会议组织
包括立项评审会、开题评审会、验收评审会等在内的有关科
技项目管理相关的会议组织管理。创建会议事项、抽取专家、上
传会议记事等。
1.8.1 会议创建功能
——根据项目评审会需求,业务部门创建项目评审会议单,
赋予会议单唯一标识符,会议单内容包括会议时间、地点、参会
人员、评审项目清单、会议纪要等。
1.8.2 会议修改功能
——对项目评审会议单进行修改,修改时要提供逻辑校验
9
功能,并提供修改日志记录功能。会议单提交审核后不可修改,
只有浏览功能。
1.8.3 会议删除功能
——对特定的项目评审会议进行删除操作,删除时要提供
“删除确认”功能,并提供删除日志记录功能;删除时只做删除标
志,而不做真正的物理删除。
1.8.4 审批与反馈功能
——提供会议单审批与反馈功能,审批不通过时要提供相
应原因的录入功能,并能将此原因进行反馈。
1.8.5 浏览功能
——对特定的项目评审会议单进行查看浏览。
1.8.6 查询与导出功能
——可以按照多种查询条件组合方式进行数据检索和展示,
支持精确查询和模糊查询。
——查询结果要支持翻页和排序功能。
——查询结果支持导出功能。
1.8.7 项目评审通知内容生成功能
——根据评审申请审核通过的评审会议单生成项目评审通
知内容,并提供专家参会通知邮件发送功能。
1.8.8 会议纪要上传功能
——根据评审会召开情况,编写会议纪要文件并提供扫描
文件的上传功能。
1.9 项目验收后成果提交
1.9.1 成果提交功能
——项目验收通过后,业务部门负责提交项目成果,系统应
提供成果上传、描述填写、分类归档功能,并确保所有成果与项
目标识符一一对应。
10
1.9.2 成果存档功能
——项目提交流程结束后,对项目成果按照科技档案成果
存档要求,系统提供存档操作功能。
1.10 科技成果管理功能
提供对论文、专著、知识产权(著作权、专利权、商标权、
商业秘密权)等科技成果进行管理。
创建、修改、删除、浏览、查询与导出、分析统计。
1.11 推广应用管理功能
系统提供对推广应用情况、经济效益情况、奖励情况进行管
理。
1.12 专家库管理功能
库创建和专家人员信息管理
创建、修改、删除、浏览、查询与导出、部门评价、参会统
计。
1.13 评审会议专家抽取
抽取任务创建、确认、调整、取消、浏览、查询与导出、审
核与反馈。
1.13.1 参会专家名单抽取功能
——根据评审项目需求,系统随机抽取参会专家名单,并赋
予每位专家唯一标识符。通过预留的手机号或邮箱发送短信通
知或邮件通知。
1.13.2 专家名单确认功能
——业务部门对抽取的专家名单进行确认,经确认后的名
单不可更改。
11
1.14 项目资金管理功能
项目资金拨付与收回、项目资金使用登记、项目资金未使用
提醒。
1.15 统计分析功能
1.15.1 公告与通知查看统计与执行率分析功能
——对公告与通知已阅读情况进行统计,并比对该公告或
通知所涉及的操作是否已经执行相应的业务处理情况,反馈执
行率与分析结果。
1.15.2 科技项目状态统计
——对所有科技项目的状态进行统计分析,包括立项、在研、
结题等阶段。生成项目状态分布报表,并提供趋势分析,支持按
时间、项目类型、研究领域等维度进行统计。
——可视化展示:生成项目状态分布的条形图、饼图等统计
图表,支持按区域、部门等维度查询和展示。应支持多维度、多
形式的报表。
1.15.3 项目成果统计
——对科技项目的成果产出情况进行统计分析,包括论文
发表、专利申请、技术转移等。生成成果统计报表,并进行趋势
分析。
——成果分布统计:按照成果类型、项目类别、年度等维度,
提供统计报表,并支持趋势比较分析。
——成果展示:按研究领域、项目负责人等多维度生成成果
分布的可视化图表,提供查看和导出功能。
1.15.4 资金使用情况统计
——对科技项目的资金使用情况进行汇总和分析,生成资
金使用统计报表。
——资金使用分布:按照资金类型、项目阶段、部门等维度
12
生成资金使用情况的统计图表。
——趋势分析:对比不同年度和项目的资金使用情况,提供
趋势分析报表和可视化展示功能。
1.16 质量控制功能
1.16.1 数据逻辑校验
——对录入的科技项目数据进行完整性和准确性的逻辑校
验,确保数据符合业务规则。
——校验内容包括项目名称重复、关键技术重复、研究目标
冲突等,确保数据的一致性和合理性。
1.16.2 项目查重功能
——提供项目查重功能,检查项目名称、负责人、研究内容
等是否重复。
——可查询不同年度和部门内的重复项目,并支持导出查
重结果。
——查重结果的历史记录应可追溯,支持误操作的恢复。
1.16.3 数据质量管理统计
——对各单位的项目数据质量进行统计分析,包括数据录
入的完整性、及时性和准确性。
——生成数据质量统计报表,并提供趋势分析,确保项目数
据的高质量管理。
2 通用功能
2.1 用户认证与权限管理
——系统提供用户的创建、修改、删除、查询和导出功能。
——角色管理功能:支持角色的创建、修改、删除和查询,
并根据不同角色分配操作权限。
——用户变更操作权限时,系统应记录相关信息,并提供操
作日志查询功能。
13
——系统采用实名制管理,支持用户名/密码认证方式,并
具有相应的安全策略。
2.2 部门管理
——系统提供下级部门的创建、修改、删除、查询和导出功
能。
2.3 日志管理
——系统提供完整的业务办理操作和系统维护日志记录功
能,并支持对日志的回滚操作。
2.4 数据字典管理
——系统提供数据字典的版本管理功能,确保数据字典的
更新与升级保持业务连续性和数据完整性。
——数据字典的更新日志应可查询,并支持回滚到历史版
本。
2.5 数据存储、备份与恢复
——数据存储:系统应具备重要数据的加密存储功能,并保
留更改痕迹。
——数据备份:提供自动备份和手动备份功能,重要数据需
实现异地备份。
——数据恢复:系统支持数据恢复功能,包括自动恢复和手
动恢复,以确保数据的安全性和可用性。
2.6 系统帮助与操作手册
——系统提供全面的帮助功能和详细的操作手册,支持用户
快速掌握系统使用方法。
3 数据接口功能
3.1 与公共平台的数据交换接口
——实现与管理公共平台的数据交换功能,支持数据的抽
取和推送,确保与外部系统的无缝对接。
14
3.2 与科技系统的数据交换接口
——系统支持与院所信息管理系统等的接口对接,满足科
技项目数据的互联互通需求。
3.3 与相关业务系统的数据交换接口
——根据业务需求,系统支持与财务管理系统、档案管理系
统等业务系统的数据交换,确保科技项目管理的全流程无缝衔
接。
基于web的网上购物系统(已完成)
¥1200
帮我做一个基于web的网上购物系统。商城什么的随便前端界面也随便,后端界面也随便,就是尽量解决登录界面也就一点点东西。
但是我就是答辩的时候嘛。因为我是网上答辩的,然后老师会问两个问题。到时候我可能需要就是问问题的时候,我会把问题给你们,然后让他帮我同答一下 就是给我一个语音。
使用javaFX编写页面(已完成)
¥200
training tips模块
实现这个登录注册页面
右上角那个实现不了也是加图片进去
要接收组长那部分输入的数据
然后生成进度条和折线图
左边导航栏都是一样的
然后我那个包数据要从组长那个包来
mvc结构
view用fxml实现
model靠已有的数据实现自动追踪
controller用来处理业务,涉及到具体数据要用DAO实现
io流储存数据库放入文本文件中


login
io流储存数据库放入文本文件中
实现这个登录注册页面
密码加密(输入密码时不显示密码)
mvc结构
view用fxml实现
model靠已有的数据实现自动追踪
controller用来处理业务,涉及到具体数据要用DAO实现
小游戏加功能(已完成)
¥400
把ui改一下,然后把背景音乐搞出来,再加两个地图,窗口可以放大,然后最好可以再加点动画
就是放个视频就行
对了,还加一个按esc
出现退出和说明的界面
具体需求需要和甲方讨论
项目部署(已完成)
¥150
将项目部署到eclispe
产品定制管理系统(已完成)
¥600
一、实验名称
产品定制管理系统(WEB+框架)
二、实验目的
1.应用面向对象或结构化方法独立完成需求问题分析。
2.运用软件设计方法和原理设计项目解决方案,并能体现创新意识。
3.应用所学的语言或者框架技术完成软件项目的构造实现和测试。
4.应用文献研究等方法解决项目中的技术难题。
三、实验内容
本次实训的作品必须做成WEB版,且用框架完成!
  实现产品定制管理系统的注册、登录、材料规格库、产品规格库、产品用料定制、产品生产工序定额设置、产品生产费用设置、产品价格预算公式设置、产品价格预算、下达产品生产任务、材料领用。具体功能要求如下:
1.注册/登录
注册:隐含功能按角色设置,角色不同,使用软件的功能不同
登录:登录后只能使用角色规定的功能
注:隐含权限管理
2.材料规格库
增删改,生产部门负责人,能分类管理
3.产品规格库/产品生产工序定额设置(生产部门负责人)
产品规格库:增删改,生产部门负责人,能分类管理
产品生产工序定额:定制产品的生产工时、镀锌面积等
4.产品用料定制
(设计部门负责人)定制产品用到材料规格库中的哪些定额材料(具体材料的货号、名称、规格型号、数量等)
5.产品生产费用设置
(生产部门负责人)按工序类别设置,如小时费用、按面积的镀锌费
6.产品价格预算公式设置
(设计部门负责人)产品大类:根据货号的前3位
公式设置等见附件
7.产品价格预算
能按产品公式显示各项数据
8.下达产品生产任务
(生产部门负责人)下达生产任务的同时,根据产品定制的用料,产生生产用的材料数据,以便供不同车间(部门)领用,具体车间(部门)由领用人或仓管员决定。注:生产用料不能随意改
9.材料领用
①能区分定制产品用料(定制产品用料,数量等不能改)跟一般材料领用(仓管员能修改材料数量)
②出库材料的单价按加权平均处理
10.辅助管理
涉及上述业务处理时所需的辅助表,如多仓库的仓库表管理、人员管理等等,只需提供简单的管理功能即可。
四、实验步骤
1.给出系统的需求分析;
2.给出仓库模型(所有与任务书有关的表);
3.给出事务处理算法;
4.系统的架构设计;
5.给出界面设计和有关样式/脚本等;
6.系统的详细设计;
7.系统的实现;
8.系统的测试。

五、需求分析(用例图/用例说明/业务用例)
1..用例图

2.用例说明
(一)注册/登录系统
- 用例编号:UC01
- 参与者:用户(包括设计部门、生产部门、仓管员)
- 前置条件:无
- 后置条件:用户成功注册或登录系统
- 主成功场景:
1. 用户访问系统并选择注册或登录。
2. 若注册,用户填写必要信息并提交。不同角色(设计部门、生产部门、仓管员)填写的信息可能存在差异,系统将根据角色设置隐含权限。
3. 若登录,用户输入用户名和密码,登录后只能使用角色规定的功能。
4. 系统验证信息并允许用户访问相应功能。

(二)管理材料规格库
- 用例编号:UC02
- 参与者:生产部门
- 前置条件:用户已登录系统
- 后置条件:材料规格信息被成功添加或更新
- 主成功场景:
1. 生产部门访问材料规格库。
2. 生产部门添加或修改材料规格信息,能对材料进行分类管理。
3. 系统保存更新后的信息。

(三)管理产品规格库
- 用例编号:UC03
- 参与者:生产部门
- 前置条件:用户已登录系统
- 后置条件:产品规格信息被成功添加或更新
- 主成功场景:
1. 生产部门访问产品规格库。
2. 生产部门添加或修改产品规格信息,能对产品进行分类管理。
3. 系统保存更新后的信息。

(四)定制产品用料
- 用例编号:UC04
- 参与者:设计部门
- 前置条件:产品规格已定义
- 后置条件:产品用料方案被创建
- 主成功场景:
1. 设计部门根据产品规格选择材料,具体为材料规格库中的定额材料(包括材料的货号、名称、规格型号、数量等)。
2. 设计部门定义每种材料的用量。
3. 系统记录用料方案。

(五)设置生产工序参数
- 用例编号:UC05
- 参与者:生产部门
- 前置条件:产品用料方案已定义
- 后置条件:生产工序参数被设置
- 主成功场景:
1. 生产部门定义每个生产步骤的参数,如定制产品的生产工时、镀锌面积等。
2. 生产部门输入所需时间、设备和人员信息。
3. 系统记录生产工序参数。

(六)设置产品生产费用
- 用例编号:UC06
- 参与者:生产部门
- 前置条件:生产工序参数已设置
- 后置条件:产品生产费用被计算并设置
- 主成功场景:
1. 生产部门根据工序参数计算成本,按工序类别设置费用,如小时费用、按面积的镀锌费。
2. 生产部门输入材料费、人工费等。
3. 系统计算各个成本并记录。

(七)设置产品价格预算公式
- 用例编号:UC07
- 参与者:设计部门
- 前置条件:无
- 后置条件:产品价格预算公式被定义
- 主成功场景:
1. 设计部门定义价格预算公式。根据产品大类(按货号的前3位)以及成本加成、市场调研等信息进行设置。
2. 设计部门输入相关参数,例如成本加成比例、市场预期利润率、不同材料成本占比等。。
3. 系统创建价格预算公式,公式可能是一个包含各种成本因素和加成比例的数学表达式,如:产品价格 = (材料成本 + 人工成本 + 设备折旧成本)×(1 + 成本加成比例)×(1 + 市场预期利润率)

(八)进行产品价格预算
- 用例编号:UC08
- 参与者:设计部门
- 前置条件:价格预算公式已定义
- 后置条件:产品价格被预算
- 主成功场景:
1. 设计部门输入相关参数,如产品用料定制中的定额材料费、产品生产工序参数设置中的镀锌费和制造工时费等。
2. 系统根据预算公式计算产品价格。具体算法如下:
- 首先对公式进行词法分析,分离出一个个单词。例如“{取镀锌费}*1.37”公式,分离
- 在词法分析的单词序列的基础上再解释求值。按照公式中规定的计算顺序(按序号排):1->2->3->4->5->11->6->7->8->9->10进行计算。其中,有关“取定额材料费”、 “取镀锌费”、“取制造工时费”等根据产品生产工序的需要设定,在系统设计中可以把这些设定映射成计算方法,通过方法(这些方法带货号参数或不带参数)的反射来辅助计算。
3. 系统显示预算结果。

(九)下达产品生产任务
- 用例编号:UC09
- 参与者:生产部门
- 前置条件:产品用料和生产费用已定义
- 后置条件:生产任务被下达
- 主成功场景:
1. 生产部门创建生产任务。
2. 生产部门分配任务到生产线。
3. 系统记录任务并通知相关人员。同时,根据产品定制的用料,产生生产用的材料数据,以便供不同车间(部门)领用,具体车间(部门)由领用人或仓管员决定,且生产用料不能随意改。

(十)领用材料
- 用例编号:UC10
- 参与者:仓管员
- 前置条件:生产任务已下达
- 后置条件:材料被领用
- 主成功场景:
1. 仓管员根据生产任务领用材料。对于定制产品用料,数量等不能改;对于一般材料领用,仓管员能修改材料数量。
2. 仓管员记录领用数量和时间。
3. 系统更新库存信息,出库材料的单价按加权平均处理。

(十一)管理仓库表
- 用例编号:UC11
- 参与者:仓管员
- 前置条件:仓库表存在
- 后置条件:仓库表被更新
- 主成功场景:
1. 仓管员访问仓库表。
2. 仓管员更新库存数量和状态。
3. 系统保存更新信息。

(十二)管理人员
- 用例编号:UC12
- 参与者:管理人员
- 前置条件:系统已登录
- 后置条件:人员信息被管理
- 主成功场景:
1. 管理人员访问人员管理模块。
2. 管理人员添加、修改或删除人员信息。
3. 系统保存更新后的人员信息。

3.业务用例
UC01:用户注册/登录 - 允许用户创建账户并登录系统,以访问系统功能。
UC02:管理材料规格库 - 使生产部门能够管理材料规格信息。
UC03:管理产品规格库 - 使生产部门能够管理产品规格信息。
UC04:定制产品用料 - 允许设计部门根据产品规格定制产品用料。
UC05:设置生产工序参数 - 使生产部门能够设置生产工序参数。
UC06:设置产品生产费用 - 使生产部门能够设置产品生产费用。
UC07:设置产品价格预算公式 - 允许设计部门设置产品价格预算公式。
UC08:进行产品价格预算 - 允许设计部门根据公式进行产品价格预算。
UC09:下达产品生产任务 - 使生产部门能够下达产品生产任务。
UC10:领用材料 - 允许仓管员领用材料。
UC11:管理仓库表 - 允许仓管员管理仓库信息。
UC12:管理人员 - 允许管理人员管理员工信息。

六、概要设计
1.仓库模型
1.1数据模型
用户表:存储用户信息,包括用户ID、账号、密码、角色等
材料规格表:存储材料信息,包括材料ID、名称、规格型号、分类、单位等
产品规格表:存储产品信息,包括产品ID、名称、规格型号、分类、货号等
产品生产工序参数表:存储产品生产所需的参数,包括参数ID、产品ID、参数名称、参数值等
产品用料定制表:存储产品所需的定额材料信息,包括产品ID、材料ID、数量等
产品生产费用表:存储不同工序的费用信息,包括费用ID、工序类别、费用值等
产品价格预算公式表:存储产品价格计算公式,包括公式ID、项目名称、计算公式等
生产任务表:存储生产任务信息,包括任务ID、产品ID、数量、车间/部门等
材料领用表:存储材料领用信息,包括领用ID、材料ID、数量、单价、总价等
仓库表:存储仓库信息,包括仓库ID、名称、地址等
人员表:存储人员信息,包括人员ID、姓名、职位、所属部门等

1.2表模型

1.用户表 (user)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
account Varchar 登录账号 50 N N NULL
password varchar 密码 50 N N NULL
role varchar 角色 20 N N NULL

表模型说明:
id:用户ID,主键,自动增长
account:登录账号,唯一
password:密码
role:角色,例如:生产部分负责人、设计部门负责人、仓管员




2. 材料规格表 (material)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
name varchar 材料名称 100 N N NULL
specification varchar 规格型号 100 N N NULL
category varchar 分类 20 N N NULL
unit varchar 单位 10 N N NULL

表模型说明**:
id:材料ID,主键,自动增长
name:材料名称
specification:规格型号
category:分类
unit:单位




3. 产品规格表 (product)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
name varchar 产品名称 100 N N NULL
specification varchar 规格型号 100 N N NULL
category varchar 分类 20 N N NULL
material_id int 所属材料ID 11 N N NULL

表模型说明:
id:产品ID,主键,自动增长
name:产品名称
specification:规格型号
category:分类
material_id:所属材料ID,外键关联材料规格表

4. 产品生产工序参数表 (production_parameter)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
product_id int 所属产品ID 11 N N NULL
parameter_name varchar 参数名称 50 N N NULL
parameter_value varchar 参数值 50 N N NULL

表模型说明:
id:参数ID,主键,自动增长
product_id:所属产品ID,外键关联产品规格表
parameter_name:参数名称,例如:工时、镀锌面积等
parameter_value:参数值

5. 产品用料定制表 (product_material)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
product_id int 所属产品ID 11 N N NULL
material_id int 材料ID 11 N N NULL
quantity int 数量 11 N N NULL

表模型说明:
id:用料ID,主键,自动增长
product_id:所属产品ID,外键关联产品规格表
material_id:材料ID,外键关联材料规格表
quantity:数量

6. 产品生产费用表 (production_cost)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
category varchar 工序类别 20 N N NULL
cost_value decimal 费用值 10,2 N N NULL

表模型说明:
id:费用ID,主键,自动增长
category:工序类别,例如:小时费用、镀锌费等
cost_value:费用值


7. 产品价格预算公式表 (price_formula)
字段名 字段类型 字段长度 是否可以为空值 是否是主键 初始值
id int 11 N Y NULL
item_name varchar 50 N N NULL
formula varchar 255 N N NULL

表模型说明:
id:公式ID,主键,自动增长
item_name:项目名称,例如:定额材料费、附加材料费等
formula:计算公式

8. 生产任务表 (production_task)

字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int Id 11 N Y NULL
product_id int 产品ID 11 N N NULL
quantity int 数量 11 N N NULL
department_id int 车间/部门ID 11 N N NULL

表模型说明:
id:任务ID,主键,自动增长
product_id:产品ID,外键关联产品规格表
quantity:数量
department_id:车间/部门ID

9. 材料领用表 (material_receiving)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
material_id int 材料ID 20 N N NULL
quantity int 数量 11 N N NULL
unit_price decimal 单价 10,2 N N NULL
total_price decimal 总价 10,2 N N NULL

表模型说明:
id:领用ID,主键,自动增长
material_id:材料ID,外键关联材料规格表
quantity:数量
unit_price:单价
total_price:总价


10. 仓库表 (warehouse)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
name varchar 仓库名称 50 N N NULL
address varchar 地址 100 N N NULL

表模型说明:
id:仓库ID,主键,自动增长
name:仓库名称
address:地址

11. 人员表 (staff)
字段名 字段类型 字段描述 字段长度 是否可以为空值 是否是主键 初始值
id int ID 11 N Y NULL
name varchar 姓名 50 N N NULL
position varchar 职位 50 N N NULL
department_id int 所属部门ID 11 N N NULL

表模型说明:
id:人员ID,主键,自动增长
name:姓名
position:职位
department_id:所属部门ID





2.权限管理
2.1权限控制的数据流图(DFD)
- 展示用户如何通过权限控制访问系统的不同模块





说明:
- [用户]:表示尝试访问系统的用户。
- (登录模块):用户提交登录请求的地方。
- {凭证有效}:系统验证用户的凭证(用户名和密码)。
- [角色分配模块]:根据用户的凭证验证结果,系统分配相应的角色。
- [拒绝访问]:如果凭证无效,用户将被拒绝访问。
- {角色}:表示不同的用户角色,包括设计部门、生产部门、仓管员和管理人员。
- [设计部门功能]、[生产部门功能]、[仓管员功能]、[管理人员功能]:根据不同的角色,用户被引导至相应的功能模块。
- [定制产品用料模块]、[设置产品价格预算公式模块]、[管理材料规格库模块]、[设置生产工序参数模块]、[领用材料模块]、[管理人员信息模块]:这些模块代表系统的具体功能,用户只能访问他们角色权限范围内的模块。



2.2权限管理的类图
- 展示系统中与权限管理相关的类以及它们之间的关系



说明:
- User:用户类,包含用户名、密码、部门和角色属性。
- Role:角色类,包含角色名和权限列表。
- Permission:权限类,包含权限名称。
- UserManager:用户管理类,负责管理用户信息,包括登录和注册用户。
- RoleManager:角色管理类,负责管理角色信息,包括根据用户获取角色。
- PermissionManager:权限管理类,负责管理权限信息,包括检查用户是否具有特定权限。
- AccessControl:访问控制类,负责用户的认证和授权。

类之间的关系:
- User与Role之间是多对一的关系,表示一个用户有一个角色。
- Role与Permission之间是多对多的关系,表示一个角色有多个权限。
- UserManager管理User对象。
- RoleManager管理Role对象。
- PermissionManager管理Permission对象。
- AccessControl使用UserManager、RoleManager和PermissionManager来执行认证和授权。

3.架构设计
产品定制管理系统采用分层架构模式,分为表现层、业务逻辑层、数据访问层和数据库层,有助于提高系统的可维护性、可扩展性和可测试性。



(一)表现层
1. 用户界面设计
- 采用响应式设计原则,确保系统能够在不同设备(如桌面电脑、平板电脑、智能手机)上提供良好的用户体验。
- 为不同角色(设计部门、生产部门、仓管员、管理人员)设计定制化的界面,根据其权限显示相关的功能菜单和操作按钮。例如,设计部门用户界面可能突出显示产品设计相关的功能模块,如定制产品用料、设置产品价格预算公式等;而仓管员界面则侧重于材料领用和仓库管理相关的操作。
2. 交互设计
- 使用直观的图形界面元素,如按钮、文本框、下拉菜单、表格等,方便用户操作。例如,在材料领用界面,仓管员可以通过下拉菜单选择材料名称,在文本框中输入领用数量等。
- 提供实时反馈机制,当用户进行操作(如提交注册信息、修改材料规格)时,系统及时显示操作结果(如注册成功提示、修改保存成功提示),增强用户对系统的信任和使用体验。

(二)业务逻辑层
1. 模块划分
- 用户管理模块
- 负责处理用户注册、登录验证以及权限管理。在注册过程中,根据用户输入的部门信息(设计部门、生产部门、仓管员、管理人员)为用户分配相应的角色,并将用户信息和角色权限信息存储在数据库中。登录验证时,比对用户输入的用户名和密码与数据库中的记录,同时根据用户角色确定其可访问的功能模块。
- 材料管理模块
- 包括材料规格库管理和材料领用管理两个子模块。材料规格库管理子模块负责材料规格信息的增删改查操作,支持生产部门对材料进行分类管理。材料领用管理子模块处理仓管员的材料领用操作,根据生产任务和定制产品用料要求验证领用数量,并更新库存信息。
- 产品管理模块
- 涵盖产品规格库管理、产品用料定制、生产工序参数设置和产品生产费用设置等功能。产品规格库管理子模块类似于材料规格库管理,负责产品规格信息的增删改查和分类管理。产品用料定制子模块由设计部门使用,根据产品规格选择材料并定义用量。生产工序参数设置子模块允许生产部门定义每个生产步骤的参数,如生产工时、镀锌面积等。产品生产费用设置子模块根据工序参数计算产品生产费用,包括材料费、人工费等。
- 生产任务管理模块
- 负责生产任务的下达和分配。生产部门创建生产任务时,系统根据产品用料和生产费用信息生成生产用的材料数据,并将任务分配到生产线。同时,系统记录任务相关信息并通知相关人员(如生产工人、仓管员)。
- 价格预算模块
- 包含产品价格预算公式设置和产品价格预算计算两个功能。设计部门在产品价格预算公式设置子模块中定义价格预算公式,考虑成本加成、市场调研等因素。产品价格预算计算子模块根据公式和输入的相关参数(如材料成本、人工成本、生产工序参数等)计算产品价格,采用词法分析和按顺序计算的算法。
2. 业务逻辑处理
- 各模块之间通过接口进行通信和协作。例如,当生产部门下达生产任务时,生产任务管理模块通过接口调用材料管理模块获取材料数据,调用产品管理模块获取产品规格和生产工序参数等信息。
- 在业务逻辑处理过程中,对数据进行严格的验证和处理。例如,在材料领用管理中,对领用数量进行验证,确保符合生产任务和定制产品用料要求;在价格预算计算中,对输入的参数进行验证,确保数据的准确性和完整性。

(三)数据访问层
1. 数据库接口设计
- 针对每个业务实体(用户、材料、产品、生产任务等)设计相应的数据库接口。这些接口提供了对数据库进行增删改查操作的方法。例如,用户数据库接口可能包括方法如`insertUser`(插入用户信息)、`updateUser`(更新用户信息)、`deleteUser`(删除用户信息)、`queryUser`(查询用户信息)等。
- 采用面向对象的设计方法,将数据库接口封装在类中,提高代码的可维护性和可重用性。例如,创建一个`UserDAO`类,其中包含上述用户数据库接口的方法。
2. 数据访问对象(DAO)实现
- 每个数据库接口类都有对应的实现类,负责实际执行对数据库的操作。这些实现类使用数据库连接技术(如JDBC for Java projects)与数据库进行交互。例如,`UserDAOImpl`类实现`UserDAO`接口,在其方法中使用JDBC代码来执行对用户数据库表的插入、更新、删除和查询操作。
- 在数据访问对象实现过程中,处理数据库连接的创建和关闭、事务管理等问题。例如,在一个包含多个数据库操作的业务逻辑中(如材料领用操作,涉及库存更新和材料领用记录插入),使用事务管理机制确保所有操作要么全部成功,要么全部失败,避免数据不一致性。

(四)数据库层
1. 数据库选型
- 根据系统的性能、功能和成本要求,选择合适的数据库管理系统。对于本产品定制管理系统,考虑到其数据量和并发访问需求,MySQL是一个合适的选择。MySQL具有良好的性能、稳定性和扩展性,能够满足系统的日常运行需求。
2. 数据库结构设计
- 用户表
- 存储用户信息,包括用户ID、用户名、密码、部门、角色等字段。其中,用户ID作为主键,确保每个用户的唯一性。
- 材料表
- 存储材料规格信息,如材料ID、材料名称、规格型号、分类类别、库存数量、单价等字段。材料ID作为主键,用于唯一标识每种材料。
- 产品表
- 存储产品规格信息,包括产品ID、产品名称、规格型号、分类类别、生产工序参数、生产费用等字段。产品ID作为主键,用于唯一标识每种产品。
- 生产任务表
- 存储生产任务信息,如任务ID、产品ID、生产部门、下达时间、材料数据(以JSON格式存储产品用料信息)等字段。任务ID作为主键,用于唯一标识每个生产任务。
- 价格预算
- 存储产品价格预算相关信息,包括预算ID、产品ID、价格预算公式、输入参数、预算结果等字段。预算ID作为主键,用于唯一标识每个价格预算记录。


七、详细设计
1.系统的详细设计
用例详细设计图:
1.用例 UC01: 注册/登录系统
类关系图:时序图:
2.用例 UC02: 管理材料规格库
类关系图:
时序图:

3.用例 UC03: 管理产品规格库
类关系图:
时序图:

4.用例 UC04: 定制产品用料
类关系图:
时序图:

5.用例 UC05: 设置生产工序参数
类关系图:
时序图:

6.用例 UC06: 设置产品生产费用
类关系图:
时序图:

7.用例 UC07: 设置产品价格预算公式
类关系图:
时序图:

8.用例 UC08: 进行产品价格预算
类关系图:
时序图:

9.用例 UC09: 下达产品生产任务
类关系图:
时序图:

10.用例 UC10: 领用材料
类关系图:
时序图:

11.用例 UC11: 管理仓库表
类关系图:
时序图:

12.用例 UC12: 管理人员
类关系图:
时序图:、

2.算法处理
(一)材料出库算法

1. 生产任务检查
- 当仓管员发起材料领用操作时,系统首先查询生产任务管理模块,检查相应的生产任务是否已下达。这一过程涉及到与生产任务数据库表的交互,通过查找生产任务记录中的下达状态字段来确定。如果生产任务未下达,则在系统界面弹出明确的错误提示信息,如“生产任务未下达,禁止材料出库”,同时阻止材料出库操作的执行,确保材料领用与生产任务的紧密关联。
-伪代码:
function checkProductionTask(taskId):
task = queryProductionTaskDatabase(taskId)
if task.status != "下达":
displayError("生产任务未下达,禁止材料出库")
return false
return true

2. 定制产品用料验证
- 对于定制产品用料,系统在仓管员输入领用数量后,会从生产任务中提取该定制产品用料的规定数量,并与输入的领用数量进行严格比对。这种比对是基于精确的数值匹配,因为定制产品的用料数量通常是根据特定设计和生产要求精确确定的。如果两者不一致,系统会在界面上显示详细的错误提示,例如“定制产品用料数量不符,请核对后重新操作”,并禁止材料出库,以保证定制产品的生产质量和成本控制符合设计要求。
-伪代码:
function verifyCustomMaterialUsage(materialId, requestedQuantity):
requiredQuantity = getCustomProductMaterialRequirement(materialId)
if requestedQuantity != requiredQuantity:
displayError("定制产品用料数量不符,请核对后重新操作")
return false
return true

3. 一般材料领用处理
- 对于一般材料领用,系统允许仓管员在合理范围内修改领用数量。仓管员可以根据实际生产需求和库存情况,在系统提供的输入界面中调整领用数量。系统会实时监测输入的数量是否在合理的库存和生产需求范围内,如果超出合理范围,会给予适当的提示,但不会像定制产品用料那样严格禁止操作。同时,系统会记录仓管员对领用数量的修改操作,以便后续审计和分析材料使用情况。
-伪代码:
function handleGeneralMaterialIssuance(materialId, requestedQuantity):
maxAllowedQuantity = getMaximumAllowedQuantity(materialId)
if requestedQuantity > maxAllowedQuantity:
displayWarning("领用数量超出合理范围,请调整")
else:
updateMaterialUsage(materialId, requestedQuantity)
recordMaterialIssuance(materialId, requestedQuantity)

4. 库存信息更新与单价计算
- 系统根据材料的出库情况更新库存信息,这涉及到对库存数据库表的更新操作。首先,系统会在库存表中找到对应的材料记录,将其库存数量字段的值减去出库数量。同时,根据材料的出库时间、入库时间以及当前库存数量等因素,更新库存状态字段,例如将库存状态从“充足”更新为“部分短缺”(如果出库后库存数量低于某个设定的阈值)。
- 对于出库材料的单价计算,系统按照加权平均算法进行。它会获取该材料的所有入库记录,包括入库数量和入库单价。然后根据加权平均公式:加权平均单价 = (入库数量1×入库单价1 + 入库数量2×入库单价2 + … + 入库数量n×入库单价n)/(入库数量1 + 入库数量2 + … + 入库数量n)计算出库材料的单价。最后,将计算出的单价以及出库数量、出库时间等相关信息记录在材料出库记录数据库表中,以便后续财务核算和成本分析。
-伪代码:
function updateInventoryAndCalculateUnitPrice(materialId, issuanceQuantity):
inventory = queryInventoryDatabase(materialId)
inventory.quantity -= issuanceQuantity
inventory.status = updateInventoryStatus(inventory.quantity)
updateInventoryDatabase(inventory)

unitPrice = calculateWeightedAveragePrice(materialId)
recordMaterialIssuancePrice(materialId, issuanceQuantity, unitPrice)

(二)产品价格预算算法

1. 公式词法分析
- 如上述产品价格预算部分所述,系统首先对价格预算公式进行词法分析。这一过程类似于编译器对编程语言的词法分析过程。系统会将公式字符串作为输入,按照预定的词法规则,将其分解为一个个单词。例如,对于公式“{取镀锌费}*1.37 + {取制造工时费}*2”,系统会识别出“{取镀锌费}”、“*”、“1.37”、“+”、“{取制造工时费}”、“*”、“2”等单词。同时,系统会为每个单词标记其类型,如“{取镀锌费}”和“{取制造工时费}”标记为元数据类型,“*”和“+”标记为算符类型,“1.37”和“2”标记为常量类型。
-伪代码:
function lexicalAnalysis(formula):
tokens = tokenize(formula)
for token in tokens:
if isMetadata(token):
token.value = getMetadataValue(token.name)
elif isOperator(token):
token.type = "operator"
elif isConstant(token):
token.type = "constant"
return tokens

2. 单词计算处理
- 根据单词的类型(元数据、算符、常量等)进行相应的计算处理。
- 对于元数据类型的单词,如“{取镀锌费}”,系统通过方法反射获取对应的数据值。这涉及到在系统的代码架构中,定义了一系列与获取各种成本数据相关的方法。当遇到元数据类型的单词时,系统会根据单词中的标识(如这里的“镀锌费”)找到对应的方法,并调用该方法获取实际的数据值。例如,如果系统中有一个方法名为“getZincPlatingFee”用于获取镀锌费,系统会调用这个方法并将其返回值作为“{取镀锌费}”这个单词的值。
- 对于算符类型的单词,系统按照预定义的运算规则进行处理。例如,当遇到“*”算符时,系统知道需要进行乘法运算;当遇到“+”算符时,系统知道需要进行加法运算。
- 对于常量类型的单词,系统直接使用其数值进行计算。例如,对于“1.37”和“2”,系统在计算过程中直接使用这些数值。
-伪代码:
function calculateTokenValue(token):
if isMetadata(token):
return getMetadataValue(token.name)
elif isOperator(token):
return performOperation(token)
elif isConstant(token):
return token.value

3. 按顺序计算结果
- 按照公式规定的计算顺序依次计算各个部分的值。系统会维护一个计算栈,将单词按照计算顺序依次压入栈中。当遇到算符时,从栈中弹出相应数量的操作数(根据算符的元数,如二元算符弹出两个操作数)进行计算,并将结果压回栈中。例如,对于公式“{取镀锌费}*1.37 + {取制造工时费}*2”,系统首先计算“{取镀锌费}*1.37”的值,将结果压回栈中,然后计算“{取制造工时费}*2”的值,再将两个结果相加,最终得到产品价格预算结果。系统会将最终的预算结果存储在产品价格预算结果数据库表中,同时在系统界面上显示给相关用户(如设计部门人员),以便他们进行进一步的分析和决策。
-伪代码:
function calculatePriceBudget(tokens):
stack = []
for token in tokens:
if isOperator(token):
operands = popOperands(stack, token.arity)
result = performOperation(token, operands)
stack.push(result)
else:
stack.push(token.value)
return stack.pop()

八、实现

九、测试

高校四六级报名管理系统(已完成)
¥900
用户管理:学生管理:注册、登录、修改等,系统管理员:负责维护系统正常运行,包括用户权限管理
报名管理:报名信息录入:学生在线填写报名表,提交个人信息及照片等资料;报名状态查询:学生可查询自己的报名状态,如是否通过市核、缴费状态等;报名费用支付:集成在线支付接口,支持多种支付方式完成报名费缴纳
考试管理:考试安排发布:发布考试时间、地点等信息,确保所有考生及时了解;考场分配:根据报名情况自动分配考场座位,生成准考证;成绩发布:考试结束后,由教师上传成绩,系统自动处理并公布
数据统计分析:报名人数统计:统计各科目、各年级的报名人数,为后续考试安排提供参考;成绩分布分析:分析考试成绩的分布情况,帮助学校了解教学效果
系统设置:系统参数配置:调整系统运行的相关参数,如考试报名时间、成结发布时间等;安全设置:设置账户安全策略,如密码强度要求、登录尝试次数限制等
帮助与支持:常见问题解答:提供常见问题的解答,方便用户快速解决问题;在线客服:提供在线客服支持,解决用户的疑问
和问题

工资计算系统(已完成)
¥300
工资计算

1.0 项目目的:
企业管理员可在后台,填写每个月所作的工单内容:包含工序、员工姓名、工序数量;
企业管理员可在后台,生成相应工单的对账单。

2.0 项目技术要求:
学校作业,能实现基本功能就行。
java,mysql,jsp等。

3.0 页面介绍
A. 登录页要求:(页面简单就好,可自行设计)
页面元素:用户名、登录密码

a1. 登录操作结果:
用户名、密码输入正确,登录成功,进入首页;
用户名、密码输入错误,提示:用户名、密码输入错误,请重新输入!


B.登录成功,首页要求:(页面简单就好,可自行设计,但是对应的菜单功能要有)
页面元素:
左侧菜单栏分别为:
1.管理员管理、2. 员工管理、3. 工序管理、4. 工单管理、5. 月度统计。
点击左侧菜单栏的菜单后,显示对应的菜单内容。

菜单功能:
b1. 管理员管理: 分页展示所有企业管理员。
列表上方功能按钮:新增管理员。
列表展示字段:id(表自增id)、用户名、姓名、手机号、创建时间、创建人、修改时间、修改人、操作。
新增管理员页面字段:用户名、姓名、手机号、密码。
字段限制:
用户名:长度1-30,英文、数字组合。
姓名:长度1-30,英文、数字、中文组合。
手机号:长度6-20,数字。
密码:长度6-20,英文、数字组合。

状态:在职、离职。
新增管理员时要求:
①前端输入框、后端限制字段类型:用户名(英文)、手机号(数字)。
②后端逻辑限制:用户名(英文)、手机号(数字)唯一,库中任一字段重复存在时触发校验。
唯一核验触发提示:您输入的用户名或手机号已存在,请重新输入!
③接口限制,用户登录状态下发送请求。

列表每一行操作列功能:修改
修改管理员信息的操作页字段和核验与上方新增一致。所有字段均可修改。


b2. 员工管理: 分页展示所有员工。
筛选栏:用户名、姓名、手机号、状态(下拉选择默认显示在职)。
搜索按钮:点击搜索,模糊查询出符合筛选栏条件的数据。
列表左上方功能按钮:新增员工。
列表展示字段:id(表自增id)、用户名、姓名、手机号、状态(在职、离职)、创建时间、创建人、修改时间、修改人。
新增员工页面字段:用户名、姓名、手机号、状态。
字段限制:
用户名:长度1-30,英文、数字组合。
姓名:长度1-30,英文、数字、中文组合。
手机号:长度6-20,数字。
状态:在职、离职。

新增员工时要求:
①前端输入框、后端限制字段,用户名、手机号、状态(在职、离职)。
②后端检核用户名、手机号一起组成唯一,库中不能同时存在。
唯一核验触发提示:您输入的用户名、手机号已存在,请重新输入!
③接口限制,用户登录状态下发送请求。

列表每一行数据功能:修改。
修改员工操作页面的字段和核验与上方新增一致。所有字段均可修改。


b3. 工序管理: 分页展示所有的工序
筛选栏:工序名称、状态(下拉选择默认显示有效)。
搜索按钮:点击搜索,模糊查询出符合筛选栏条件的数据。
列表左上方功能按钮:新增工序。
列表展示字段:id(表自增id)、工序码、工序名称、状态(有效、无效)。
新增工序页面字段:工序码、工序名称、状态(有效、无效)。
字段限制:
工序码:长度1-30,英文、数字组合。
工序名称:长度1-30,英文、数字、中文组合。
状态:有效、无效。

新增工序时要求:
①前端输入框、后端限制字段输入工序码、工序名称、状态。
②后端限制工序码、工序名称一起组成唯一,库中不能同时存在。
唯一核验触发提示:您输入的用工序已存在,请重新输入!
③接口限制,用户登录状态下发送请求。

列表每一行数据功能:修改。
修改员工操作页面的字段和核验与上方新增一致。所有字段均可修改。

b4. 工单管理
1. 工单管理: 分页展示所有的工单列表
2. 筛选栏:日期(年/月)、工单名称、状态(下拉选择默认显示有效)。
3. 搜索按钮:点击搜索,模糊查询出符合筛选栏条件的数据。
4. 列表左上方功能按钮:删除,修改,新增。
5. 列表展示字段:id(表自增id)、日期(年/月/日)、工单名称、状态(有效、无效)。
6. 点击列表左上方功能按钮删除,将所选择的工单状态变为无效(可多选)。
7. 点击列表左上方功能按钮修改,可进入工单详情页进行修改(单选)。
8. 点击列表左上方功能按钮新增:可对新增工单页的内容进行编辑。
下方为新增工单详情页面的内容:
工单名称:可编辑。
日期:工单日期框选择年/月/日。
总计:累加的方式统计合计列的金额,展示两位小数。
序号:自增。
工序组:点击后,下拉展示所有的有效工序,可多选带入有效的工序。
单价(元):输入数字,展示两位小数。
员工姓名:点击后,下拉展示所有的有效员工姓名,单选带入。
数量:输入数字,整数。
合计:自动计算,数量*单价(元),展示两位小数。

展示内容和格式可参考下图:工单详情页


工单详情页保存按钮:新增的工单,为新增一笔新的记录;修改工单时,为修改所选择的工单。
工单详情页新增按钮:新增一行工序组。
工单详情页删除按钮:删除所选的一行工序组。


B5. 月度统计:统计每个月的工单。
1.工单管理: 默认统计当年的每月有效的工单以及工单的总金额。(例:若查询时当天日期为7月份,则只展示并统计1-7月的数据;若查询为去年的统计,展示1-12月的数据)

2. 筛选栏:日期(年) ,默认填入当年,点击修改时为选择日期框。(例如:2024)
3. 搜索按钮:点击搜索,查询出符合筛选栏条件的数据。

4.列表展示字段:序号、日期(年月)、工单总数、当月总计(元)、操作栏(详情)。可看操下方图示:
序号:默认1-12,分别对应1-12月。
日期:显示x年x月。
工单总数:统计当月的有效工单。
当月总计:统计当月有效工单的总计金额,展示两位小数。
操作:详情,可点击查看当月工单详情。
月度统计工单列表:



月度统计工单详情:
姓名:当月有做工单的员工,按照工资从高到低排序。
工资合计:员工所有工单的合计。
涉及工单:该员工当月所做的工单。



点击详情查看:员工具体月度工资详情



















项目添加模块(已完成)
¥800
项目添加 招聘模块 考勤模块 或者社保管理模块和美化主页
基于 javaweb 实现学生工作管理系统(已完成)
¥600
登录/注册 以管理员登录或以学生身份登录或者以老师身份进入
只有管理员登录才能调整老师相关信息以及学生相关信息
登录之后第一界面 个人中心 显示当前登录人的相关信息
只有管理员或老师身份登录才能对评奖评优进行相关更改以及违纪处分管理 学生资
助管理等
学生身份登录则无法对相关管理进行更改
要求有查询功能 例如输入班级或者其他关键字 能返回符合信息的数据
以及对查出的信息能够再次查看详细信息
例如 我搜出一名学生叫马俊平我再次点击马俊平能够显示出他的详细信息
有宿舍管理模块 分配宿舍以及查询学生在哪个宿舍 以及查看学生的具体信息 同上
管理员身份登录需要有 新增老师学生 删除老师学生 修改老师 学生 操作
补充 需要有文件上传功能 应用于评奖评优等

项目技术栈:

项目需求描述:

项目接单要求:

项目如何接单:

课程分类

尚新途微信公众号

尚新途微信小程序

©2014-2025 百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备13018289号-12    营业执照    经营许可证:京B2-20212637