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

中州养老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.dtcms.com/a/312024.html

相关文章:

  • 中之人模式下的虚拟主持人:动捕设备与面捕技术的协同驱动
  • 2025系规教材改革后,论文怎么写?
  • 错误处理_IncompatibleKeys
  • 在Linux上对固态硬盘进行分区、格式化和挂载的步骤
  • CH32V单片机启用 FPU 速度测试
  • MVVM——ArkUI的UI开发模式
  • 使用Python开发Ditto剪贴板数据导出工具
  • 使用C++实现日志(2)
  • MCP终极指南 - 从原理到实战(基础篇)
  • 面试实战,问题二十二,Java JDK 17 有哪些新特性,怎么回答
  • windows内核研究(软件调试-异常的处理流程)
  • 幂等性介绍和下单接口幂等性保证实现方案
  • 雷卯针对香橙派Orange Pi RV2开发板防雷防静电方案
  • kotlin小记(1)
  • Waterfox水狐浏览器、火狐浏览器外观修改
  • Dice Combinations(Dynamic Programming)
  • 【Bug记录】关于copy的表不能copy主键和index的解决办法
  • python:以支持向量机(SVM)为例,通过调整正则化参数C和核函数类型来控制欠拟合和过拟合
  • SM2椭圆曲线密码算法原理与纯C语言实现详解
  • #Linux内存管理# 用一个案例详细介绍ARMv7-A架构 缺页中断处理的原理
  • ARMv8/v9架构FAR_EL3寄存器介绍
  • imx6ull-驱动开发篇6——Linux 设备树语法
  • P10816 [EC Final 2020] Namomo Subsequence|普及+
  • 堆----1.数组中的第K个最大元素
  • [buuctf-misc]喵喵喵
  • Linux学习--数据结构
  • 前端-移动Web-day3
  • 基于springboot的郑州旅游景点推荐系统
  • Kotlin单例模式懒汉模式:LazyThreadSafetyMode.SYNCHRONIZED(2)
  • 多线程(二) ~ 线程核心属性与状态