package cn.iocoder.yudao.module.mes.service.wm.materialstock;
|
|
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockPageReqVO;
|
import cn.iocoder.yudao.module.mes.dal.mysql.wm.materialstock.MesWmMaterialStockMapper;
|
import jakarta.annotation.Resource;
|
import org.junit.jupiter.api.Test;
|
import org.springframework.jdbc.core.JdbcTemplate;
|
import javax.sql.DataSource;
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
class MesWmMaterialStockSearchTest extends BaseDbUnitTest {
|
@Resource private MesWmMaterialStockMapper mapper;
|
@Resource private DataSource dataSource;
|
|
@Test void filtersItemNameCodeVendorAndMdmIdBeforePagination() {
|
JdbcTemplate jdbc = new JdbcTemplate(dataSource);
|
jdbc.execute("ALTER TABLE mes_wm_material_stock ADD COLUMN IF NOT EXISTS frozen_quantity DECIMAL(14,2)");
|
jdbc.execute("ALTER TABLE mes_wm_material_stock ADD COLUMN IF NOT EXISTS reserved_quantity DECIMAL(14,2)");
|
jdbc.execute("ALTER TABLE mes_wm_material_stock ADD COLUMN IF NOT EXISTS in_transit_quantity DECIMAL(14,2)");
|
jdbc.execute("CREATE TABLE IF NOT EXISTS mdm_item (id BIGINT PRIMARY KEY, name VARCHAR(100), code VARCHAR(100), deleted BOOLEAN)");
|
jdbc.execute("CREATE TABLE IF NOT EXISTS srm_supplier (id BIGINT PRIMARY KEY, name VARCHAR(100), deleted BOOLEAN)");
|
jdbc.update("INSERT INTO mdm_item VALUES (901, '黑枸杞', 'E2E-901', FALSE), (902, '黄芪', 'E2E-902', FALSE)");
|
jdbc.update("INSERT INTO srm_supplier VALUES (801, '测试供应商', FALSE), (802, '其他供应商', FALSE)");
|
jdbc.update("INSERT INTO mes_wm_material_stock (item_id, vendor_id, quantity) VALUES (901, 801, 1), (902, 802, 1)");
|
var req = new MesWmMaterialStockPageReqVO();
|
req.setItemName("枸杞");
|
assertEquals(1L, mapper.selectPage(req, null, null, null).getTotal());
|
req.setItemName("E2E-901");
|
req.setVendorName("测试");
|
assertEquals(1L, mapper.selectPage(req, null, null, null).getTotal());
|
req.setMdmItemId(902L);
|
assertEquals(0L, mapper.selectPage(req, null, null, null).getTotal());
|
req.setItemName("不存在");
|
req.setMdmItemId(null);
|
assertEquals(0L, mapper.selectPage(req, null, null, null).getTotal());
|
}
|
}
|