A8000
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

638 lines
14 KiB

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,
}
},
)