昨天 10dd6590cea8f20eff21025ee71c8a614a48cdb7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import type { PageParam, PageResult } from '@vben/request';
 
import { requestClient } from '#/api/request';
 
export namespace MesTraceIntegrityApi {
  /** 数据完整性校验结果 */
  export interface VerifyResult {
    bizType?: string; // 业务类型:BATCH / SALES / SCAN
    bizId?: number; // 业务记录编号
    bizCode?: string; // 业务编码
    matched?: boolean; // 是否校验通过
    storedHash?: string; // 存储的摘要 SHA-256
    currentHash?: string; // 当前数据重算摘要 SHA-256
    bagSetHash?: string; // 批次当前袋码集合摘要(仅 BATCH 校验返回)
    message?: string; // 校验说明
  }
 
  /** 数据完整性记录 */
  export interface Record {
    id?: number; // 编号
    bizType?: string; // 业务类型
    bizId?: number; // 业务记录编号
    bizCode?: string; // 业务编码
    contentHash?: string; // 内容摘要 SHA-256
    eventTime?: string; // 摘要生成时间
  }
 
  /** 数据完整性记录分页查询参数 */
  export interface PageParams extends PageParam {
    bizType?: string;
    bizId?: number;
    bizCode?: string;
  }
}
 
/** 校验数据完整性(重算摘要比对) */
export function verifyTraceIntegrity(bizType: string, bizId: number) {
  return requestClient.get<MesTraceIntegrityApi.VerifyResult>(
    '/mes/trace-integrity/verify',
    { params: { bizType, bizId } },
  );
}
 
/** 获得数据完整性记录分页 */
export function getTraceIntegrityPage(
  params: MesTraceIntegrityApi.PageParams,
) {
  return requestClient.get<PageResult<MesTraceIntegrityApi.Record>>(
    '/mes/trace-integrity/page',
    { params },
  );
}