| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- /** 登记未用完物料 · Demo 模拟数据 */
- const DEMO_UNUSED_LINES = [
- {
- id: 1,
- fromBatch: true,
- stockInNo: 'RK202506001',
- stockInDate: '2025-06-01',
- expireDate: '2026-12-31',
- materialCode: 'QC-M-001',
- materialName: '胎牛血清 FBS',
- specModel: '500ml/瓶',
- unit: '瓶',
- catalogNo: 'SH30071.03',
- batchNo: 'A241205',
- manufacturer: 'HyClone',
- unitPrice: 1280,
- unusedQty: 2,
- holder: '张三',
- remark: ''
- },
- {
- id: 2,
- fromBatch: true,
- stockInNo: 'RK202506008',
- stockInDate: '2025-06-03',
- expireDate: '2026-08-15',
- materialCode: 'QC-M-012',
- materialName: 'DMEM 高糖培养基',
- specModel: '500ml',
- unit: '瓶',
- catalogNo: 'C11995500BT',
- batchNo: 'B250301',
- manufacturer: 'Gibco',
- unitPrice: 86.5,
- unusedQty: 5,
- holder: '李四',
- remark: '4℃ 存放'
- },
- {
- id: 3,
- fromBatch: true,
- stockInNo: 'RK202506015',
- stockInDate: '2025-06-05',
- expireDate: '2027-01-20',
- materialCode: 'QC-M-028',
- materialName: '青霉素-链霉素双抗',
- specModel: '100ml',
- unit: '瓶',
- catalogNo: '15140122',
- batchNo: 'PS24088',
- manufacturer: 'Thermo',
- unitPrice: 245,
- unusedQty: 1,
- holder: '王五',
- remark: ''
- },
- {
- id: 4,
- fromBatch: true,
- stockInNo: 'RK202506022',
- stockInDate: '2025-06-08',
- expireDate: '2026-05-30',
- materialCode: 'QC-M-045',
- materialName: '0.25% 胰酶-EDTA',
- specModel: '100ml',
- unit: '瓶',
- catalogNo: '25200072',
- batchNo: 'T241102',
- manufacturer: 'Gibco',
- unitPrice: 168,
- unusedQty: 3,
- holder: '赵六',
- remark: ''
- },
- {
- id: 5,
- fromBatch: true,
- stockInNo: 'RK202506031',
- stockInDate: '2025-06-10',
- expireDate: '2026-11-01',
- materialCode: 'QC-M-067',
- materialName: 'PBS 缓冲液',
- specModel: '500ml',
- unit: '瓶',
- catalogNo: '10010023',
- batchNo: 'P250115',
- manufacturer: 'HyClone',
- unitPrice: 32,
- unusedQty: 8,
- holder: '张三',
- remark: ''
- },
- {
- id: 6,
- fromBatch: false,
- stockInNo: '',
- stockInDate: '',
- expireDate: '',
- materialCode: '',
- materialName: '细胞冻存液 DMSO 配方',
- specModel: '50ml',
- unit: '瓶',
- catalogNo: '',
- batchNo: '手工-001',
- manufacturer: '自配',
- unitPrice: 0,
- unusedQty: 2,
- holder: '李四',
- remark: '非系统批次'
- },
- {
- id: 7,
- fromBatch: true,
- stockInNo: 'RK202506044',
- stockInDate: '2025-06-12',
- expireDate: '2026-09-20',
- materialCode: 'QC-M-089',
- materialName: '细胞计数板',
- specModel: '一次性',
- unit: '盒',
- catalogNo: 'C-Chip DHC-N01',
- batchNo: 'CC250601',
- manufacturer: 'NanoEntek',
- unitPrice: 420,
- unusedQty: 1,
- holder: '王五',
- remark: ''
- },
- {
- id: 8,
- fromBatch: true,
- stockInNo: 'RK202506051',
- stockInDate: '2025-06-14',
- expireDate: '2026-06-14',
- materialCode: 'QC-M-102',
- materialName: '无血清培养添加物',
- specModel: '10ml',
- unit: '支',
- catalogNo: 'A1349801',
- batchNo: 'S241208',
- manufacturer: 'Gibco',
- unitPrice: 890,
- unusedQty: 4,
- holder: '赵六',
- remark: ''
- },
- {
- id: 9,
- fromBatch: true,
- stockInNo: 'RK202506058',
- stockInDate: '2025-06-15',
- expireDate: '2027-03-10',
- materialCode: 'QC-M-115',
- materialName: '支原体检测试剂盒',
- specModel: '20T',
- unit: '盒',
- catalogNo: 'MP00250',
- batchNo: 'M250401',
- manufacturer: 'Lonza',
- unitPrice: 3200,
- unusedQty: 1,
- holder: '张三',
- remark: '留样'
- },
- {
- id: 10,
- fromBatch: true,
- stockInNo: 'RK202506063',
- stockInDate: '2025-06-16',
- expireDate: '2026-04-01',
- materialCode: 'QC-M-128',
- materialName: 'DAPI 染色液',
- specModel: '1mg',
- unit: '支',
- catalogNo: 'D9542',
- batchNo: 'D241015',
- manufacturer: 'Sigma',
- unitPrice: 156,
- unusedQty: 2,
- holder: '李四',
- remark: ''
- }
- ]
- function formatMoney(v) {
- if (v == null || v === '' || Number.isNaN(Number(v))) return '—'
- return Number(v).toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 })
- }
- function calcAmount(unitPrice, qty) {
- return (Number(unitPrice) || 0) * (Number(qty) || 0)
- }
- function materialSummary(row) {
- const parts = [row.materialName]
- if (row.batchNo) parts.push(`批号 ${row.batchNo}`)
- if (row.stockInNo) parts.push(row.stockInNo)
- return parts.join(' · ')
- }
|