Commit 0c69be4f by qinjianhui

feat: 确认对账单加意见

parent e2f4903b
......@@ -21,6 +21,7 @@ import {
AccountStatementNote,
AccountStatementNoteSearchForm,
BillOrderDetailData,
ConfirmOrderForm,
CountStatus,
} from '@/types/api/billOrder'
......@@ -353,3 +354,10 @@ export function getShipmentOrderDetailById(id?: number | string) {
},
)
}
export function confirmOrderApi(data: ConfirmOrderForm) {
return axios.post<never, BaseRespData<never>>(
'reconciliation/confirm',
data,
)
}
\ No newline at end of file
......@@ -65,6 +65,16 @@
/></el-icon>
</span>
</div>
<div
:title="item.sub_order_number || ''"
class="order-list-expand_item_info_title"
>
<span class="order-list-expand_item_label">款号:</span>
<span class="order-list-expand_item_value"
>{{ item.product.dbDiy.bianma || '--'
}}
</span>
</div>
<div class="order-list-expand_item_info_title">
<span class="order-list-expand_item_label">已发数:</span>
<span class="order-list-expand_item_value">{{
......
......@@ -80,3 +80,9 @@ export interface ItemList {
id: number
factory_order_number?: string
}
export interface ConfirmOrderForm {
pass?: number | null
description?: string
ids?:string
}
......@@ -113,7 +113,7 @@
<el-button
v-if="nodeId === 10"
type="primary"
@click="auditOrder('confirm')"
@click="confirmOrder"
>
确认对账单
</el-button>
......@@ -532,10 +532,11 @@
:key="index"
style="display: flex"
>
<span style="display: inline-block; width: 13%">
<span style="display: inline-block;">
{{ item.create_time }}
</span>
<span style="display: inline-block; width: 80%">{{
<span style="margin: 0 5px 0 20px;">{{ item.employee_account }}</span>
<span style="display: inline-block;">{{
item.description
}}</span>
</li>
......@@ -547,49 +548,6 @@
</div>
</div>
</div>
<!-- <ElDialog v-model="dialogVisible" width="1100px" draggable title="编辑">
<el-form v-model="editForm" style="width: 100%" inline label-width="120px">
<el-form-item prop="billNumber" label="发货单号">
<el-input v-model="editForm.billNumber" disabled></el-input>
</el-form-item>
<el-form-item prop="orderNumber" label="订单号">
<el-input v-model="editForm.orderNumber" disabled></el-input>
</el-form-item>
<el-form-item prop="notPassNum" label="质检未通过数量">
<el-input v-model="editForm.notPassNum" disabled></el-input>
</el-form-item>
<el-form-item prop="lanshouName" label="收货人">
<el-input v-model="editForm.lanshouName" disabled></el-input>
</el-form-item>
<el-form-item prop="lanshouPhone" label="收货人电话">
<el-input v-model="editForm.lanshouPhone" disabled></el-input>
</el-form-item>
<el-form-item prop="lanshouRegion" label="揽收区域">
<el-input v-model="editForm.lanshouRegion" disabled></el-input>
</el-form-item>
<el-form-item prop="lanshouAddress" label="揽收地址">
<el-input v-model="editForm.lanshouAddress" disabled></el-input>
</el-form-item>
<el-form-item prop="lanshouPost" label="揽收邮编">
<el-input v-model="editForm.lanshouPost" disabled></el-input>
</el-form-item>
<el-form-item prop="passNum" label="质检通过数量">
<el-input v-model="editForm.passNum"></el-input>
</el-form-item>
<el-form-item prop="shipmentNum" label="发货数量">
<el-input v-model="editForm.shipmentNum"></el-input>
</el-form-item>
<el-form-item prop="totalPrice" label="质检通过总价">
<el-input v-model="editForm.totalPrice"></el-input>
</el-form-item>
</el-form>
<template #footer>
<el-button @click="dialogVisible = false">取消</el-button>
<el-button type="primary" @click="submitData">确认</el-button>
</template>
</ElDialog> -->
<ElDrawer
v-model="shipmentOrderDetailDrawerVisible"
title="发货单详情"
......@@ -597,10 +555,46 @@
>
<shipmentOrderDetailInfo :detail="shipmentOrderDetail" />
</ElDrawer>
<ElDialog
v-model="confirmOrderVisible"
title="确认对账单"
width="500px"
:close-on-click-modal="false"
>
<ElForm ref="auditFormRef" :model="auditForm" label-width="80px">
<ElFormItem
label="意见"
prop="pass"
:rules="[{ required: true, message: '请选择' }]"
>
<ElRadioGroup v-model="auditForm.pass">
<ElRadio :label="1">通过</ElRadio>
<ElRadio :label="0">不通过</ElRadio>
</ElRadioGroup>
</ElFormItem>
<ElFormItem
label="审核意见"
prop="description"
:rules="
auditForm.pass === 0
? [{ required: true, message: '请输入审核意见' }]
: []
"
>
<ElInput v-model="auditForm.description" type="textarea" />
</ElFormItem>
</ElForm>
<template #footer>
<span class="dialog-footer">
<el-button @click="confirmOrderVisible = false">取消</el-button>
<el-button type="primary" @click="submitConfirmOrder">确认</el-button>
</span>
</template>
</ElDialog>
</template>
<script setup lang="ts">
import { ElMessage, ElTree, TableColumnCtx } from 'element-plus'
import { ElMessage, ElRadioGroup, ElTree, TableColumnCtx } from 'element-plus'
import splitDiv from '@/components/splitDiv/splitDiv.vue'
import { ElTable } from 'element-plus'
import usePageList from '@/utils/hooks/usePageList'
......@@ -611,6 +605,7 @@ import {
getShipmentDetailsById,
auditOrderApi,
getShipmentOrderDetailById,
confirmOrderApi,
} from '@/api/order'
import { ref, onMounted, watch, nextTick } from 'vue'
......@@ -789,6 +784,12 @@ const getSummaries = (param: SummaryMethodProps) => {
return sums
}
const confirmOrderVisible = ref<boolean>(false)
const auditForm = ref({
pass: 1,
description: '',
})
const auditFormRef = ref()
const auditOrder = (key: string) => {
let url = ''
let text = ''
......@@ -801,10 +802,6 @@ const auditOrder = (key: string) => {
url = 'reconciliation/archiving'
text = '确认归档'
break
case 'confirm':
url = 'reconciliation/confirm'
text = '确认'
break
}
if (selections.value.length === 0) {
......@@ -821,6 +818,42 @@ const auditOrder = (key: string) => {
await getTreeNum()
})
}
const confirmOrder = async () => {
if (selections.value.length === 0) {
return ElMessage.warning('请选择要操作的数据')
}
confirmOrderVisible.value = true
auditForm.value = {
pass: 1,
description: '',
}
await nextTick()
auditFormRef.value!.clearValidate()
}
const submitConfirmOrder = async () => {
try {
await auditFormRef.value?.validate()
} catch {
return
}
const ids = selections.value.map((el) => el.id).join(',')
await confirmOrderApi({
...auditForm.value,
pass: auditForm.value.pass === 0 ? 0 : undefined,
description:
auditForm.value.description === ''
? undefined
: auditForm.value.description,
ids,
})
confirmOrderVisible.value = false
ElMessage.success('操作成功')
search()
await getTreeNum()
if (singleTableRef.value) {
singleTableRef.value!.setCurrentRow(currentRow.value)
}
}
watch(
() => tableData.value,
() => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment