浏览代码

护理记录单使用真实接口

xiongxing 1 天之前
父节点
当前提交
3a7ea08340

+ 0 - 9
src/api/elderly/assess/nursing-record-sheet/index.ts

@@ -1,14 +1,9 @@
 import request from '@/config/axios'
-import { mockCreate, mockDelete, mockDetail, mockPage, mockUpdate } from './mock'
-
-// TODO 后端接口就绪后改为 false,并删除同目录下的 mock.ts
-const USE_MOCK = true
 
 // ====================护理记录单====================
 
 // 获得护理记录单分页
 export const getNursingRecordPage = async (params) => {
-  if (USE_MOCK) return mockPage(params)
   return request.get({
     url: 'elderly/nursingRecord/page',
     params
@@ -17,7 +12,6 @@ export const getNursingRecordPage = async (params) => {
 
 // 获得护理记录单详情
 export const getNursingRecord = async (id) => {
-  if (USE_MOCK) return mockDetail(id)
   return request.get({
     url: `elderly/nursingRecord/get?id=${id}`
   })
@@ -25,7 +19,6 @@ export const getNursingRecord = async (id) => {
 
 // 新增护理记录单
 export const createNursingRecord = async (data) => {
-  if (USE_MOCK) return mockCreate(data)
   return request.post({
     url: 'elderly/nursingRecord/create',
     data
@@ -34,7 +27,6 @@ export const createNursingRecord = async (data) => {
 
 // 修改护理记录单
 export const updateNursingRecord = async (data) => {
-  if (USE_MOCK) return mockUpdate(data)
   return request.put({
     url: 'elderly/nursingRecord/update',
     data
@@ -43,7 +35,6 @@ export const updateNursingRecord = async (data) => {
 
 // 删除护理记录单
 export const deleteNursingRecord = async (id) => {
-  if (USE_MOCK) return mockDelete(id)
   return request.delete({
     url: `elderly/nursingRecord/delete?id=${id}`
   })

+ 0 - 195
src/api/elderly/assess/nursing-record-sheet/mock.ts

@@ -1,195 +0,0 @@
-/**
- * 护理记录单 —— 临时模拟数据
- * 后端接口未就绪时使用,接口联调完成后删除本文件,并将 index.ts 中的 USE_MOCK 置为 false
- */
-
-export interface NursingRecordItem {
-  id: number
-  tenantId: number
-  tenantName: string
-  elderId: number
-  elderName: string
-  elderSex: number
-  bedInfo: string
-  recordDate: string
-  recordTime: string
-  temperature: number
-  bloodOxygen: number
-  pulse: number
-  respiration: number
-  systolicPressure: number
-  diastolicPressure: number
-  observation: string
-  signer: string
-  creator: string
-  createTime: string
-}
-
-/** 长者基础信息 */
-const ELDERS = [
-  {
-    elderId: 1001,
-    elderName: '张桂英',
-    elderSex: 2,
-    bedInfo: '3栋-2楼-201-1床',
-    tenantId: 1,
-    tenantName: '颐年养老院'
-  },
-  {
-    elderId: 1002,
-    elderName: '李秀兰',
-    elderSex: 2,
-    bedInfo: '3栋-2楼-202-1床',
-    tenantId: 1,
-    tenantName: '颐年养老院'
-  },
-  {
-    elderId: 1003,
-    elderName: '王德福',
-    elderSex: 1,
-    bedInfo: '2栋-1楼-105-2床',
-    tenantId: 1,
-    tenantName: '颐年养老院'
-  }
-]
-
-/** 病情观察及护理常用描述 */
-const OBSERVATIONS = [
-  '神志清楚,精神尚可,饮食正常,夜间睡眠好,无跌倒坠床。',
-  '体温偏高,嘱多饮水,已电话告知家属,继续观察体温变化。',
-  '血压较昨日偏高,已遵医嘱服药,建议低盐低脂饮食。',
-  '血氧偏低,已给予低流量吸氧,嘱卧床休息,暂缓下床活动。',
-  '协助翻身拍背,皮肤完整无压红,二便正常。',
-  '长者情绪平稳,主动配合护理,晨间生命体征平稳。',
-  '诉轻微头晕,已卧床休息并测量血压,密切观察病情变化。',
-  '食欲欠佳,改半流质饮食,少量多餐,已告知责任护士。',
-  '夜间入睡困难,予热水泡脚、调暗灯光后入睡。',
-  '康复训练后无不适,四肢活动尚可,继续按计划训练。'
-]
-
-const SIGNERS = ['王护士', '刘护士', '陈护士']
-/** 每日记录时间点 */
-const TIME_POINTS = ['08:00', '14:00', '20:00']
-/** 生成最近 N 天的记录 */
-const DAY_COUNT = 10
-
-/** 伪随机:保证每次生成的数据一致,避免刷新后数据跳动 */
-const rand = (seed: number, min: number, max: number, digits = 0) => {
-  const x = Math.sin(seed * 12.9898) * 43758.5453
-  const rate = x - Math.floor(x)
-  const value = min + rate * (max - min)
-  return digits ? Number(value.toFixed(digits)) : Math.round(value)
-}
-
-const formatDate = (date: Date) =>
-  `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}-${String(
-    date.getDate()
-  ).padStart(2, '0')}`
-
-const buildList = (): NursingRecordItem[] => {
-  const result: NursingRecordItem[] = []
-  let id = 1
-  let seed = 1
-  ELDERS.forEach((elder) => {
-    for (let day = DAY_COUNT - 1; day >= 0; day--) {
-      const date = new Date()
-      date.setDate(date.getDate() - day)
-      const recordDate = formatDate(date)
-      TIME_POINTS.forEach((time) => {
-        result.push({
-          id: id++,
-          tenantId: elder.tenantId,
-          tenantName: elder.tenantName,
-          elderId: elder.elderId,
-          elderName: elder.elderName,
-          elderSex: elder.elderSex,
-          bedInfo: elder.bedInfo,
-          recordDate,
-          recordTime: time,
-          temperature: rand(seed++, 36.2, 37.4, 1),
-          bloodOxygen: rand(seed++, 92, 99),
-          pulse: rand(seed++, 62, 92),
-          respiration: rand(seed++, 16, 22),
-          systolicPressure: rand(seed++, 110, 150),
-          diastolicPressure: rand(seed++, 65, 90),
-          observation: OBSERVATIONS[Math.floor(rand(seed++, 0, OBSERVATIONS.length - 1))],
-          signer: SIGNERS[Math.floor(rand(seed++, 0, SIGNERS.length - 1))],
-          creator: '系统管理员',
-          createTime: `${recordDate} ${time}:00`
-        })
-      })
-    }
-  })
-  return result
-}
-
-/** 内存数据源 */
-let mockData: NursingRecordItem[] = buildList()
-
-let nextId = mockData.length + 1
-
-const sortList = (list: NursingRecordItem[]) =>
-  list.sort((a, b) => {
-    if (a.recordDate === b.recordDate) return b.recordTime.localeCompare(a.recordTime)
-    return b.recordDate.localeCompare(a.recordDate)
-  })
-
-/** 分页查询 */
-export const mockPage = (params: Recordable) => {
-  const pageNo = params?.pageNo || 1
-  const pageSize = params?.pageSize || 10
-  const { elderName, bedInfo, recordDate, elderId } = params || {}
-  let list = [...mockData]
-  if (elderName) list = list.filter((item) => item.elderName.includes(elderName))
-  if (bedInfo) list = list.filter((item) => item.bedInfo.includes(bedInfo))
-  if (elderId) list = list.filter((item) => String(item.elderId) === String(elderId))
-  if (Array.isArray(recordDate) && recordDate[0] && recordDate[1]) {
-    const start = String(recordDate[0]).slice(0, 10)
-    const end = String(recordDate[1]).slice(0, 10)
-    list = list.filter((item) => item.recordDate >= start && item.recordDate <= end)
-  }
-  sortList(list)
-  return {
-    list: list.slice((pageNo - 1) * pageSize, pageNo * pageSize),
-    total: list.length
-  }
-}
-
-/** 详情 */
-export const mockDetail = (id) => {
-  const item = mockData.find((row) => row.id === Number(id))
-  return item ? { ...item } : {}
-}
-
-/** 新增 */
-export const mockCreate = (data) => {
-  const item: NursingRecordItem = {
-    id: nextId++,
-    tenantName: '颐年养老院',
-    creator: '系统管理员',
-    createTime: `${data.recordDate} ${data.recordTime || ''}:00`,
-    ...data
-  }
-  mockData = [item, ...mockData]
-  return item.id
-}
-
-/** 修改 */
-export const mockUpdate = (data) => {
-  const index = mockData.findIndex((row) => row.id === Number(data.id))
-  if (index !== -1) {
-    mockData[index] = { ...mockData[index], ...data }
-    return true
-  }
-  return false
-}
-
-/** 删除 */
-export const mockDelete = (id) => {
-  const index = mockData.findIndex((row) => row.id === Number(id))
-  if (index !== -1) {
-    mockData.splice(index, 1)
-    return true
-  }
-  return false
-}

+ 4 - 4
src/views/elderly/assess/nursing-record-sheet/API.md

@@ -1,7 +1,7 @@
 # 护理记录单 —— 后端接口说明
 
 > 模块位置:`src/views/elderly/assess/nursing-record-sheet/`
-> 当前状态:前端页面已开发完成,接口未就绪,暂时走本地模拟数据 `src/api/elderly/assess/nursing-record-sheet/mock.ts`
+> 当前状态:前端页面与后端接口均已就绪,直连 `src/api/elderly/assess/nursing-record-sheet/index.ts` 中的真实接口(mock.ts 已删除)
 
 ## 一、表结构
 
@@ -178,10 +178,10 @@ CREATE TABLE elderly_nursing_record (
 
 ## 六、联调切换方式
 
-接口开发完成后:
+已完成切换:
 
-1. 将 `src/api/elderly/assess/nursing-record-sheet/index.ts` 里的 `USE_MOCK` 改为 `false`;
-2. 删除 `src/api/elderly/assess/nursing-record-sheet/mock.ts`。
+1. `src/api/elderly/assess/nursing-record-sheet/index.ts` 已移除 `USE_MOCK` 分支,直接走 `request`;
+2. `src/api/elderly/assess/nursing-record-sheet/mock.ts` 已删除。
 
 ## 七、导出 Excel 版式(无需后端参与)