refactor(CoilSelector): 修改change事件返回参数包含完整钢卷信息 chore: 添加打包模块相关图标和API文件 test: 添加打包模块单元测试 docs: 更新打包模块API文档
289 lines
6.4 KiB
JavaScript
289 lines
6.4 KiB
JavaScript
/**
|
|
* 打包模块 API 测试用例
|
|
* 测试打包单据和明细表相关的 API 接口
|
|
*/
|
|
|
|
import { expect, test, describe, beforeEach, afterEach, jest } from '@jest/globals';
|
|
|
|
// Mock request 模块
|
|
jest.mock('@/utils/request', () => ({
|
|
default: jest.fn(() => Promise.resolve({ code: 200, data: {} }))
|
|
}));
|
|
|
|
import {
|
|
listPacking,
|
|
getPacking,
|
|
addPacking,
|
|
updatePacking,
|
|
delPacking,
|
|
listPackingDetail,
|
|
listPackedCoil,
|
|
addPackingDetail,
|
|
updatePackingDetail,
|
|
delPackingDetail,
|
|
batchAddPackingDetail,
|
|
getPackingByNo,
|
|
submitPacking,
|
|
cancelSubmitPacking
|
|
} from './packing';
|
|
|
|
import request from '@/utils/request';
|
|
|
|
describe('Packing API Tests', () => {
|
|
beforeEach(() => {
|
|
jest.clearAllMocks();
|
|
});
|
|
|
|
describe('打包单据主表 API', () => {
|
|
test('listPacking - 查询打包单据列表', () => {
|
|
const query = {
|
|
pageNum: 1,
|
|
pageSize: 20,
|
|
packingNo: 'PK20260323001'
|
|
};
|
|
|
|
listPacking(query);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
});
|
|
|
|
test('getPacking - 查询单个打包单据详情', () => {
|
|
const packingId = '1';
|
|
|
|
getPacking(packingId);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/1',
|
|
method: 'get'
|
|
});
|
|
});
|
|
|
|
test('addPacking - 新增打包单据', () => {
|
|
const data = {
|
|
batchNo: 'BATCH001',
|
|
packingDate: '2026-03-23',
|
|
team: '甲',
|
|
operator: '张三',
|
|
remark: '测试备注'
|
|
};
|
|
|
|
addPacking(data);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
});
|
|
|
|
test('updatePacking - 修改打包单据', () => {
|
|
const data = {
|
|
packingId: '1',
|
|
batchNo: 'BATCH001',
|
|
packingDate: '2026-03-23',
|
|
team: '甲',
|
|
operator: '张三',
|
|
remark: '修改后的备注'
|
|
};
|
|
|
|
updatePacking(data);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
});
|
|
|
|
test('delPacking - 删除打包单据', () => {
|
|
const packingId = '1';
|
|
|
|
delPacking(packingId);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/1',
|
|
method: 'delete'
|
|
});
|
|
});
|
|
|
|
test('getPackingByNo - 根据单据号查询打包单据', () => {
|
|
const packingNo = 'PK20260323001';
|
|
|
|
getPackingByNo(packingNo);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/no/PK20260323001',
|
|
method: 'get'
|
|
});
|
|
});
|
|
|
|
test('submitPacking - 提交打包单据', () => {
|
|
const packingId = '1';
|
|
|
|
submitPacking(packingId);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/submit/1',
|
|
method: 'post'
|
|
});
|
|
});
|
|
|
|
test('cancelSubmitPacking - 取消提交打包单据', () => {
|
|
const packingId = '1';
|
|
|
|
cancelSubmitPacking(packingId);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/cancelSubmit/1',
|
|
method: 'post'
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('打包明细表 API', () => {
|
|
test('listPackingDetail - 查询打包明细列表', () => {
|
|
const query = {
|
|
packingId: '1',
|
|
pageNum: 1,
|
|
pageSize: 20
|
|
};
|
|
|
|
listPackingDetail(query);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packingDetail/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
});
|
|
|
|
test('addPackingDetail - 新增打包明细', () => {
|
|
const data = {
|
|
packingId: '1',
|
|
coilId: '1001',
|
|
coilNo: '26L0312345',
|
|
itemName: '镀锌板',
|
|
specification: '1.0*1000*C',
|
|
material: 'DX51D+Z',
|
|
netWeight: 5.5,
|
|
beforePosition: 'A区01号位',
|
|
afterPosition: ''
|
|
};
|
|
|
|
addPackingDetail(data);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packingDetail',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
});
|
|
|
|
test('updatePackingDetail - 修改打包明细', () => {
|
|
const data = {
|
|
detailId: '1',
|
|
packingId: '1',
|
|
afterPosition: 'B区02号位'
|
|
};
|
|
|
|
updatePackingDetail(data);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packingDetail',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
});
|
|
|
|
test('delPackingDetail - 删除打包明细', () => {
|
|
const detailId = '1';
|
|
|
|
delPackingDetail(detailId);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packingDetail/1',
|
|
method: 'delete'
|
|
});
|
|
});
|
|
|
|
test('batchAddPackingDetail - 批量新增打包明细', () => {
|
|
const data = [
|
|
{
|
|
packingId: '1',
|
|
coilId: '1001',
|
|
coilNo: '26L0312345',
|
|
itemName: '镀锌板',
|
|
specification: '1.0*1000*C',
|
|
material: 'DX51D+Z',
|
|
netWeight: 5.5,
|
|
beforePosition: 'A区01号位',
|
|
afterPosition: ''
|
|
},
|
|
{
|
|
packingId: '1',
|
|
coilId: '1002',
|
|
coilNo: '26L0312346',
|
|
itemName: '镀锌板',
|
|
specification: '1.0*1000*C',
|
|
material: 'DX51D+Z',
|
|
netWeight: 5.2,
|
|
beforePosition: 'A区02号位',
|
|
afterPosition: ''
|
|
}
|
|
];
|
|
|
|
batchAddPackingDetail(data);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packingDetail/batch',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('已打包钢卷查询 API', () => {
|
|
test('listPackedCoil - 查询已打包钢卷列表', () => {
|
|
const query = {
|
|
pageNum: 1,
|
|
pageSize: 20,
|
|
packingNo: 'PK20260323001',
|
|
batchNo: 'BATCH001',
|
|
coilNo: '26L0312345',
|
|
team: '甲'
|
|
};
|
|
|
|
listPackedCoil(query);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/packedCoilList',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
});
|
|
|
|
test('listPackedCoil - 带日期范围参数查询已打包钢卷', () => {
|
|
const query = {
|
|
pageNum: 1,
|
|
pageSize: 20,
|
|
params: {
|
|
beginPackingDate: '2026-03-01',
|
|
endPackingDate: '2026-03-31'
|
|
}
|
|
};
|
|
|
|
listPackedCoil(query);
|
|
|
|
expect(request).toHaveBeenCalledWith({
|
|
url: '/wms/packing/packedCoilList',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
});
|
|
});
|
|
});
|