From 943954bdcb3b672b89cfa097e53d2ac17a36a101 Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期日, 30 六月 2024 13:13:25 +0800 Subject: [PATCH] 产品工艺路线路由节点选择功能更新 --- src/views/tigerprojects/mes/eng/route/components/PostProps.vue | 112 +++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 70 insertions(+), 42 deletions(-) diff --git a/src/views/tigerprojects/mes/eng/route/components/PostProps.vue b/src/views/tigerprojects/mes/eng/route/components/PostProps.vue index d17b1a8..1c101d6 100644 --- a/src/views/tigerprojects/mes/eng/route/components/PostProps.vue +++ b/src/views/tigerprojects/mes/eng/route/components/PostProps.vue @@ -1,27 +1,25 @@ <!-- * @Description: file content - * @Author: your name + * @Author: Ben Lin * @version: * @Date: 2024-06-11 21:07:04 * @LastEditors: your name - * @LastEditTime: 2024-06-12 17:29:41 + * @LastEditTime: 2024-06-13 08:55:09 --> <!-- * @Description: 鍙充晶灞炴�ч潰鏉挎帶浠� 琛ㄥ崟灞炴�ч潰鏉� --> <template> - <div class="mt-3"> - <Button type="primary" @click="handleCreate" preIcon="add_02|svg" :size="size"> 鏂板 </Button> - <a-table :columns="columns" :data-source="data" bordered> - <template #name="{ text }"> - <a>{{ text }}</a> + <div class="m-1"> + <BasicTable @register="registerTable"> + <template #toolbar> + <a-button type="primary" @click="handleCreate" preIcon="add_02|svg" :size="size"> 鏂板 </a-button> </template> <template #action="{ record }"> <TableAction :actions="[ { icon: 'ant-design:delete-outlined', color: 'error', - tooltip: '鍒犻櫎', popConfirm: { title: '鏄惁纭鍒犻櫎?', placement: 'left', @@ -30,23 +28,25 @@ }, ]" /> </template> - </a-table> + </BasicTable> </div> - <NormalModal @register="register" @success="handleSuccess"></NormalModal> + <GeneralModal @register="register" @success="handleSuccess"></GeneralModal> </template> <script lang="ts" setup> -import { Table, notification } from 'ant-design-vue'; -import { Button } from '/@/components/Button'; -import { TableAction } from '/@/components/Table'; +import { notification } from 'ant-design-vue'; +import { BasicTable, TableAction, useTable } from '/@/components/Table'; import { SizeType } from 'ant-design-vue/es/config-provider'; -import { ref } from 'vue'; +import { nextTick, onMounted, ref, unref, watch } from 'vue'; import { useModal } from '/@/components/Modal'; -import NormalModal from '/@/views/components/NormalModal.vue'; +import GeneralModal from '/@/views/components/GeneralModal.vue'; import { useI18n } from '/@/hooks/web/useI18n'; +import { DeleteEntity, DeleteWhere, SaveEntity, getEntity, getListByPage } from '/@/api/tigerapi/system'; +import { useRouteDesignState } from '../hooks/useRouteDesignState'; +import { SaveRouteNodePost } from '/@/api/tigerapi/mes/router'; const { t } = useI18n(); -const ATable = Table; +const { routeConfig, mesRoute } = useRouteDesignState(); const size = ref<SizeType>('small'); const columns = [ { @@ -60,31 +60,43 @@ dataIndex: 'POST_CODE', key: 'POST_CODE', }, - { - title: '鎿嶄綔', - key: 'operation', - fixed: 'right', - width: 65, - slots: { customRender: 'action' }, - }, ]; -const data: DataItem[] = []; -for (let i = 0; i < 5; i++) { - data.push({ - key: i, - POST_NAME: `Edrward ${i}`, - POST_CODE: 32, - }); -} - -interface DataItem { - key: number; - POST_NAME: string; - POST_CODE: number; -} - const [register, { openModal }] = useModal(); +const [registerTable, { reload }] = useTable({ + title: '鍒楄〃', + api: getListByPage, + searchInfo: { TABLE_NAME: 'V_MES_ROUTE_NODE_POST', NODE_ID: routeConfig.currentItem.ID }, + columns, + useSearchForm: false, + showTableSetting: false, + bordered: true, + showIndexColumn: false, + pagination: { pageSize: 10 }, + actionColumn: { + width: 80, + title: '鎿嶄綔', + dataIndex: 'action', + slots: { customRender: 'action' }, + }, +}); +defineExpose({ + reload +}); +// watch( +// () => routeConfig.currentItem.ID, +// (newVal, oldVal) => { +// if (newVal != oldVal) { +// nextTick(() => { +// reload(); +// }); +// } +// }, +// { deep: true, immediate: true }, +// ); + +onMounted(() => { +}); /** * @description: 鏂板鏂规硶 @@ -121,6 +133,7 @@ ], tableName: 'MES_POSITION', rowKey: 'POST_CODE', + searchInfo: {TABLE_NAME: 'MES_POSITION'} }); } @@ -130,11 +143,26 @@ * @return {*} */ function handleDelete(record: Recordable) { - + DeleteWhere(`POST_CODE = '${record.POST_CODE}' And NODE_ID = '${record.NODE_ID}'`, 'MES_ROUTE_NODE_POST').then((res) => { + reload(); + }); } +/** + * @description: 閫夋嫨宀椾綅璧勬簮鎴愬姛杩斿洖鏂规硶 + * @param {*} d + * @param {*} u + * @return {*} + */ function handleSuccess(d, u) { - let xx = d.values.val.split(','); - let a = ''; - } + let codes = d.values.val.split(','); + let eintity: any[] = []; + var i; + for (i = 0; i < codes.length; i++) { + eintity.push({ NODE_ID: routeConfig.currentItem.ID, POST_CODE: codes[i], REMARK: '' }); + } + SaveRouteNodePost(eintity).then((res) => { + reload(); + }); +} </script> -- Gitblit v1.9.3