Browse Source

YT-2797顺引发货记录增加【维护对账日期】功能,导入纳入受领书时,增加调整差异数据的功能

intex_online_narushoulingshu
张立 2 weeks ago
parent
commit
6388742a86
  1. 5
      src/api/wms/maintenanceBillDate/index.ts
  2. 17
      src/components/BasicForm/src/BasicForm.vue
  3. 35
      src/components/ImportForm/src/ImportFormStep.vue
  4. 20
      src/components/TableForm/src/TableForm.vue
  5. 7
      src/views/wms/deliversettlementManage/inducedProduct/deliverRecordMain/deliverRecordMain.data.ts
  6. 53
      src/views/wms/deliversettlementManage/inducedProduct/deliverRecordMain/index.vue

5
src/api/wms/maintenanceBillDate/index.ts

@ -28,7 +28,10 @@ export const updateReconciliationDate = async (data: MaintenanceBillDateMainVO)
return await request.post({ url: `/wms/leadership-incorporation-doc-request/updateReconciliationDate`, data })
}
// 更新对账日期
export const updateReconciliationDate = async (data: MaintenanceBillDateMainVO) => {
return await request.post({ url: `/wms/leadership-incorporation-doc-request/updateReconciliationDate`, data })
}

17
src/components/BasicForm/src/BasicForm.vue

@ -98,6 +98,7 @@
:isShowButton="isShowButton"
:isShowReduceButton="isShowReduceButton"
:isShowReduceButtonSelection="isShowReduceButtonSelection"
:detailButttondata="detailButttondata"
@handleAddTable="handleAddTable"
@handleDeleteTable="handleDeleteTable"
@tableSelectionChange="tableSelectionChange"
@ -120,6 +121,7 @@
@visibleChange="visibleChange"
@inputStringFcous='inputStringFcous'
:sureDisabled="sureDisabled"
@detailButttondataClick="detailButttondataClick"
>
<template v-slot="{ row }">
<slot :row="row"></slot>
@ -406,6 +408,12 @@ const props = defineProps({
required: false,
default: []
},
//
detailButttondata: {
type: Array,
required: false,
default: null
},
})
const { t } = useI18n() //
@ -957,7 +965,8 @@ const emit = defineEmits([
'clearSearchInput',
'clearInput',
'sumFormDataHandle',
'visibleChange'
'visibleChange',
'detailButttondataClick'
])
const visibleChange = (field, val, row, index) => {
emit('visibleChange', field, val, row, index)
@ -1220,7 +1229,11 @@ const tableFormChange = (field, val, row) => {
const buttonOperationClick = (row, label, index) => {
emit('buttonOperationClick', row, label, index)
}
/** 按钮事件 */
const detailButttondataClick = (val) => {
//
emit('detailButttondataClick', val)
}
defineExpose({
open,
formRef,

35
src/components/ImportForm/src/ImportFormStep.vue

@ -7,7 +7,7 @@
<el-step title="确认数据" :icon="List"/>
<el-step title="导入成功" :icon="CircleCheckFilled"/>
</el-steps>
<div v-if="active == 0">
<div v-show="active == 0">
<Form
ref="formRef"
:rules="rules"
@ -48,7 +48,7 @@
</template>
</el-upload>
</div>
<div v-if="active == 1" class="step-two-container">
<div v-show="active == 1" class="step-two-container">
<div class="warning-message" v-if="active == 1 && error">
<el-icon color="#E44033" size="18" style="margin-right: 6px;"><WarningFilled /></el-icon>
纳入受领书数量与顺引发货记录数量不一致无法导入以下是差异数据
@ -70,7 +70,7 @@
/>
</div>
</div>
<div v-else-if="active == 2" class="success">
<div v-show="active == 2" class="success">
<el-icon color="#409eff" size="60"><CircleCheckFilled /></el-icon>
<div class="success-title">导入成功</div>
<div class="success-text">订单号已关联到对应的顺引发货记录中</div>
@ -113,6 +113,7 @@ import download from '@/utils/download'
import { getBaseUrl } from '@/utils/systemParam'
import { UploadFilled, List, CircleCheckFilled,WarningFilled } from '@element-plus/icons-vue'
import { waitForDebugger } from 'node:inspector/promises'
import { it } from 'node:test'
import { emit } from 'process'
import * as XLSX from 'xlsx';
@ -586,16 +587,17 @@ const submitFormSuccess = (response: any) => {
console.log('使用的列定义:', props.errorTableColumns);
props.tableObject.tableList = response.data.successData.failList;
props.tableObject.total = response.data.successData.failList.length;
error.value = true;
active.value = 1;
} else {
console.log('设置成功数据:', response.data.successData.successList);
console.log('使用的列定义:', props.successTableColumns);
props.tableObject.tableList = response.data.successData.successList;
props.tableObject.total = response.data.successData.successList.length;
error.value = false;
error.value = response.data.successData.failList.some(item=>item.difference!=0);
active.value = 1;
}
// else {
// console.log(':', response.data.successData.successList);
// console.log('使:', props.successTableColumns);
// props.tableObject.tableList = response.data.successData.successList;
// props.tableObject.total = response.data.successData.successList.length;
// error.value = false;
// active.value = 1;
// }
}
} else if(response.data == null) {
message.error(response.msg)
@ -714,7 +716,16 @@ const downloadDifferenceData = () => {
// XLSX.utils.book_append_sheet(wb, ws, "");
// const timestamp = new Date().getTime();
// XLSX.writeFile(wb, `_${timestamp}.xlsx`);
emit("open-difference-data")
const list = props.tableObject.tableList.map(item => {
return {
materialCode: item.materialCode,
backNumber: item.backNumber,
quantity:item.incorporationQuantity,
};
});
console.log(11, list)
emits("open-difference-data",formRef.value.formModel,list)
}
</script>

20
src/components/TableForm/src/TableForm.vue

@ -427,6 +427,8 @@
>
<span>{{ t('ts.批量删除') }}</span>
</el-button>
<ButtonBase :Butttondata="detailButttondata" @button-base-click="detailButttondataClick"/>
<!-- <el-button
type="primary"
@click.stop="handleSelectionDelete"
@ -536,7 +538,13 @@ const props = defineProps({
fixedScrollHieght:{
type:Boolean,
default:false
}
},
//
detailButttondata: {
type: Array,
required: false,
default: null
},
})
let isShowTableFormSearch = ref({})
isShowTableFormSearch.value = props.tableFields.find((item) => item.isShowTableFormSearch)
@ -561,7 +569,8 @@ const emit = defineEmits([
'clearInput',
'batchAdd',
'visibleChange',
'inputStringFcous'
'inputStringFcous',
'detailButttondataClick'
])
// | type = radio | type = select
const initSelectOptions = (headerItem, row) => {
@ -788,6 +797,13 @@ const getFormItemType = (row, headerItem) => {
return headerItem?.tableForm?.type ? headerItem?.tableForm?.type :''
}
}
/** 按钮事件 */
const detailButttondataClick = (val) => {
//
if (props.detailButttondata) {
emit('detailButttondataClick', val)
}
}
// setup
defineExpose({
TableBaseComponents_Ref,

7
src/views/wms/deliversettlementManage/inducedProduct/deliverRecordMain/deliverRecordMain.data.ts

@ -1613,13 +1613,8 @@ export const MaintenanceBillDateDetailRules = reactive({
export const AdjustDiffDataMain = useCrudSchemas(reactive<CrudSchema[]>([
{
label: '客户订单号',
field: 'billDate',
field: 'customerOrderNumber',
sort: 'custom',
tableForm: {
type: 'FormDate',
placeholder: '请选择维护对账日期',
valueFormat: 'YYYYMMDD',
},
form: {
component: 'Input',
componentProps: {

53
src/views/wms/deliversettlementManage/inducedProduct/deliverRecordMain/index.vue

@ -127,7 +127,7 @@
</div>
</template>
</BasicForm>
<!-- 维护对账日期弹窗 -->
<!-- 调整差异弹窗 -->
<BasicForm
ref="adjustDiffDataRef"
:formAllSchemas="AdjustDiffDataMain.allSchemas"
@ -141,12 +141,15 @@
:footButttondata="footButttondataAdjustDiffData"
:isShowReduceButton="false"
:isShowReduceButtonSelection="true"
:updateTypeEdiltSubList="true"
:detailButttondata="detailButttondata"
@handleAddTable="handleAddTableBillDate"
@handleDeleteTable="handleDeleteTableBillDate"
@tableSelectionDelete="tableSelectionDeleteBillDate"
@searchTableSuccess="searchTableAddSuccessBillDate"
@clearSearchInput="clearSearchInputBillDate"
@footButtonClick="footButtonClickAdjustDiffData"
@detailButttondataClick="detailButttondataClick"
>
<template #table>
<div>
@ -269,6 +272,17 @@ const HeadButttondata = [
// color: ''
// },
]
const detailButttondata = [
{
label: t('ts.调整差异数量'),
name: 'adjustDiffData',
hide: false,
type: 'primary',
icon: '',
color: '',
hasPermi: ''
},
]
//
const buttonBaseClick = (val, item) => {
@ -730,13 +744,46 @@ const searchTableAddSuccessBillDate = (formField, searchField, val, formRef, typ
}
const footButtonClickAdjustDiffData = async (val) => {
if (val == 'nextStep') {
adjustDifferenceDataNextStep()
} else if (val == 'close') {
adjustDiffDataRef.value.dialogVisible = false
}
}
const fileDataList = ref()
//
const openDifferenceData = () => {
adjustDiffDataRef.value.dialogVisible = true
const openDifferenceData = (formModel,list) => {
console.log(333,formModel)
adjustDiffDataRef.value.open('create')
nextTick(() => {
adjustDiffDataRef.value.formRef.setValues(formModel)
fileDataList.value = list
})
}
const detailButttondataClick = (val) => {
//
if (val == 'adjustDiffData') {
handleAdjustDifferenceData()
}
}
const handleAdjustDifferenceData = async () => {
const elForm = unref(adjustDiffDataRef.value.formRef)?.getElFormRef()
//
if (!elForm) return
const valid = await elForm.validate()
if (!valid) return
if (tableDataBillDate.value.length > 0) {
const validateForm = await adjustDiffDataRef.value.tableFormRef.validateForm()
if (!validateForm) {
return
}
}
const data = unref(adjustDiffDataRef.value.formRef)?.formModel
data.notIncludedList = tableDataBillDate.value ? tableDataBillDate.value : []
data.fileDataList = fileDataList.value
await submitForm(data)
}
//
const adjustDifferenceDataNextStep = async () => {
}
/** 初始化 **/
onMounted(async () => {

Loading…
Cancel
Save