import Mock from 'mockjs' const BaseUrl = 'http://localhost:5173' import type { TubeRackResponse } from '../../types/Index' import { TubeState } from '../../types/Index' //孵育盘列表 const runningList = [ { pos: 'SPACE01', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { //当前反应板夹做的项目的相关信息 projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, //开始时间特殊处理下,有获取的时候时间已经开始了 incubatedTimeSec: 30, //本项目需要孵育多久 sampleId: '1', projId: 0, errors: [], //由于先推进去,发现缺液,取tip没有了,这个反应板就不要了,就设置成错误 }, { pos: 'SPACE02', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE03', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE04', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE05', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE06', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE07', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE08', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE09', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE10', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE11', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE12', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE13', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE14', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE15', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE16', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE17', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, { pos: 'SPACE18', state: 'EMPTY', bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: { projId: 0, projName: '', projShortName: '', color: '', }, startIncubatedTime: 0, incubatedTimeSec: 0, sampleId: '', projId: 0, errors: [], }, ] //试管架信息 const mockTubeRackResponse: TubeRackResponse = { // @ts-ignore data: { tubes: [ { pos: 1, isHighTube: false, isEmergency: true, bloodType: 'WHOLE_BLOOD', sampleBarcode: 'S123456', userid: 'U001', projInfo: [ { projId: 1, projName: 'hscRP', projShortName: 'CA', color: '#FFC0CB', }, ], projProcessOff: 0, state: TubeState.PROCESSING, errors: [], projIndexStrList: ['1'], projIds: [1], }, { pos: 2, isHighTube: false, isEmergency: false, bloodType: 'SERUM', sampleBarcode: 'S654321', userid: 'U002', projInfo: [ { projId: 2, projName: 'FA02', projShortName: 'FA', color: '#DC143C', }, ], projProcessOff: 10, state: TubeState.TO_BE_PROCESSED, errors: [], projIndexStrList: ['2'], projIds: [2], }, { pos: 3, isHighTube: false, isEmergency: false, bloodType: 'WHOLE_BLOOD', sampleBarcode: '', userid: '', projInfo: [], projProcessOff: 0, state: TubeState.EMPTY, errors: [], projIndexStrList: [], projIds: [], }, { pos: 4, isHighTube: true, isEmergency: false, bloodType: 'WHOLE_BLOOD', sampleBarcode: 'S789012', userid: 'U003', projInfo: [ { projId: 3, projName: 'FA03', projShortName: 'FA', color: '#DB7093', }, ], projProcessOff: 5, state: TubeState.PENDING, errors: ['低液量警告'], projIndexStrList: ['3'], projIds: [3], }, { pos: 5, isHighTube: false, isEmergency: false, bloodType: 'WHOLE_BLOOD', sampleBarcode: 'S456789', userid: 'U004', projInfo: [ { projId: 4, projName: 'FA04', projShortName: 'FA', color: '#FF69B4', }, ], projProcessOff: 0, state: TubeState.PRE_PROCESSED, errors: [], projIndexStrList: ['4'], projIds: [4], }, ], state: 'PROCESSING', hasTubeToBeProcessed: true, }, timestamp: Date.now(), success: true, } //获取孵育盘列表 Mock.mock( BaseUrl + '/api/v1/app/deviceState/getOptScanModuleState', 'post', () => { return { dataType: 'IncubationPlate', data: runningList, timestamp: Date.now(), success: true, } }, ) //获取试管架状态 Mock.mock( BaseUrl + '/api/v1/app/deviceState/getTubeHolderState', 'post', () => { return mockTubeRackResponse }, )