当前位置: 首页 > backend >正文

中州养老Day02:服务管理护理计划模块


本日任务:服务管理的后端开发

1.学习:护理项目

(1)评估开发工期的思路和注意事项

  • 全面熟悉项目,了解项目重点,设置开发优先级

比如,在下面图片的接口文档中版本有1.0,2.0,3.0也就是功能的初代,二代,三代,所以我们在大致浏览所有功能后,要优先关注初代功能的实现

开发计划

  1. 项目开发计划:在项目开发过程中,制定一份详细计划,用于管理开发工作的执行,确保项目按时交付,达到项目预期的质量和功能要求
  2. 个人开发计划:要根据自己负责的模块制定预期的交付时间

评估工期是作为项目开发的流程之一的 

需求分析:对需求有准确的理解,包括需求的性能,安全等,避免后期因为需求变更导致工期延误

技术复杂度:技术是否是自己是否已经实现过的,是否有新技术需要学习

任务拆解:将需求拆分为一个一个功能点,判断每个功能点需要多久实现

风险评估:例如三方依赖,需求变更,人力资源等风险,我们需要合理考虑

团队协作:如开发人员开发功能后需要前后端联调测试,以及交给专门的测试人员测试等

沟通:与团队成员及时沟通相互的进度,及时获取到工期变更等,避免影响到项目进度
开发计划具体模样

(2)理解模块需求

  • 全方位解读模块

我们要了解不同模块之间的关系

 比如护理计划和护理项目就是n对n的关系,护理计划包含护理项目,而护理等级和护理计划就是1对1的关系,简单来护理项目就是每个项目花费多少钱,护理计划就是每个计划对应多少项目,护理等级就是和护理计划1对1,只是加上了每个等级需要花费的价格.

(3)表结构设计的通用思路及工具的使用

具体参考我的另一篇文章

https://blog.csdn.net/qazwsxplmtgb/article/details/148985275?spm=1001.2014.3001.5501

(4)完成项目模块的开发

定义接口:请求方式,请求路径,请求参数,返回参数

mapper数据库层和业务层

根据情况进行单元测试

api调用测试和前后端联调测试

1.借助AI实现功能:

2.根据ai生成的代码改写

一般分为这几部分:Controller,service,mapper,xml,以及像DTO,VO这些接口

相关话术:

表结构:

CREATE TABLE `nursing_project` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号', `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '名称', `order_no` int DEFAULT NULL COMMENT '排序号', `unit` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '单位', `price` decimal(10,2) DEFAULT NULL COMMENT '价格', `image` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '图片', `nursing_requirement` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '护理要求', `status` int NOT NULL DEFAULT '1' COMMENT '状态(0:禁用,1:启用)', `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人', `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新人', `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `name` (`name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='护理项目表'

要求:

1.根据上述表结构,基于SpringBoot+mybatis生成Controller service mapper,sql语句写在xml文件中,分页查询时要关联创建人,同时生成vo dto

2.加上Swagger相关的注解说明

3.接口文档:(如果有可以,将相关接口文档的内容粘贴上去)

接口的开发顺序:

在Java Web开发中,特别是基于Spring框架的项目,通常推荐的接口开发顺序是:Mapper(DAO) → Service → Controller。这是标准的层次化架构模式,但具体实施时可以根据实际情况灵活调整。以下是详细说明:


1. Mapper层(数据持久层)

  • 首先开发:因为这是数据操作的基础,所有业务逻辑最终都依赖于数据访问。

  • 职责:直接与数据库交互,执行CRUD操作。

  • 开发内容

    • 定义Mapper接口(MyBatis)或继承JpaRepository(Spring Data JPA)。

    • 编写SQL(如XML映射文件或注解方式)。

    • 单元测试验证数据库操作是否正确。


2. Service层(业务逻辑层)

  • 其次开发:在明确数据操作后,编写业务规则和逻辑。

  • 职责

    • 实现核心业务逻辑(如数据处理、事务管理、调用多个Mapper组合操作)。

    • 为Controller提供高内聚的服务接口。

  • 开发内容

    • 定义Service接口及其实现类。

    • 通过依赖注入引入Mapper。

    • 单元测试验证业务逻辑(可使用Mock工具隔离Mapper)。


3. Controller层(表现层)

  • 最后开发:业务和数据逻辑完备后,处理外部请求。

  • 职责

    • 接收HTTP请求,解析参数。

    • 调用Service层并返回响应(JSON/XML等)。

  • 开发内容

    • 定义RESTful或MVC控制器。

    • 参数校验、异常处理、日志记录等。

    • 通过Swagger等工具生成API文档

为什么这个顺序?

  • 依赖方向清晰:Controller → Service → Mapper,避免循环依赖。

  • 逐步验证:从底层到上层,每层可单独测试,降低调试复杂度。

  • 符合设计原则:单一职责、分层隔离、高内聚低耦合。

http://www.xdnf.cn/news/16823.html

相关文章:

  • 全球化 2.0 | 中国香港教育机构通过云轴科技ZStack实现VMware替代
  • 离线安装docker和docker-compose
  • UNet改进(28):KD Attention增强UNet的知识蒸馏方法详解
  • 【龙芯99派新世界】buildroot快速使用笔记
  • Makefile 入门与实践指南
  • 易华路副总经理兼交付管理中心部门经理于江平受邀PMO大会主持人
  • SQL Server从入门到项目实践(超值版)读书笔记 22
  • 5.7 ASPICE适配过程中的认证准备
  • K8S的Pod之initC容器restartPolicy新特性
  • .NET 中,Process.Responding 属性用于检查进程的用户界面是否正在响应
  • 《React+TypeScript实战:前端状态管理的安全架构与性能优化深解》
  • 音频3A处理简介之AGC(自动增益控制)
  • Python从入门到精通计划Day01: Python开发环境搭建指南:从零开始打造你的“数字厨房“
  • 北京-4年功能测试2年空窗-报培训班学测开-今天来聊聊我的痛苦
  • 防火墙配置实验2(DHCP,用户认证,安全策略)
  • Python 入门指南:从零基础到环境搭建
  • Windows 批处理(.bat)文件中,搜索文件时使用的通配符
  • 排序算法大全:从插入到快速排序
  • EPICS aSub记录示例2
  • 计算机网络:任播和负载均衡的区别
  • 【Linux系统】详解,进程控制
  • Flink2.0学习笔记:Stream API 窗口
  • 20250802让飞凌OK3576-C开发板在飞凌的Android14下【rk3576_u选项】适配NXP的WIFIBT模块88W8987A的蓝牙
  • 【深度学习新浪潮】什么是专业科研智能体?
  • python:如何调节机器学习算法的鲁棒性,以支持向量机SVM为例,让伙伴们看的更明白
  • Kubernetes 构建高可用、高性能 Redis 集群实战指南
  • AI应用标准详解:A2A MCP AG-UI
  • MySQL 运算符
  • WebForms 简介
  • 人类学家与建筑师:区分UX研究和项目管理的需求分析