Browse Source

YT-2909客户对账单中,对账差异导出的数据显示与WMS中明细现实不一致,有时导出的数据会与差异数据条数内容不一致,大多数时候是好使的

intex_online_narushoulingshu
张立 2 days ago
parent
commit
10f388aecf
  1. 317
      src/components/Detail/src/Detail.vue
  2. 12
      src/views/wms/deliversettlementManage/moldAllocation/customerStatement/index.vue

317
src/components/Detail/src/Detail.vue

@ -5,185 +5,186 @@
:title="t(`ts.详情`).replace('ts.','')"
direction="rtl"
size="80%"
v-loading="detailLoading"
>
<template #header>
<div class="font-size-18px">
{{ titleValueRef }} <span class="ml-20px font-size-16px">{{ t(`ts.${titleNameRef}`).replace('ts.','') }}</span>
</div>
</template>
<Tabs ref="tabRef" :tabsList="tabsList" :current="current" @change="change"/>
<ContentWrap v-if="!isBasic" v-show="tabsList[current].label=='主数据'">
<Descriptions
:data="detailData"
labelClassName="label-class-name"
label-align="left"
:direction="direction"
:column="column"
:schema="allSchemas.detailSchema"
:columns="2"
width="200px"
>
<template v-for="name in Object.keys($slots)" :key="name" #[name]="{ row }">
<slot :name="name" :row="row"></slot>
</template>
</Descriptions>
</ContentWrap>
<div class="flex">
<!-- 详情 -->
<ContentWrap class="w-[100%]" v-show="tabsList[current].label!=annexAlias.label&&tabsList[current].label!='备注'&&tabsList[current].label!='变更记录'&&tabsList[current].label!='主数据'&&!annexTableData.some(item=>item.label==tabsList[current].label)">
<!-- 列表头部 -->
<TableHead
v-if="!isBasic&&!slotDetailTabList.some(item=>item.label==tabsList[current].label)"
:HeadButttondata="HeadButttondata"
:masterId="masterParmas.masterId"
@button-base-click="buttonBaseClick"
:routeName="routeName"
@searchFormClick="searchFormClick"
:allSchemas="detailAllSchemas"
:key="updateKey"
/>
<!-- 默认单表展现 -->
<div v-loading="detailLoading">
<Tabs ref="tabRef" :tabsList="tabsList" :current="current" @change="change"/>
<ContentWrap v-if="!isBasic" v-show="tabsList[current].label=='主数据'">
<Descriptions
v-if="isBasic && !tabsExtend"
:data="detailData"
labelClassName="label-class-name"
label-align="left"
:direction="direction"
:column="column"
:schema="allSchemas.detailSchema"
:columns="2"
:key="updateKey"
/>
<!-- 检验工序用到插槽 -->
<slot v-if="isBasic && !tabsExtend" :data="detailData" name="basicBottom" :key="updateKey"></slot>
<!-- 单表切换tabs 展现table -->
<Table
v-if="isBasic && tabsExtend"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:loading="tableObjectRef.loading"
:pagination="{ total: tableObjectRef.total }"
v-model:pageSize="tableObjectRef.pageSize"
v-model:currentPage="tableObjectRef.currentPage"
v-model:sort="tableObjectRef.sort"
:isShowPackNumber="isShowPackNumber"
>
<!-- <template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template> -->
</Table>
<Table
v-if="!isBasic && fromeWhere != 'countPlan'&&!slotDetailTabList.some(item=>item.label==tabsList[current].label)"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:loading="tableObjectRef.loading"
:pagination="{ total: tableObjectRef.total }"
v-model:pageSize="tableObjectRef.pageSize"
v-model:currentPage="tableObjectRef.currentPage"
v-model:sort="tableObjectRef.sort"
:isShowPackNumber="isShowPackNumber"
width="200px"
>
<template v-for="name in Object.keys($slots)" :key="name" #[name]="{ row }">
<slot :name="name" :row="row"></slot>
</template>
<template #photos="{ row }">
<div v-for="(item,index) in row.photos.split(',')" :key="index" style="color:#409eff ; cursor: pointer;" @click="openImage(item)">{{ item }}</div>
</template>
<template #differencePrice="{row}">
<slot name="differencePrice" :row="row"></slot>
</template>
<template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template>
</Table>
<slot v-if="slotDetailTabList.some(item=>item.label==tabsList[current].label)" :name="slotDetail.prop" v-for="slotDetail in slotDetailTabList"></slot>
<DetailTable
v-if="!isBasic && fromeWhere == 'countPlan' && isShowDrawer"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:allList="allList"
:countScopeType="countScopeType"
:key="updateKey"
>
<template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template>
</DetailTable>
</Descriptions>
</ContentWrap>
<!-- other附件组件:如质检明细 -->
<div v-for="(annexItem ,index) in annexTableData" :key="index" v-show="annexItem.label==tabsList[current].label" class="w-[100%]" :style="{height:annexItem.hasSubDetail?'100%':remarkHeight+'px'}">
<ContentWrap class="w-[100%]">
<ElScrollbar ref="scrollbar" :style="{height:annexItem.hasSubDetail?'100%':(remarkHeight-40)+'px'}">
<Annex v-show="tabsList[current].label==annexItem.label"
:annexData="annexItem"
:fileType="annexItem.fileType"
:limit="annexItem.limit"
:fileSize="annexItem.fileSize"
:showAddBtn="!annexItem.hiddenUpload"
:showPreview="annexItem.showPreview"
:showDownload = "annexItem.showDownload"
:hiddenDelete = "annexItem.hiddenDelete"
@handleAnnexSuccess="updateAnnexTableHandle"
@deleteAnnexSuccess="updateAnnexTableHandle"
:upData="{...remarksData.data,tableName:annexItem.tableName}"
<div class="flex">
<!-- 详情 -->
<ContentWrap class="w-[100%]" v-show="tabsList[current].label!=annexAlias.label&&tabsList[current].label!='备注'&&tabsList[current].label!='变更记录'&&tabsList[current].label!='主数据'&&!annexTableData.some(item=>item.label==tabsList[current].label)">
<!-- 列表头部 -->
<TableHead
v-if="!isBasic&&!slotDetailTabList.some(item=>item.label==tabsList[current].label)"
:HeadButttondata="HeadButttondata"
:masterId="masterParmas.masterId"
@button-base-click="buttonBaseClick"
:routeName="routeName"
@searchFormClick="searchFormClick"
:allSchemas="detailAllSchemas"
:key="updateKey"
/>
<!-- 默认单表展现 -->
<Descriptions
v-if="isBasic && !tabsExtend"
:data="detailData"
:schema="allSchemas.detailSchema"
:columns="2"
:key="updateKey"
/>
<!-- 检验工序用到插槽 -->
<slot v-if="isBasic && !tabsExtend" :data="detailData" name="basicBottom" :key="updateKey"></slot>
<!-- 单表切换tabs 展现table -->
<Table
v-if="isBasic && tabsExtend"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:loading="tableObjectRef.loading"
:pagination="{ total: tableObjectRef.total }"
v-model:pageSize="tableObjectRef.pageSize"
v-model:currentPage="tableObjectRef.currentPage"
v-model:sort="tableObjectRef.sort"
:isShowPackNumber="isShowPackNumber"
>
<!-- <template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-if="annexItem.subDetailTableData">
<Table
v-if="!isBasic && fromeWhere != 'countPlan'"
:align="annexItem.align?annexItem.align:'center'"
:columns="annexItem.subDetailTableData.tableColumns"
:data="annexItem.subDetailTableData.tableList"
:loading="annexItem.subDetailTableData.loading"
:pagination="{ total: annexItem.subDetailTableData.tableList.length }"
</template> -->
</Table>
<Table
v-if="!isBasic && fromeWhere != 'countPlan'&&!slotDetailTabList.some(item=>item.label==tabsList[current].label)"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:loading="tableObjectRef.loading"
:pagination="{ total: tableObjectRef.total }"
v-model:pageSize="tableObjectRef.pageSize"
v-model:currentPage="tableObjectRef.currentPage"
v-model:sort="tableObjectRef.sort"
:isShowPackNumber="isShowPackNumber"
/>
</ContentWrap>
>
<template v-for="name in Object.keys($slots)" :key="name" #[name]="{ row }">
<slot :name="name" :row="row"></slot>
</template>
<template #photos="{ row }">
<div v-for="(item,index) in row.photos.split(',')" :key="index" style="color:#409eff ; cursor: pointer;" @click="openImage(item)">{{ item }}</div>
</template>
<template #differencePrice="{row}">
<slot name="differencePrice" :row="row"></slot>
</template>
<template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template>
</Table>
<slot v-if="slotDetailTabList.some(item=>item.label==tabsList[current].label)" :name="slotDetail.prop" v-for="slotDetail in slotDetailTabList"></slot>
<DetailTable
v-if="!isBasic && fromeWhere == 'countPlan' && isShowDrawer"
:columns="detailAllSchemasRef.tableColumns"
:data="tableObjectRef.tableList"
:allList="allList"
:countScopeType="countScopeType"
:key="updateKey"
>
<template #action="{ row }">
<ButtonBase
:Butttondata="buttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template>
</DetailTable>
</ContentWrap>
<!-- other附件组件:如质检明细 -->
<div v-for="(annexItem ,index) in annexTableData" :key="index" v-show="annexItem.label==tabsList[current].label" class="w-[100%]" :style="{height:annexItem.hasSubDetail?'100%':remarkHeight+'px'}">
<ContentWrap class="w-[100%]">
<ElScrollbar ref="scrollbar" :style="{height:annexItem.hasSubDetail?'100%':(remarkHeight-40)+'px'}">
<Annex v-show="tabsList[current].label==annexItem.label"
:annexData="annexItem"
:fileType="annexItem.fileType"
:limit="annexItem.limit"
:fileSize="annexItem.fileSize"
:showAddBtn="!annexItem.hiddenUpload"
:showPreview="annexItem.showPreview"
:showDownload = "annexItem.showDownload"
:hiddenDelete = "annexItem.hiddenDelete"
@handleAnnexSuccess="updateAnnexTableHandle"
@deleteAnnexSuccess="updateAnnexTableHandle"
:upData="{...remarksData.data,tableName:annexItem.tableName}"
/>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-if="annexItem.subDetailTableData">
<Table
v-if="!isBasic && fromeWhere != 'countPlan'"
:align="annexItem.align?annexItem.align:'center'"
:columns="annexItem.subDetailTableData.tableColumns"
:data="annexItem.subDetailTableData.tableList"
:loading="annexItem.subDetailTableData.loading"
:pagination="{ total: annexItem.subDetailTableData.tableList.length }"
v-model:pageSize="tableObjectRef.pageSize"
v-model:currentPage="tableObjectRef.currentPage"
v-model:sort="tableObjectRef.sort"
:isShowPackNumber="isShowPackNumber"
/>
</ContentWrap>
</div>
<!-- 附件/备注/变更记录 -->
<ContentWrap v-if="!annexAlias.hidden" class="w-[100%]" v-show="tabsList[current].label==annexAlias.label" :style="{height:remarkHeight+'px'}">
<!-- 附件组件 -->
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<Annex
:annexData="annexData"
:showDownload = "annexAlias.showDownload"
:hiddenDelete = "annexAlias.hiddenDelete"
@handleAnnexSuccess="handleAnnexSuccess"
@deleteAnnexSuccess="deleteAnnexSuccess"
:upData="remarksData.data"
</div>
<!-- 附件/备注/变更记录 -->
<ContentWrap v-if="!annexAlias.hidden" class="w-[100%]" v-show="tabsList[current].label==annexAlias.label" :style="{height:remarkHeight+'px'}">
<!-- 附件组件 -->
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<Annex
:annexData="annexData"
:showDownload = "annexAlias.showDownload"
:hiddenDelete = "annexAlias.hiddenDelete"
@handleAnnexSuccess="handleAnnexSuccess"
@deleteAnnexSuccess="deleteAnnexSuccess"
:upData="remarksData.data"
:key="count"
/>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-show="tabsList[current].label=='备注'" :style="{height:remarkHeight+'px'}">
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<!-- 备注组件 -->
<Remarks
:remarksData="remarksData"
class="mt-20px"
@remarksSubmitScuess="remarksSubmitScuess"
:key="count"
/>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-show="tabsList[current].label=='备注'" :style="{height:remarkHeight+'px'}">
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<!-- 备注组件 -->
<Remarks
:remarksData="remarksData"
class="mt-20px"
@remarksSubmitScuess="remarksSubmitScuess"
:key="count"
/>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-show="tabsList[current].label=='变更记录'" :style="{height:remarkHeight+'px'}">
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<!-- 变更记录组件 -->
<ChangeRecord :changeRecordData="changeRecordData" class="mt-20px" :key="count" :schema="allSchemas.detailSchema"/>
</ElScrollbar>
</ContentWrap>
</ElScrollbar>
</ContentWrap>
<ContentWrap class="w-[100%]" v-show="tabsList[current].label=='变更记录'" :style="{height:remarkHeight+'px'}">
<ElScrollbar ref="scrollbar" :style="{height:(remarkHeight-40)+'px'}">
<!-- 变更记录组件 -->
<ChangeRecord :changeRecordData="changeRecordData" class="mt-20px" :key="count" :schema="allSchemas.detailSchema"/>
</ElScrollbar>
</ContentWrap>
</div>
</div>
</el-drawer>
<!-- 表格弹窗 -->
@ -1045,7 +1046,7 @@ const buttonBaseClick = (val, item) => {
}
} else if (val.includes('export')) {
//
emit('buttonBaseClick',val, item,tableObject)
emit('buttonBaseClick',val, item,tableObjectRef.value)
} else if (val == 'refresh') {
//
getList()
@ -1388,7 +1389,7 @@ watch(
deep: true
}
)
defineExpose({ openDetail, formRef ,updateList,submitUpdateList,changeTabCurrent,openForm,tableObjectRef}) // open
defineExpose({ openDetail, formRef ,updateList,submitUpdateList,changeTabCurrent,openForm,tableObjectRef,detailLoading}) // open
</script>
<style lang="scss">

12
src/views/wms/deliversettlementManage/moldAllocation/customerStatement/index.vue

@ -822,14 +822,14 @@ const handleExportDetail = async (detailTableObject) => {
//
await message.exportConfirm()
//
exportLoading.value = true
detailRef.value.detailLoading = true
const data = await CustomerStatementDetailApi.exportCustomerStatementDetail(
detailTableObject.params
)
download.excel(data, `客户对账单明细子【${formatDate(new Date())}】.xlsx`)
} catch {
} finally {
exportLoading.value = false
detailRef.value.detailLoading = false
}
}
@ -839,14 +839,14 @@ const handleExportShareReconciliation = async (detailTableObject) => {
//
await message.exportConfirm()
//
exportLoading.value = true
detailRef.value.detailLoading = true
const data = await CustomerStatementDetailApi.exportCustomerStatementShareReconciliatioDetail(
detailTableObject.params
)
download.excel(data, `模具分摊对账单子${formatDate(new Date())}】.xlsx`)
} catch {
} finally {
exportLoading.value = false
detailRef.value.detailLoading = false
}
}
//
@ -855,14 +855,14 @@ const handleExportReconciliation = async (detailTableObject) => {
//
await message.exportConfirm()
//
exportLoading.value = true
detailRef.value.detailLoading = true
const data = await CustomerStatementDetailApi.exportCustomerStatementCompareDetail(
detailTableObject.params
)
download.excel(data, `对账差异【${formatDate(new Date())}】.xlsx`)
} catch {
} finally {
exportLoading.value = false
detailRef.value.detailLoading = false
}
}
//

Loading…
Cancel
Save