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

605 lines
26 KiB
Vue

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<div class="p-2">
<transition :enter-active-class="proxy?.animate.searchAnimate.enter"
:leave-active-class="proxy?.animate.searchAnimate.leave">
<div v-show="showSearch" class="mb-[10px]">
<el-card shadow="hover">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<!-- <el-form-item label="盘点记录主键" prop="icRecordId">
<el-input v-model="queryParams.icRecordId" placeholder="请输入盘点记录主键" clearable @keyup.enter="handleQuery" />
</el-form-item> -->
<el-form-item label="物料大类" prop="materialCategoryId">
<el-select v-model="queryParams.materialCategoryId" placeholder="请选择物料大类" clearable>
<el-option v-for="item in mategoryOptions"
:key="item.materialCategoryId"
:label="item.materialCategoryName"
:value="item.materialCategoryId"
/>
</el-select>
</el-form-item>
<el-form-item label="盘点单号" prop="checkCode">
<el-input v-model="queryParams.checkCode" placeholder="请输入盘点单号" clearable
@keyup.enter="handleQuery"/>
</el-form-item>
<el-form-item label="批次码" prop="batchCode">
<el-input v-model="queryParams.batchCode" placeholder="请输入批次码" clearable
@keyup.enter="handleQuery"/>
</el-form-item>
<!-- <el-form-item label="物料id" prop="materialId">
<el-input v-model="queryParams.materialId" placeholder="请输入物料id" clearable @keyup.enter="handleQuery" />
</el-form-item> -->
<el-form-item label="库位编码" prop="locationCode">
<el-input v-model="queryParams.locationCode" placeholder="请输入库位编码" clearable
@keyup.enter="handleQuery"/>
</el-form-item>
<el-form-item label="物料编码" prop="materialCode">
<el-input v-model="queryParams.materialCode" placeholder="请输入物料编码" clearable
@keyup.enter="handleQuery"/>
</el-form-item>
<el-form-item label="物料名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入物料名称" clearable
@keyup.enter="handleQuery"/>
</el-form-item>
<!-- <el-form-item label="库存数量" prop="inventoryQty">
<el-input v-model="queryParams.inventoryQty" placeholder="请输入库存数量" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="盘点数量" prop="checkQty">
<el-input v-model="queryParams.checkQty" placeholder="请输入盘点数量" clearable @keyup.enter="handleQuery" />
</el-form-item> -->
<!-- <el-form-item label="盘点状态(0异常1正常)" prop="checkStatus">
<el-select v-model="queryParams.checkStatus" placeholder="请选择盘点状态(0异常1正常)" clearable >
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="erp同步状态" prop="erpSynchronousStatus">
<el-select v-model="queryParams.erpSynchronousStatus" placeholder="请选择erp同步状态" clearable >
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item> -->
<!-- <el-form-item label="erp同步数量" prop="erpSynchronousQty">
<el-input v-model="queryParams.erpSynchronousQty" placeholder="请输入erp同步数量" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="是否发起调整" prop="isAdjust">
<el-input v-model="queryParams.isAdjust" placeholder="请输入是否发起调整" clearable @keyup.enter="handleQuery" />
</el-form-item> -->
<!-- <el-form-item label="审核人" prop="auditBy">
<el-input v-model="queryParams.auditBy" placeholder="请输入审核人" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="YYYY-MM-DD"
placeholder="请选择审核时间"
/>
</el-form-item> -->
<!-- <el-form-item label="审核状态(0待审核,1审核通过,2审核未通过)" prop="auditStatus">
<el-select v-model="queryParams.auditStatus" placeholder="请选择审核状态(0待审核,1审核通过,2审核未通过)" clearable >
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="审核意见" prop="auditComments">
<el-input v-model="queryParams.auditComments" placeholder="请输入审核意见" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="调整状态" prop="adjustStatus">
<el-select v-model="queryParams.adjustStatus" placeholder="请选择调整状态" clearable >
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="调整类型" prop="adjustType">
<el-select v-model="queryParams.adjustType" placeholder="请选择调整类型" clearable >
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item> -->
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</el-card>
</div>
</transition>
<el-card shadow="never">
<template #header>
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['system:inventoryCheckRecord:add']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['system:inventoryCheckRecord:edit']">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['system:inventoryCheckRecord:remove']">删除</el-button>
</el-col> -->
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" @click="handleExport"
v-hasPermi="['system:inventoryCheckRecord:export']">导出
</el-button>
</el-col>
<right-toolbar v-model:showSearch="showSearch" :columns="columns" :search="true"
@queryTable="getList"></right-toolbar>
</el-row>
</template>
<el-table v-loading="loading" :data="inventoryCheckRecordList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/>
<!-- <el-table-column label="盘点记录主键" align="center" prop="icRecordId" v-if="columns[0].visible"/>-->
<!-- <el-table-column label="物料大类" align="center" prop="materialCategoryName" v-if="columns[1].visible">-->
<!-- </el-table-column>-->
<el-table-column label="盘点单号" align="center" prop="checkCode" v-if="columns[2].visible"/>
<el-table-column label="批次码" align="center" prop="batchCode" v-if="columns[3].visible"/>
<el-table-column label="库位编码" align="center" prop="locationCode" v-if="columns[5].visible"/>
<el-table-column label="物料编码" align="center" prop="materialCode" v-if="columns[6].visible"/>
<el-table-column label="物料名称" align="center" prop="materialName" v-if="columns[7].visible"/>
<el-table-column label="库存数量" align="center" prop="inventoryQty" v-if="columns[8].visible"/>
<el-table-column label="盘点数量" align="center" prop="checkQty" v-if="columns[9].visible"/>
<el-table-column label="盘点状态" align="center" prop="checkStatus" v-if="columns[12].visible">
<template #default="scope">
<dict-tag :options="wms_stock_result" :value="scope.row.checkStatus"/>
</template>
</el-table-column>
<!-- <el-table-column label="erp同步状态" align="center" prop="erpSynchronousStatus" v-if="columns[13].visible">-->
<!-- <template #default="scope">-->
<!-- <dict-tag :options="erp_synchronous_status" :value="scope.row.erpSynchronousStatus"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="erp同步数量" align="center" prop="erpSynchronousQty" v-if="columns[14].visible"/>-->
<el-table-column label="是否发起调整" align="center" prop="isAdjust" v-if="columns[15].visible">
<template #default="scope">
<dict-tag :options="wms_stock_if" :value="scope.row.isAdjust"/>
</template>
</el-table-column>
<!-- <el-table-column label="审核人" align="center" prop="auditBy" v-if="columns[16].visible"/>-->
<!-- <el-table-column label="审核时间" align="center" prop="auditTime" width="180" v-if="columns[17].visible">-->
<!-- <template #default="scope">-->
<!-- <span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="审核状态" align="center" prop="auditStatus" v-if="columns[18].visible">-->
<!-- <template #default="scope">-->
<!-- <dict-tag :options="approve_status" :value="scope.row.auditStatus"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="审核意见" align="center" prop="auditComments" v-if="columns[19].visible"/>-->
<el-table-column label="调整状态" align="center" prop="adjustStatus" v-if="columns[20].visible">
<template #default="scope">
<dict-tag :options="wms_stockadjust_status" :value="scope.row.adjustStatus"/>
</template>
</el-table-column>
<!-- <el-table-column label="调整类型" align="center" prop="adjustType" v-if="columns[21].visible">-->
<!-- <template #default="scope">-->
<!-- <dict-tag :options="wms_stockadjust_type" :value="scope.row.adjustType"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-tooltip content="修改" placement="top">
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
v-hasPermi="['system:inventoryCheckRecord:edit']"></el-button>
</el-tooltip>
<el-tooltip content="删除" placement="top">
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
v-hasPermi="['system:inventoryCheckRecord:remove']"></el-button>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList"/>
</el-card>
<!-- 添加或修改盘点记录和调整工单对话框 -->
<el-dialog :title="dialog.title" v-model="dialog.visible" width="500px" append-to-body>
<el-form ref="inventoryCheckRecordFormRef" :model="form" :rules="rules" label-width="80px">
<!-- <el-form-item label="盘点记录主键" prop="icRecordId">
<el-input v-model="form.icRecordId" placeholder="请输入盘点记录主键" />
</el-form-item> -->
<el-form-item label="物料大类" prop="materialCategoryId">
<el-select v-model="form.materialCategoryId" placeholder="请选择物料大类">
<el-option v-for="item in mategoryOptions"
:key="item.materialCategoryId"
:label="item.materialCategoryName"
:value="item.materialCategoryId"
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="盘点单号" prop="checkCode">
<el-input v-model="form.checkCode" placeholder="请输入盘点单号" />
</el-form-item> -->
<el-form-item label="批次码" prop="batchCode">
<el-input v-model="form.batchCode" placeholder="请输入批次码"/>
</el-form-item>
<el-form-item label="物料id" prop="materialId">
<el-input v-model="form.materialId" placeholder="请输入物料id"/>
</el-form-item>
<el-form-item label="库位编码" prop="locationCode">
<el-input v-model="form.locationCode" placeholder="请输入库位编码"/>
</el-form-item>
<!-- <el-form-item label="物料编码" prop="materialCode">
<el-input v-model="form.materialCode" placeholder="请输入物料编码" />
</el-form-item>
<el-form-item label="物料名称" prop="materialName">
<el-input v-model="form.materialName" placeholder="请输入物料名称" />
</el-form-item>
<el-form-item label="库存数量" prop="inventoryQty">
<el-input v-model="form.inventoryQty" placeholder="请输入库存数量" />
</el-form-item> -->
<el-form-item label="盘点数量" prop="checkQty">
<el-input v-model="form.checkQty" placeholder="请输入盘点数量"/>
</el-form-item>
<!-- <el-form-item label="盘点结果" prop="checkStatus">
<el-radio-group v-model="form.checkStatus">
<el-radio
v-for="dict in wms_stock_result"
:key="dict.value"
:value="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item> -->
<!-- <el-form-item label="erp同步状态" prop="erpSynchronousStatus">
<el-radio-group v-model="form.erpSynchronousStatus">
<el-radio
v-for="dict in erp_synchronous_status"
:key="dict.value"
:value="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item> -->
<el-form-item label="erp同步数量" prop="erpSynchronousQty">
<el-input v-model="form.erpSynchronousQty" placeholder="请输入erp同步数量"/>
</el-form-item>
<el-form-item label="是否发起调整" prop="isAdjust">
<el-radio-group v-model="form.isAdjust">
<el-radio
v-for="dict in wms_stock_if"
:key="dict.value"
:value="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="审核人" prop="auditBy">
<el-input v-model="form.auditBy" placeholder="请输入审核人"/>
</el-form-item>
<!-- <el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="YYYY-MM-DD HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item> -->
<!-- <el-form-item label="审核状态(0待审核,1审核通过,2审核未通过)" prop="auditStatus">
<el-radio-group v-model="form.auditStatus">
<el-radio
v-for="dict in ${dictType}"
:key="dict.value"
:value="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item> -->
<!-- <el-form-item label="审核意见" prop="auditComments">
<el-input v-model="form.auditComments" placeholder="请输入审核意见" />
</el-form-item> -->
<!-- <el-form-item label="调整状态" prop="adjustStatus">
<el-radio-group v-model="form.adjustStatus">
<el-radio
v-for="dict in ${dictType}"
:key="dict.value"
:value="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item> -->
<el-form-item label="调整类型" prop="adjustType">
<el-radio-group v-model="form.adjustType">
<el-radio
v-for="dict in wms_stockadjust_type"
:key="dict.value"
:value="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup name="InventoryCheckRecord" lang="ts">
import {
listInventoryCheckRecord,
getInventoryCheckRecord,
delInventoryCheckRecord,
addInventoryCheckRecord,
updateInventoryCheckRecord
} from '@/api/wms/inventoryCheckRecord';
import {
InventoryCheckRecordVO,
InventoryCheckRecordQuery,
InventoryCheckRecordForm
} from '@/api/wms/inventoryCheckRecord/types';
import {getBaseMaterialCategoryListInWMS} from '@/api/wms/baseMaterialCategory';
const {proxy} = getCurrentInstance() as ComponentInternalInstance;
const {
wms_stocking_type,
wms_stockadjust_type,
approve_status,
erp_synchronous_status,
wms_stock_result,
wms_stockadjust_status,
wms_stock_if
} = toRefs<any>(proxy?.useDict('wms_stocking_type', 'wms_stockadjust_type', 'approve_status', 'erp_synchronous_status', 'wms_stockadjust_status', 'wms_stock_if', 'wms_stock_result'));
const inventoryCheckRecordList = ref<InventoryCheckRecordVO[]>([]);
const buttonLoading = ref(false);
const loading = ref(true);
const showSearch = ref(true);
const ids = ref<Array<string | number>>([]);
const single = ref(true);
const multiple = ref(true);
const total = ref(0);
const queryFormRef = ref<ElFormInstance>();
const inventoryCheckRecordFormRef = ref<ElFormInstance>();
const dialog = reactive<DialogOption>({
visible: false,
title: ''
});
// 列显隐信息
const columns = ref<FieldOption[]>([
{key: 0, label: `盘点记录主键`, visible: true},
{key: 1, label: `物料大类`, visible: true},
{key: 2, label: `盘点单号`, visible: true},
{key: 3, label: `批次码`, visible: true},
{key: 4, label: `物料id`, visible: true},
{key: 5, label: `库位编码`, visible: true},
{key: 6, label: `物料编码`, visible: true},
{key: 7, label: `物料名称`, visible: true},
{key: 8, label: `库存数量`, visible: true},
{key: 9, label: `盘点数量`, visible: true},
{key: 10, label: `盘点人`, visible: true},
{key: 11, label: `创建时间`, visible: true},
{key: 12, label: `盘点状态(0异常1正常)`, visible: true},
{key: 13, label: `erp同步状态`, visible: true},
{key: 14, label: `erp同步数量`, visible: true},
{key: 15, label: `是否发起调整`, visible: true},
{key: 16, label: `审核人`, visible: true},
{key: 17, label: `审核时间`, visible: true},
{key: 18, label: `审核状态(0待审核,1审核通过,2审核未通过)`, visible: true},
{key: 19, label: `审核意见`, visible: true},
{key: 20, label: `调整状态`, visible: true},
{key: 21, label: `调整类型`, visible: true},
]);
const initFormData: InventoryCheckRecordForm = {
icRecordId: undefined,
materialCategoryId: undefined,
materialCategoryName: undefined,//字段映射
checkCode: undefined,
batchCode: undefined,
materialId: undefined,
locationCode: undefined,
materialCode: undefined,
materialName: undefined,
inventoryQty: undefined,
checkQty: undefined,
checkStatus: undefined,
erpSynchronousStatus: undefined,
erpSynchronousQty: undefined,
isAdjust: undefined,
auditBy: undefined,
auditTime: undefined,
auditStatus: undefined,
auditComments: undefined,
adjustStatus: undefined,
adjustType: undefined
}
const data = reactive<PageData<InventoryCheckRecordForm, InventoryCheckRecordQuery>>({
form: {...initFormData},
queryParams: {
pageNum: 1,
pageSize: 10,
icRecordId: undefined,
materialCategoryId: undefined,
materialCategoryName: undefined,//字段映射
checkCode: undefined,
batchCode: undefined,
materialId: undefined,
locationCode: undefined,
materialCode: undefined,
materialName: undefined,
inventoryQty: undefined,
checkQty: undefined,
checkStatus: undefined,
erpSynchronousStatus: undefined,
erpSynchronousQty: undefined,
isAdjust: undefined,
auditBy: undefined,
auditTime: undefined,
auditStatus: undefined,
auditComments: undefined,
adjustStatus: undefined,
adjustType: undefined,
params: {}
},
rules: {
icRecordId: [
{required: true, message: "盘点记录主键不能为空", trigger: "blur"}
],
materialCategoryId: [
{required: true, message: "物料大类不能为空", trigger: "blur"}
],
checkCode: [
{required: true, message: "盘点单号不能为空", trigger: "blur"}
],
batchCode: [
{required: true, message: "批次码不能为空", trigger: "blur"}
],
materialId: [
{required: true, message: "物料id不能为空", trigger: "blur"}
],
locationCode: [
{required: true, message: "库位编码不能为空", trigger: "blur"}
],
materialCode: [
{required: true, message: "物料编码不能为空", trigger: "blur"}
],
materialName: [
{required: true, message: "物料名称不能为空", trigger: "blur"}
],
inventoryQty: [
{required: true, message: "库存数量不能为空", trigger: "blur"}
],
checkQty: [
{required: true, message: "盘点数量不能为空", trigger: "blur"}
],
checkStatus: [
{required: true, message: "盘点状态(0异常1正常)不能为空", trigger: "change"}
],
erpSynchronousStatus: [
{required: true, message: "erp同步状态不能为空", trigger: "change"}
],
erpSynchronousQty: [
{required: true, message: "erp同步数量不能为空", trigger: "blur"}
],
isAdjust: [
{required: true, message: "是否发起调整不能为空", trigger: "blur"}
],
auditBy: [
{required: true, message: "审核人不能为空", trigger: "blur"}
],
auditTime: [
{required: true, message: "审核时间不能为空", trigger: "blur"}
],
auditStatus: [
{required: true, message: "审核状态(0待审核,1审核通过,2审核未通过)不能为空", trigger: "change"}
],
auditComments: [
{required: true, message: "审核意见不能为空", trigger: "blur"}
],
adjustStatus: [
{required: true, message: "调整状态不能为空", trigger: "change"}
],
adjustType: [
{required: true, message: "调整类型不能为空", trigger: "change"}
]
}
});
const {queryParams, form, rules} = toRefs(data);
/** 查询盘点记录和调整工单列表 */
const getList = async () => {
loading.value = true;
const res = await listInventoryCheckRecord(queryParams.value);
inventoryCheckRecordList.value = res.rows;
total.value = res.total;
loading.value = false;
}
/** 取消按钮 */
const cancel = () => {
reset();
dialog.visible = false;
}
/** 表单重置 */
const reset = () => {
form.value = {...initFormData};
inventoryCheckRecordFormRef.value?.resetFields();
}
/** 搜索按钮操作 */
const handleQuery = () => {
queryParams.value.pageNum = 1;
getList();
}
/** 重置按钮操作 */
const resetQuery = () => {
queryFormRef.value?.resetFields();
handleQuery();
}
/** 多选框选中数据 */
const handleSelectionChange = (selection: InventoryCheckRecordVO[]) => {
ids.value = selection.map(item => item.icRecordId);
single.value = selection.length != 1;
multiple.value = !selection.length;
}
/** 新增按钮操作 */
const handleAdd = () => {
reset();
dialog.visible = true;
dialog.title = "添加盘点记录和调整工单";
}
/** 修改按钮操作 */
const handleUpdate = async (row?: InventoryCheckRecordVO) => {
reset();
const _icRecordId = row?.icRecordId || ids.value[0]
const res = await getInventoryCheckRecord(_icRecordId);
Object.assign(form.value, res.data);
dialog.visible = true;
dialog.title = "修改盘点记录和调整工单";
}
/** 提交按钮 */
const submitForm = () => {
inventoryCheckRecordFormRef.value?.validate(async (valid: boolean) => {
if (valid) {
buttonLoading.value = true;
if (form.value.icRecordId) {
await updateInventoryCheckRecord(form.value).finally(() => buttonLoading.value = false);
} else {
await addInventoryCheckRecord(form.value).finally(() => buttonLoading.value = false);
}
proxy?.$modal.msgSuccess("操作成功");
dialog.visible = false;
await getList();
}
});
}
/** 删除按钮操作 */
const handleDelete = async (row?: InventoryCheckRecordVO) => {
const _icRecordIds = row?.icRecordId || ids.value;
await proxy?.$modal.confirm('是否确认删除盘点记录和调整工单编号为"' + _icRecordIds + '"的数据项?').finally(() => loading.value = false);
await delInventoryCheckRecord(_icRecordIds);
proxy?.$modal.msgSuccess("删除成功");
await getList();
}
/** 导出按钮操作 */
const handleExport = () => {
proxy?.download('wms/inventoryCheckRecord/export', {
...queryParams.value
}, `inventoryCheckRecord_${new Date().getTime()}.xlsx`)
}
//获取物料大类下拉框
let mategoryOptions = ref([]);
const getMaterialCategorySelect = async () => {
const res = await getBaseMaterialCategoryListInWMS(null);
mategoryOptions.value = res.data;
};
onMounted(() => {
getMaterialCategorySelect();
getList();
});
</script>