|
|
@ -1,7 +1,11 @@ |
|
|
|
<template> |
|
|
|
<ContentWrap> |
|
|
|
<!-- 搜索工作栏 --> |
|
|
|
<Search :schema="[...ContainerRecordMain.allSchemas.searchSchema,...ContainerRecordDetail.allSchemas.searchSchema]" @search="searchList" @reset="searchList" /> |
|
|
|
<Search |
|
|
|
:schema="[...ContainerRecordMain.allSchemas.searchSchema,...ContainerRecordDetail.allSchemas.searchSchema]" |
|
|
|
@search="setSearchParams" |
|
|
|
@reset="setSearchParams" |
|
|
|
/> |
|
|
|
</ContentWrap> |
|
|
|
|
|
|
|
<!-- 列表头部 --> |
|
|
@ -12,7 +16,7 @@ |
|
|
|
@updataTableColumns="updataTableColumns" |
|
|
|
@searchFormClick="searchFormClick" |
|
|
|
:allSchemas="ContainerRecordMain.allSchemas" |
|
|
|
:detailAllSchemas="ContainerRecordDetailAllSchemas" |
|
|
|
:detailAllSchemas="ContainerRecordDetail.allSchemas" |
|
|
|
/> |
|
|
|
|
|
|
|
<!-- 列表 --> |
|
|
@ -33,23 +37,8 @@ |
|
|
|
<span>{{ row.number }}</span> |
|
|
|
</el-button> |
|
|
|
</template> |
|
|
|
<template #action="{ row,$index }"> |
|
|
|
<ButtonBase :Butttondata="butttondata(row,$index)" @button-base-click="buttonTableClick($event,row)" /> |
|
|
|
</template> |
|
|
|
</Table> |
|
|
|
</ContentWrap> |
|
|
|
|
|
|
|
<!-- 表单弹窗:添加/修改 --> |
|
|
|
<BasicForm |
|
|
|
ref="basicFormRef" |
|
|
|
@success="getList" |
|
|
|
:rules="ContainerRecordMainRules" |
|
|
|
:formAllSchemas="ContainerRecordMain.allSchemas" |
|
|
|
:tableAllSchemas="ContainerRecordDetail.allSchemas" |
|
|
|
:tableFormRules="ContainerRecordDetailRules" |
|
|
|
:isBusiness="true" |
|
|
|
/> |
|
|
|
|
|
|
|
<!-- 详情 --> |
|
|
|
<Detail |
|
|
|
ref="detailRef" |
|
|
@ -67,7 +56,7 @@ |
|
|
|
|
|
|
|
<script setup lang="ts"> |
|
|
|
import download from '@/utils/download' |
|
|
|
import { ContainerRecordMain, ContainerRecordMainRules, ContainerRecordDetail, ContainerRecordDetailRules } from './initialContainerRecordMain.data' |
|
|
|
import { ContainerRecordMain, ContainerRecordMainRules, ContainerRecordDetail, ContainerRecordDetailRules } from './scrapContainerRecordMain.data' |
|
|
|
|
|
|
|
console.log(3444,ContainerRecordDetail) |
|
|
|
import * as ContainerRecordMainApi from '@/api/wms/containerRecordMain' |
|
|
@ -80,77 +69,22 @@ import { formatDate } from '@/utils/formatTime' |
|
|
|
import { usePageLoading } from '@/hooks/web/usePageLoading' |
|
|
|
import { json } from 'stream/consumers' |
|
|
|
const { loadStart, loadDone } = usePageLoading() |
|
|
|
defineOptions({ name: 'ContainerRecordMain' }) |
|
|
|
defineOptions({ name: 'ScrapContainerManageRecord' }) |
|
|
|
const message = useMessage() // 消息弹窗 |
|
|
|
const { t } = useI18n() // 国际化 |
|
|
|
const route = useRoute() // 路由信息 |
|
|
|
const routeName = ref() |
|
|
|
routeName.value = route.name |
|
|
|
const businessType = ref() |
|
|
|
const importFileName = ref() |
|
|
|
const tableColumns = ref([...ContainerRecordMain.allSchemas.tableColumns, ...ContainerRecordDetail.allSchemas.tableMainColumns]) |
|
|
|
// const ContainerRecordDetailTableColumns = ref(JSON.parse(JSON.stringify(ContainerRecordDetail.allSchemas.tableMainColumns))) |
|
|
|
const ContainerRecordDetailAllSchemas = ref(JSON.parse(JSON.stringify(ContainerRecordDetail.allSchemas))) |
|
|
|
console.log(2233,ContainerRecordDetail.allSchemas.tableMainColumns) |
|
|
|
const searchType = ref() |
|
|
|
const tableColumns = |
|
|
|
ref([ ...ContainerRecordMain.allSchemas.tableColumns,...ContainerRecordDetail.allSchemas.tableMainColumns]) |
|
|
|
const { tableObject, tableMethods } = useTable({ |
|
|
|
getListApi: ContainerRecordDetailApi.getContainerRecordDetailPage // 分页接口 |
|
|
|
}) |
|
|
|
|
|
|
|
// 判断 路由名称 进行条件过滤 |
|
|
|
/** |
|
|
|
* |
|
|
|
*/ |
|
|
|
if ( routeName.value == 'ReturnContainerManageRecord') { |
|
|
|
tableObject.params = { |
|
|
|
type:'RETURN' |
|
|
|
} |
|
|
|
searchType.value = 'RETURN' |
|
|
|
businessType.value = 'ReturnContainerManage' |
|
|
|
importFileName.value = '器具返回记录' |
|
|
|
} else if ( routeName.value == 'MoveContainerManageRecord') { |
|
|
|
tableObject.params = { |
|
|
|
type:'MOVE' |
|
|
|
} |
|
|
|
searchType.value = 'MOVE' |
|
|
|
businessType.value = 'MoveContainerManage' |
|
|
|
importFileName.value = '器具转移记录' |
|
|
|
} else if ( routeName.value == 'InitialContainerManageRecord') { |
|
|
|
tableObject.params = { |
|
|
|
type:'INITIAL', |
|
|
|
} |
|
|
|
searchType.value = 'INITIAL' |
|
|
|
businessType.value = 'InitialContainerManage' |
|
|
|
importFileName.value = '器具初始化记录' |
|
|
|
} |
|
|
|
else if ( routeName.value == 'ScrapContainerManageRecord') { |
|
|
|
tableObject.params = { |
|
|
|
tableObject.params = { |
|
|
|
type:'SCRAP' |
|
|
|
} |
|
|
|
searchType.value = 'SCRAP' |
|
|
|
businessType.value = 'ScrapContainerManage' |
|
|
|
importFileName.value = '器具报废记录' |
|
|
|
} else if ( routeName.value == 'DeliverContainerManageRecord') { |
|
|
|
tableObject.params = { |
|
|
|
type: 'DELIVER', |
|
|
|
} |
|
|
|
searchType.value = 'DELIVER' |
|
|
|
businessType.value = 'DeliverContainerManage' |
|
|
|
importFileName.value = '器具发运记录' |
|
|
|
} else if( routeName.value == 'ContainerManageRecord'){ |
|
|
|
businessType.value = 'ContainerManage' |
|
|
|
importFileName.value = '器具管理记录' |
|
|
|
} |
|
|
|
if ( routeName.value == 'InitialContainerManageRecord') { |
|
|
|
const array = ContainerRecordDetail.allSchemas.tableMainColumns.filter(item=>item.field != "fromLocationCode") |
|
|
|
ContainerRecordDetailAllSchemas.value.tableMainColumns = array |
|
|
|
tableColumns.value = [...ContainerRecordMain.allSchemas.tableColumns,...ContainerRecordDetailAllSchemas.value.tableMainColumns] |
|
|
|
} |
|
|
|
else { |
|
|
|
ContainerRecordDetail.allSchemas.tableMainColumns =JSON.parse(JSON.stringify(ContainerRecordDetail.allSchemas.tableMainColumns)) |
|
|
|
tableColumns.value = [...ContainerRecordMain.allSchemas.tableColumns,...ContainerRecordDetail.allSchemas.tableMainColumns] |
|
|
|
} |
|
|
|
|
|
|
|
importFileName.value = '器具报废记录' |
|
|
|
|
|
|
|
|
|
|
|
// 字段设置 更新主列表字段 |
|
|
@ -162,31 +96,15 @@ const updataTableColumns = (val) => { |
|
|
|
const { getList, setSearchParams } = tableMethods |
|
|
|
// 列表头部按钮 |
|
|
|
const HeadButttondata = [ |
|
|
|
// defaultButtons.defaultAddBtn({hasPermi:`wms:{routeName.value}:create`}), // 新增 |
|
|
|
defaultButtons.defaultExportBtn({hasPermi:`wms:${routeName.value}:export`}), // 导出 |
|
|
|
defaultButtons.defaultFreshBtn(null), // 刷新 |
|
|
|
defaultButtons.defaultFilterBtn(null), // 筛选 |
|
|
|
defaultButtons.defaultSetBtn(null), // 设置 |
|
|
|
// { |
|
|
|
// label: '自定义扩展按钮', |
|
|
|
// name: 'zdy', |
|
|
|
// hide: false, |
|
|
|
// type: 'primary', |
|
|
|
// icon: 'Select', |
|
|
|
// color: '' |
|
|
|
// }, |
|
|
|
] |
|
|
|
|
|
|
|
const searchList = (model)=>{ |
|
|
|
model.type = searchType.value |
|
|
|
setSearchParams(model) |
|
|
|
} |
|
|
|
|
|
|
|
// 头部按钮事件 |
|
|
|
const buttonBaseClick = (val, item) => { |
|
|
|
if (val == 'add') { // 新增 |
|
|
|
openForm('create') |
|
|
|
} else if (val == 'export') { // 导出 |
|
|
|
if (val == 'export') { // 导出 |
|
|
|
handleExport() |
|
|
|
} else if (val == 'refresh') { // 刷新 |
|
|
|
if (tableObject.params.filters && tableObject.params.filters.length > 0 ) { |
|
|
@ -201,28 +119,6 @@ const buttonBaseClick = (val, item) => { |
|
|
|
console.log('其他按钮', item) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 列表-操作按钮 |
|
|
|
const butttondata = (row,$index) => { |
|
|
|
const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1 |
|
|
|
if(findIndex>-1&&findIndex<$index){ |
|
|
|
return [] |
|
|
|
} |
|
|
|
return [ |
|
|
|
// defaultButtons.mainListEditBtn({hasPermi:`wms:{routeName.value}:update`}), // 编辑 |
|
|
|
// defaultButtons.mainListDeleteBtn({hasPermi:`wms:{routeName.value}:delete`}), // 删除 |
|
|
|
] |
|
|
|
} |
|
|
|
|
|
|
|
// 列表-操作按钮事件 |
|
|
|
const buttonTableClick = async (val, row) => { |
|
|
|
if (val == 'edit') { // 编辑 |
|
|
|
openForm('update', row) |
|
|
|
} else if (val == 'delete') { // 删除 |
|
|
|
handleDelete(row.id) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 获取部门 用于详情 部门回显 |
|
|
|
const { wsCache } = useCache() |
|
|
|
/** 详情操作 */ |
|
|
@ -233,24 +129,8 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { |
|
|
|
detailRef.value.openDetail(row, titleName, titleValue,"recordContainerMain") |
|
|
|
} |
|
|
|
|
|
|
|
/** 添加/修改操作 */ |
|
|
|
const basicFormRef = ref() |
|
|
|
const openForm = (type: string, row?: any) => { |
|
|
|
basicFormRef.value.open(type, row) |
|
|
|
} |
|
|
|
|
|
|
|
/** 删除按钮操作 */ |
|
|
|
const handleDelete = async (id: number) => { |
|
|
|
try { |
|
|
|
// 删除的二次确认 |
|
|
|
await message.delConfirm() |
|
|
|
// 发起删除 |
|
|
|
await ContainerRecordMainApi.deleteContainerRecordMain(id) |
|
|
|
message.success(t('common.delSuccess')) |
|
|
|
// 刷新列表 |
|
|
|
buttonBaseClick('refresh',null) |
|
|
|
} catch {} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** 导出按钮操作 */ |
|
|
|
const handleExport = async () => { |
|
|
@ -260,13 +140,8 @@ const handleExport = async () => { |
|
|
|
// 发起导出 |
|
|
|
loadStart() |
|
|
|
const excelTitle = ref(route.meta.title) |
|
|
|
if(businessType.value = 'InitialContainerManage'){ |
|
|
|
const data = await ContainerRecordMainApi.exportContainerInitRecordMain(tableObject.params) |
|
|
|
download.excel(data, `【${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) |
|
|
|
}else { |
|
|
|
const data = await ContainerRecordMainApi.exportContainerRecordMain(tableObject.params) |
|
|
|
download.excel(data, `【${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) |
|
|
|
} |
|
|
|
} catch { |
|
|
|
} finally { |
|
|
|
loadDone() |
|
|
@ -278,7 +153,7 @@ const searchFormClick = (searchData) => { |
|
|
|
const cmd = { |
|
|
|
'column':'type', |
|
|
|
'action':'==', |
|
|
|
'value':searchType.value |
|
|
|
'value':'SCRAP' |
|
|
|
} |
|
|
|
if (!Array.isArray(searchData.filters)) { |
|
|
|
searchData.filters = []; |
|
|
|