<template>
|
<BasicModal
|
width="1200px"
|
:height="600"
|
v-bind="$attrs"
|
ok-text="保存"
|
@register="register"
|
:title="t('批量更新')"
|
@ok="handleSubmit"
|
>
|
<ItemModal @register="registerItemAdd" @success="handleRefresh" />
|
<BasicTable
|
@register="registerTable"
|
ref="tableRef"
|
:canResize="canResize"
|
:striped="striped"
|
:loading="loading"
|
:bordered="border"
|
showTableSetting
|
>
|
<!-- <template #toolbar>
|
<a-button ghost color="success" preIcon="OutR|svg" @click="aoaToExcel"> 导出 </a-button>
|
</template> -->
|
</BasicTable>
|
</BasicModal>
|
</template>
|
<script lang="ts">
|
import { defineComponent, ref, unref, onMounted } from 'vue';
|
// import ItemModal from '@/views/tigerprojects/bas/BasItemInfo/ItemModal.vue';
|
import { BasicModal, useModalInner, useModal } from '/@/components/Modal';
|
import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
|
//import { getTreeList } from '/@/api/tigerapi/dept';
|
import {
|
BasicTable,
|
TableAction,
|
TableActionType,
|
useTable,
|
BasicColumn,
|
ActionItem,
|
EditRecordRow,
|
} from '/@/components/Table';
|
//import { SumColumns } from './inventory.data';
|
import { getMaterialUpdateByPage } from '/@/api/tigerapi/bas/MaterialInfo';
|
// import { formSchema, columns_UPD } from './Material.data';
|
import { searchFormSchema, columns_UPD } from './Material.data';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useLocale } from '/@/locales/useLocale';
|
import { useMessage } from '/@/hooks/web/useMessage';
|
import { buildUUID } from '/@/utils/uuid';
|
import { useUserStore } from '/@/store/modules/user';
|
import { formatToDateTime } from '/@/utils/dateUtil';
|
import { isEmpty } from '/@/utils/is';
|
import ItemModal from './ItemModal.vue';
|
|
const { createMessage } = useMessage();
|
const { getLocale } = useLocale();
|
const { t } = useI18n();
|
export default defineComponent({
|
components: { BasicModal, BasicForm, BasicTable, TableAction, ItemModal },
|
props: {
|
userData: { type: Object },
|
},
|
emit: ['success', 'register'],
|
setup(_, { emit }) {
|
const [registerItemAdd, { openModal: openItemModal }] = useModal();
|
const modelRef = ref({});
|
const tableRef = ref<Nullable<TableActionType>>(null);
|
const canResize = ref(false);
|
const loading = ref(true);
|
const striped = ref(true);
|
const border = ref(true);
|
const checkedKeys = ref<Array<string | number>>([]);
|
|
const [registerTable, { getForm, getDataSource, getPaginationRef, reload }] = useTable({
|
title: t('批量更新明细列表'),
|
api: getMaterialUpdateByPage,
|
columns: columns_UPD,
|
formConfig: {
|
labelWidth: 120,
|
schemas: searchFormSchema,
|
},
|
useSearchForm: true,
|
canResize: false,
|
showIndexColumn: false,
|
showTableSetting: true,
|
tableSetting: { fullScreen: true },
|
});
|
const data = ref([] as any[]);
|
|
const [register, { setModalProps, closeModal }] = useModalInner((data) => {
|
setModalProps({ confirmLoading: false });
|
data && onDataReceive(data);
|
});
|
|
async function onDataReceive(data) {
|
getForm().resetFields();
|
//pagination.value = { pageSize: 50 };
|
console.log('Data Received', data);
|
//COUNT_NO.value = data.data.COUNT_NO;
|
//方式1;
|
// setFieldsValue({
|
// BILLCODE: await CreateBillCode(),
|
// });
|
//Sum_Data.value = await getSumListByPage(data.data.COUNT_NO)
|
// if (Sum_Data.value != null) {
|
// loading.value = false
|
// }
|
// // 方式2
|
//modelRef.value = { field2: data.data, field1: data.info };
|
// const treeData = await getTreeList();
|
// updateSchema([
|
// {
|
// field: 'USER_PWD',
|
// show: !unref(false),
|
// },
|
// {
|
// field: 'ORG_CODE',
|
// componentProps: { treeData },
|
// },
|
// ]);
|
// setProps({
|
// model:{ field2: data.data, field1: data.info }
|
// })
|
}
|
//提交保存
|
function handleRefresh() {
|
reload();
|
}
|
async function handleSubmit() {
|
let data = getForm().getFieldsValue().ITEM_CODE;
|
if (getPaginationRef().total > 0) {
|
openItemModal(true, {
|
data,
|
info: 'Info',
|
});
|
} else {
|
createMessage.error('请先查询物料代码');
|
}
|
|
// try {
|
// //保存调拨单
|
// var dataSource = getDataSource();
|
// var formData = getFieldsValue();
|
// var res = await AddTransfer(formData);
|
// if (res.IsSuccessed) {
|
// var resDtl = await AddTransferDtl(dataSource, formData);
|
// if (resDtl.IsSuccessed) {
|
// createMessage.info('保存成功');
|
// //重置表单
|
// resetFields();
|
// data.value = [];
|
// closeModal();
|
// emit('success', {
|
// isUpdate: unref(false),
|
// //values: { values, id: 0 },
|
// });
|
// } else {
|
// createMessage.error('调拨单明细保存失败:' + resDtl.Message);
|
// }
|
// } else {
|
// createMessage.error('保存失败:' + res.Message);
|
// }
|
// } finally {
|
// setModalProps({ confirmLoading: false });
|
// }
|
}
|
//let currentEditKeyRef = ref('');
|
function onEditChange({ column, value, record }) {
|
// 本例
|
if (column.dataIndex === 'id') {
|
record.editValueRefs.name4.value = `${value}`;
|
}
|
console.log(column, value, record);
|
}
|
|
function handleEdit(record: EditRecordRow) {
|
record.onEdit?.(true);
|
}
|
|
//选择物料
|
function handleSuccess(d, u) {
|
var dataSource = getDataSource();
|
var _data2: any[] = dataSource;
|
_data2[_data2.length - 1].ITEM_CODE = d.values.code.trim();
|
_data2[_data2.length - 1].ITEM_NAME = d.values.name.trim();
|
data.value = _data2;
|
// setFieldsValue({
|
// ITEM_CODE_LIST: d.values.values,
|
// });
|
}
|
return {
|
register,
|
// registerT,
|
//schemas,
|
//registerForm,
|
model: modelRef,
|
handleSubmit,
|
handleRefresh,
|
// onRowClick,
|
registerTable,
|
//setFieldsValue,
|
// createActions,
|
//validateFields,
|
tableRef,
|
//pagination,
|
canResize,
|
loading,
|
striped,
|
border,
|
t,
|
data,
|
onEditChange,
|
registerItemAdd,
|
handleSuccess,
|
};
|
},
|
});
|
</script>
|