import Mock from 'mockjs' // 导入所有的类型 import type { ConsumablesScanResultData, ConsumablesOneChannel, } from '../../types/Index/index' const consumablesScanResultData: ConsumablesScanResultData = Mock.mock({ scanReports: [ //扫描后应该给用户一个反馈,反馈信息根据这个结果来给用户呈现,弹窗呈现 { chNum: 0, report: 'PASS', //PASS表示扫描没问题,详细信息查看 scanResult.state包含的种类 projId: 1, lotId: 'FA010000', }, { chNum: 1, report: 'PASS', projId: 2, lotId: 'FA020000', }, { chNum: 2, report: 'PASS', projId: 3, lotId: 'FA030000', }, { chNum: 3, report: 'PASS', projId: 4, lotId: 'FA040000', }, { chNum: 4, report: 'PASS', projId: 5, lotId: 'FA050000', }, { chNum: 5, report: 'PASS', projId: 6, lotId: 'FA060000', }, ], scanRawResults: [ { chNum: 0, PBScanResult: '1||FA010000||2024.10.29||0||0', littBSScanResult: 'FA010000', larBSScanResult: 'FA010000', }, { chNum: 1, PBScanResult: '1||FA020000||2024.10.29||0||0', littBSScanResult: 'FA020000', larBSScanResult: 'FA020000', }, { chNum: 2, PBScanResult: '1||FA030000||2024.10.29||0||0', littBSScanResult: 'FA030000', larBSScanResult: 'FA030000', }, { chNum: 3, PBScanResult: '1||FA040000||2024.10.29||0||0', littBSScanResult: 'FA040000', larBSScanResult: 'FA040000', }, { chNum: 4, PBScanResult: '1||FA050000||2024.10.29||0||0', littBSScanResult: 'FA050000', larBSScanResult: 'FA050000', }, { chNum: 5, PBScanResult: '1||FA060000||2024.10.29||0||0', littBSScanResult: 'FA060000', larBSScanResult: 'FA060000', }, ], consumableState: { scanDate: 1730195920858, tips: [ { tipNum: 20, //tip头数量,第一次扫描后台返回0,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { tipNum: 30, }, { tipNum: 40, }, ], reactionPlateGroup: [ //反应板夹 { projId: 1, //项目编号,项目唯一ID,在配置试管页面选择项目时传递的是projIndex,以后改成projId projName: 'hscRP', //项目名称 projShortName: 'CA', //缩写名称(页面显示这个名称) lotId: 'CAHAC46U', //批次号(会存在一个项目有两个批次号) color: '#FFC0CB', //UI颜色,后台分配,前端直接显示 enable: false, //忽略掉,暂时没用 num: 25, //第一次扫描后台返回25,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { projId: 2, projName: 'FA02', projShortName: 'FA', color: '#DC143C', lotId: 'FA020000', num: 25, }, { projId: 3, projName: 'FA03', projShortName: 'FA', lotId: 'FA030000', color: '#DB7093', num: 25, }, { projId: 4, projName: 'FA04', projShortName: 'FA', lotId: 'FA040000', color: '#FF69B4', num: 25, }, { projId: 5, projName: 'FA05', projShortName: 'FA', lotId: 'FA050000', color: '#FF1493', num: 25, }, { projId: 6, projName: 'FA06', projShortName: 'FA', lotId: 'FA060000', color: '#C71585', num: 25, }, ], littBottleGroup: [ //小缓冲液或者探测物质 { projId: 1, projName: 'FA01', projShortName: 'FA', type: 'BufferSolution', //项目组合有两种方式 1:反应板夹+小缓冲液 2:反应板夹+探测物质+大缓冲液 lotId: 'FA010000', color: '#FFC0CB', num: 25, //第一次扫描后台返回25,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { projId: 2, projName: 'FA02', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA020000', color: '#DC143C', num: 25, }, { projId: 3, projName: 'FA03', projShortName: 'FA', type: 'BufferSolution', lotId: 'FA030000', color: '#DB7093', num: 25, }, { projId: 4, projName: 'FA04', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA040000', color: '#FF69B4', num: 25, }, { projId: 5, projName: 'FA05', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA050000', color: '#FF1493', num: 25, }, { projId: 6, projName: 'FA06', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA060000', color: '#C71585', num: 25, }, ], larBottleGroup: [ { lotId: '', color: '', num: 0, isInstall: false, }, { projId: 2, projName: 'FA02', projShortName: 'FA', lotId: 'FA020000', color: '#DC143C', num: 25, isInstall: true, }, { lotId: '', color: '', num: 0, isInstall: false, }, { projId: 4, projName: 'FA04', projShortName: 'FA', lotId: 'FA040000', color: '#FF69B4', num: 25, isInstall: true, }, { projId: 5, projName: 'FA05', projShortName: 'FA', lotId: 'FA050000', color: '#FF1493', num: 25, isInstall: true, }, { projId: 6, projName: 'FA06', projShortName: 'FA', lotId: 'FA060000', color: '#C71585', num: 25, isInstall: true, }, ], }, }) const consumableOneChannelData: ConsumablesOneChannel = Mock.mock({ scanReport: { chNum: 0, report: 'PASS', projId: 1, lotId: 'FA010000', }, scanRawResult: { chNum: 0, PBScanResult: '1||FA010000||2024.10.29||0||0', littBSScanResult: 'FA010000', larBSScanResult: 'FA010000', }, consumableState: { scanDate: 1730195920858, tips: [ { tipNum: 0, //tip头数量,第一次扫描后台返回0,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { tipNum: 0, }, { tipNum: 0, }, ], reactionPlateGroup: [ //反应板夹 { projId: 1, //项目编号,项目唯一ID,在配置试管页面选择项目时传递的是projIndex,以后改成projId projName: 'hscRP', //项目名称 projShortName: 'CA', //缩写名称(页面显示这个名称) lotId: 'CAHAC46U', //批次号(会存在一个项目有两个批次号) color: '#FFC0CB', //UI颜色,后台分配,前端直接显示 enable: false, //忽略掉,暂时没用 num: 25, //第一次扫描后台返回25,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { projId: 2, projName: 'FA02', projShortName: 'FA', lotId: 'FA020000', color: '#DC143C', num: 25, }, { projId: 3, projName: 'FA03', projShortName: 'FA', lotId: 'FA030000', color: '#DB7093', num: 25, }, { projId: 4, projName: 'FA04', projShortName: 'FA', lotId: 'FA040000', color: '#FF69B4', num: 25, }, { projId: 5, projName: 'FA05', projShortName: 'FA', lotId: 'FA050000', color: '#FF1493', num: 25, }, { projId: 6, projName: 'FA06', projShortName: 'FA', lotId: 'FA060000', color: '#C71585', num: 25, }, ], littBottleGroup: [ //小缓冲液或者探测物质 { projId: 1, projName: 'FA01', projShortName: 'FA', type: 'BufferSolution', //项目组合有两种方式 1:反应板夹+小缓冲液 2:反应板夹+探测物质+大缓冲液 lotId: 'FA010000', color: '#FFC0CB', num: 25, //第一次扫描后台返回25,当前端设置了数量后,当再次扫描是这个数量就会变成前端的设置值 }, { projId: 2, projName: 'FA02', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA020000', color: '#DC143C', num: 25, }, { projId: 3, projName: 'FA03', projShortName: 'FA', type: 'BufferSolution', lotId: 'FA030000', color: '#DB7093', num: 25, }, { projId: 4, projName: 'FA04', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA040000', color: '#FF69B4', num: 25, }, { projId: 5, projName: 'FA05', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA050000', color: '#FF1493', num: 25, }, { projId: 6, projName: 'FA06', projShortName: 'FA', type: 'ProbeSubstance', lotId: 'FA060000', color: '#C71585', num: 25, }, ], larBottleGroup: [ { lotId: '', color: '', num: 0, isInstall: false, }, { projId: 2, projName: 'FA02', projShortName: 'FA', lotId: 'FA020000', color: '#DC143C', num: 25, isInstall: true, }, { lotId: '', color: '', num: 0, isInstall: false, }, { projId: 4, projName: 'FA04', projShortName: 'FA', lotId: 'FA040000', color: '#FF69B4', num: 25, isInstall: true, }, { projId: 5, projName: 'FA05', projShortName: 'FA', lotId: 'FA050000', color: '#FF1493', num: 25, isInstall: true, }, { projId: 6, projName: 'FA06', projShortName: 'FA', lotId: 'FA060000', color: '#C71585', num: 25, isInstall: true, }, ], }, }) const BaseUrl = 'http://localhost:5173' //id卡信息 const idCardInfo = [ { id: 7, color: '#FFC0CB', projName: 'hsCRP', lotId: 'CAHAC46U', expiryDate: 1725638400000, projId: 1, palteCode: 9, updateChipVersion: 5, }, { id: 6, color: '#C71585', projName: 'FA06', lotId: 'FA060000', expiryDate: 1730282880209, projId: 6, palteCode: 0, updateChipVersion: 1, }, { id: 5, color: '#FF1493', projName: 'FA05', lotId: 'FA050000', expiryDate: 1730282880202, projId: 5, palteCode: 0, updateChipVersion: 1, }, { id: 4, color: '#FF69B4', projName: 'FA04', lotId: 'FA040000', expiryDate: 1730282880191, projId: 4, palteCode: 0, updateChipVersion: 1, }, { id: 3, color: '#DB7093', projName: 'FA03', lotId: 'FA030000', expiryDate: 1730282880183, projId: 3, palteCode: 0, updateChipVersion: 1, }, ] //耗材扫描接口 Mock.mock( BaseUrl + '/api/v1/app/consumableScan/scanConsumables', 'post', () => { return { dataType: 'ConsumablesScanResultPacket', data: consumablesScanResultData, timestamp: 1730195948938, success: true, } }, ) //耗材扫描单组接口 Mock.mock( BaseUrl + '/api/v1/app/consumableScan/scanOneGroupConsumables', 'post', () => { return { dataType: 'ConsumablesOneChannelScanResultPacket', data: consumableOneChannelData, timestamp: 1730196482827, success: true, } }, ) //修改反应板夹的数量接口 Mock.mock( BaseUrl + '/api/v1/app/consumablesMgr/setCounsumableNum', 'post', (options) => { const body = JSON.parse(options.body) console.log(body) return { timestamp: 1730196482827, success: true, } }, ) const wasteData = Mock.mock({ pboxTemperature: 25, //可能是处理箱的温度? incubateBoxTemperature: 25, //孵育箱的温度 wasteBinFullFlag: '@boolean', //废料仓状态 }) const idEventList = ['AppIDCardMountEvent', 'AppIDCardUnmountEvent'] //模拟id卡事件 const idCardEvent = Mock.mock({ //从idEventList中随机选择一个 typeName: `@pick(${idEventList})`, }) //废料区接口查询 Mock.mock(BaseUrl + '/api/v1/app/deviceState/getSensorState', 'post', () => { return { dataType: 'SensorState', data: wasteData, timestamp: 1730202043994, success: true, } }) //id卡信息查询 Mock.mock(BaseUrl + '/api/v1/app/a8kProjectCard/get', 'post', () => { return { dataType: 'IdCardInfo', data: { pageNum: 0, pageSize: 5, totalPage: 2, total: 7, list: idCardInfo, }, timestamp: Date.now(), success: true, } }) //id卡事件查询 Mock.mock(BaseUrl + '/api/v1/idcard/event', 'post', () => { if (idCardEvent.typeName === 'AppIDCardMountEvent') { return { dataType: 'ArrayList', data: [ { typeName: 'AppIDCardMountEvent', timestamp: 1730185235, projectInfo: { id: 0, projName: 'hsCRP', lotId: 'CAHAC46U', expiryDate: 1725638400000, projId: 1, palteCode: 9, updateChipVersion: 5, }, }, ], timestamp: 1730185238982, success: true, } } else { return { dataType: 'ArrayList', data: [ { typeName: 'AppIDCardUnmountEvent', timestamp: 1730185276, }, ], timestamp: 1730185281523, success: true, } } }) //保存id Mock.mock( BaseUrl + '/api/v1/app/a8kProjectCard/saveMountedCardInfo', 'post', () => { return { timestamp: 1730197044478, success: true, } }, )