feature-JimuReport-1106-yjl
lijingjia 1 month ago
commit 02e788884d

@ -148,12 +148,21 @@
const feeList = feeField.value.validate()
values['details'] = feeList
values['condition'] = feeField.value.condition
values['customerName'] = props.customerName
values['customerName'] = props.customerName
values['customerId'] = props.customerId
loading.value = true
setModalProps({ confirmLoading: true, loading: true })
const res: API.DataResult = await ApiEdit(values)
loading.value = false
if (res.succeeded) {
createMessage.success(res.message)
isUpdate.value = true
rowId.value = res.data
setFieldsValue({
id: res.data,
})
emit('success')
} else {
createMessage.error(res.message)

@ -199,9 +199,29 @@
const validate = () => {
return list.value
}
const SetData = (data) => {
const SetData = async (data) => {
list.value.splice(0)
const customerTypeList: any = await getDictOption('djy_cust_prop')
const unitList: any = await feeUnitDict()
const unitList2: any = await getDictOption('fee_unit')
console.log(unitList, unitList2)
data.forEach((item) => {
customerTypeList.forEach((e) => {
if (e.value == item.customerType) {
item.customerTypeText = e.name
}
})
unitList.forEach((e) => {
if (e.name == item.unit) {
item.unitText = e.name
}
})
unitList2.forEach((e) => {
if (e.value == item.unit) {
item.unitText = e.name
}
})
list.value.push(item)
})
}

@ -167,8 +167,18 @@
const feeField = ref()
async function handleSave(exit) {
try {
const values = await validate()
const feeList = feeField.value.validate()
let type = true
feeList.forEach((item) => {
if (!item.taxUnitPrice) {
type = false
}
})
if (!type) {
createMessage.warning('费用明细列表含税单价为必填项!')
throw new Error('费用明细列表含税单价为必填项!')
}
const values = await validate()
values['details'] = feeList
values['condition'] = feeField.value.condition
values['isShared'] = true
@ -178,6 +188,11 @@
loading.value = false
if (res.succeeded) {
createMessage.success(res.message)
isUpdate.value = true
rowId.value = res.data
setFieldsValue({
id: res.data,
})
emit('success')
} else {
createMessage.error(res.message)

@ -199,9 +199,29 @@
const validate = () => {
return list.value
}
const SetData = (data) => {
const SetData = async (data) => {
list.value.splice(0)
const customerTypeList: any = await getDictOption('djy_cust_prop')
const unitList: any = await feeUnitDict()
const unitList2: any = await getDictOption('fee_unit')
console.log(unitList, unitList2)
data.forEach((item) => {
customerTypeList.forEach((e) => {
if (e.value == item.customerType) {
item.customerTypeText = e.name
}
})
unitList.forEach((e) => {
if (e.name == item.unit) {
item.unitText = e.name
}
})
unitList2.forEach((e) => {
if (e.value == item.unit) {
item.unitText = e.name
}
})
list.value.push(item)
})
}
@ -225,29 +245,6 @@
className: 'htCenter',
readOnly: false,
},
// {
// title: '',
// width: 130,
// data: 'customerName',
// type: 'dropdown',
// source: async (query, process) => {
// //
// const rowIndex = hotTb.value.hotInstance.getActiveEditor().row
// const code = list.value[rowIndex]?.customerType || null
// GetClientListByCode({ code }).then((res) => {
// const { data } = res
// data.forEach((item) => {
// item['label'] = item.shortName
// item['value'] = item.codeName
// })
// companyDict.value = data
// const dict = data.map((item) => {
// return item.codeName + '-' + item.shortName
// })
// process(dict)
// })
// },
// },
{
title: '费用名称',
width: 130,
@ -270,7 +267,6 @@
type: 'dropdown',
source: async (query, process) => {
const results = await getDictOption('djy_cust_prop')
console.log(results)
const dict = results.map((item) => {
return item.value + '-' + item.name
})
@ -285,7 +281,6 @@
source: async (query, process) => {
if (unitDict.value && unitDict.value.length) {
const dict = unitDict.value.map((item) => {
console.log(item, 11111111111111)
return item.name
})
process(dict)
@ -293,7 +288,6 @@
const results = await feeUnitDict()
unitDict.value = results
const dict = results.map((item) => {
console.log(item, 11111111111111)
return item.name
})
process(dict)
@ -393,161 +387,6 @@
data: 'isAdvancedPay',
type: 'checkbox',
},
// {
// title: '',
// width: 130,
// data: 'feeEnName',
// type: 'dropdown',
// source: async (query, process) => {
// const res = feeDict.value.length ? feeDict.value : (await GetFeeCodeSelectList())?.data
// if (!feeDict.value.length) feeDict.value = res
// const dict = res.map((res) => {
// return res.enName
// })
// process(dict)
// },
// },
// {
// title: '',
// width: 130,
// data: 'customerTypeText',
// type: 'dropdown',
// source: async (query, process) => {
// const results = await getDictOption('djy_cust_prop')
// const dict = results.map((item) => {
// return item.value + '-' + item.name
// })
// process(dict)
// },
// },
// {
// title: '',
// width: 120,
// data: 'quantity',
// type: 'numeric',
// format: '0',
// },
// {
// title: '',
// width: 120,
// data: 'noTaxPrice',
// type: 'numeric',
// readOnly: true,
// },
// {
// title: '',
// width: 120,
// data: 'noTaxAmount',
// type: 'numeric',
// format: '0.00',
// readOnly: true,
// },
// {
// title: '',
// width: 120,
// data: 'amount',
// type: 'numeric',
// },
// {
// title: '',
// width: 120,
// data: 'note',
// },
// {
// title: '',
// width: 100,
// data: 'accTaxAmount',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'accAmount',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'isOpen',
// type: 'checkbox',
// },
// {
// title: 'FRT',
// width: 120,
// data: 'feeFrt',
// type: 'dropdown',
// source: ['PP', 'CC'],
// },
// {
// title: '',
// width: 100,
// data: 'createByName',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'createTime',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'settlementAmount',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'invoiceAmount',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'debitNo',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'updateByName',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'updateTime',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'orderInvoiceAmount',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'debitNo',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'auditOperator',
// readOnly: true,
// },
// {
// title: '',
// width: 100,
// data: 'auditDate',
// readOnly: true,
// },
]
//
const settings = {
@ -586,19 +425,6 @@
if (source === 'edit' || source === 'Autofill.fill' || source === 'CopyPaste.paste') {
let dict = {}
changes.forEach((res) => {
// //
// if (changes[0][1] === 'feeTypeName') {
// const res = [
// { label: '', value: 1 },
// { label: '', value: 2 },
// ]
// const item = res.filter((item) => {
// return item.label === changes[0][3]
// })
// if (item) dict = item[0]
// list.value[changes[0][0]]['feeType'] = dict?.value
// list.value[changes[0][0]]['feeTypeName'] = dict?.label
// }
//
if (changes[0][1] === 'customerName') {
const item = companyDict.value.filter((item) => {
@ -624,13 +450,6 @@
list.value[res[0]]['taxRate'] = dict['taxRate']
list.value[res[0]]['isInvoice'] = dict['isInvoice']
list.value[res[0]]['isAdvancedPay'] = dict['isAdvancedPay']
// list.value[res[0]]['feeEnName'] = dict['enName']
// list.value[res[0]]['unitText'] = dict['defaultUnitName']
// list.value[res[0]]['customerTypeText'] = dict['defaultDebitName']
// list.value[res[0]]['customerType'] = dict['defaultDebit']
// list.value[res[0]]['isOpen'] = dict['isOpen']
// list.value[res[0]]['feeFrt'] = dict['feeFrt']
}
})
//
@ -641,37 +460,7 @@
if (item) dict = item[0]
list.value[changes[0][0]]['unit'] = dict?.value
list.value[changes[0][0]]['unitText'] = dict?.label
// list.value[changes[0][0]]['unitText'] = changes[0][3].split('-')[1]
//
// const text = list.value[changes[0][0]]['unitText']
// if (text == '') {
// list.value[changes[0][0]]['quantity'] = 1
// } else if (text == '') {
// list.value[changes[0][0]]['quantity'] = props.details.pkgs
// } else if (text == '') {
// list.value[changes[0][0]]['quantity'] = props.details.kgs
// } else if (text == '') {
// list.value[changes[0][0]]['quantity'] = props.details.cbm
// } else if (text == '') {
// let r = props.details.kgs
// const k = (props.details.pkgs || 0) / 1000
// if (k > r) {
// r = k
// }
// list.value[changes[0][0]]['quantity'] = r
}
// //
// if (changes[0][1] === 'currencyName') {
// const item = currencyDict.value.filter((item) => {
// return item.name === changes[0][3]
// })
// if (item) dict = item[0]
// list.value[changes[0][0]]['currency'] = dict?.codeName
// }
// ============================
// //
// if (changes[0][1] === 'feeEnName') {
// }
//
if (changes[0][1] === 'customerTypeText') {
@ -684,61 +473,6 @@
list.value[changes[0][0]]['customerTypeText'] = changes[0][3].split('-')[1]
})
}
// //
// const index = changes[0][0]
// //
// if (changes[0][1] === 'noTaxPrice') {
// //
// list.value[index].unitPrice = Number(
// (changes[0][3] || 0) * ((list.value[index].taxRate || 0) / 100 + 1),
// ).toFixed(6)
// //
// list.value[index].amount = Number(
// (list.value[index].unitPrice || 0) * (list.value[index].quantity || 0),
// ).toFixed(6)
// //
// list.value[index].noTaxAmount = Number(
// (changes[0][3] || 0) * (list.value[index].quantity || 0),
// ).toFixed(6)
// }
// //
// if (changes[0][1] === 'unitPrice') {
// //
// list.value[index].noTaxPrice = Number(
// (changes[0][3] || 0) / ((list.value[index].taxRate || 0) / 100 + 1),
// ).toFixed(6)
// //
// list.value[index].amount = Number(
// (changes[0][3] || 0) * (list.value[index].quantity || 0),
// ).toFixed(6)
// //
// list.value[index].noTaxAmount = Number(
// (list.value[index].noTaxPrice || 0) * (list.value[index].quantity || 0),
// ).toFixed(6)
// }
// //
// if (changes[0][1] === 'quantity') {
// //
// list.value[index].amount = Number(
// (changes[0][3] || 0) * (list.value[index].unitPrice || 0),
// ).toFixed(6)
// //
// list.value[index].noTaxAmount = Number(
// (changes[0][3] || 0) * (list.value[index].noTaxPrice || 0),
// ).toFixed(6)
// }
// //
// if (changes[0][1] === 'taxRate') {
// //
// list.value[index].noTaxPrice = Number(
// (list.value[index].unitPrice || 0) / ((changes[0][3] || 0) / 100 + 1),
// ).toFixed(6)
// //
// list.value[index].noTaxAmount = Number(
// (list.value[index].noTaxPrice || 0) * (list.value[index].quantity || 0),
// ).toFixed(6)
// }
}
},
}

@ -41,6 +41,19 @@
<template v-if="column.dataIndex == 'businessType'">
<span v-if="record.businessType == 1"></span>
</template>
<template v-if="column.dataIndex == 'amountRMB'">
<a-input-number :disabled="record.amountRMB == null" :precision="2" size="small"
:controls="false" :max="record.amountRMBTotal" v-model:value="record.amountRMB" />
</template>
<template v-if="column.dataIndex == 'amountOther'">
<a-input-number :disabled="record.amountOther == null" :precision="2" size="small"
:controls="false" :max="record.amountOtherTotal"
v-model:value="record.amountOther" />
</template>
<template v-if="column.dataIndex == 'amountUSD'">
<a-input-number :disabled="record.amountUSD == null" :precision="2" size="small"
:controls="false" :max="record.amountUSDTotal" v-model:value="record.amountUSD" />
</template>
</template>
</BasicTable>
</div>
@ -206,6 +219,11 @@ const freeDetailList = ref([]) as any
const [registerTable, { getForm, setSelectedRowKeys, getSelectRows, setProps, getRawDataSource, setLoading }] = useTable({
api: async (p) => {
const res: API.DataResult = await GetApplicationList(p)
res.data.forEach(item => {
item.amountUSDTotal = item.amountUSD
item.amountOtherTotal = item.amountOther
item.amountRMBTotal = item.amountRMB
})
return new Promise((resolve) => {
resolve({ data: [...res.data], total: res.count })
})
@ -440,10 +458,13 @@ function handleSureExhange() {
})
const resultMap = new Map();
applications.value.forEach(item => {
const { applicationId, currency, exchangeRate } = item;
const { applicationId, currency, exchangeRate, amountUSD, amountOther, amountRMB } = item;
if (!resultMap.has(applicationId)) {
resultMap.set(applicationId, {
applicationId,
amountUSD,
amountOther,
amountRMB,
exchangeRates: []
});
}
@ -594,14 +615,24 @@ const exchangarr = ref([]) as any
//
function addDetailed() {
const arrRight = getSelectRows() ? getSelectRows() : []
const arr0 = []
arrRight.forEach(item => {
if (item.amountUSD == 0 || item.amountRMB == 0 || item.amountOther == 0) {
arr0.push(1)
}
})
if (arr0.length > 0) {
createMessage.error('开票金额不能等于0')
return false
}
const arr1 = []
exchangarr.value = []
applications.value = []
const firstCustomerId = arrRight[0].customerId;
if (arrRight.length == 0) {
createMessage.error('请选择一条数据')
return false
}
const firstCustomerId = arrRight[0].customerId;
for (let i = 1; i < arrRight.length; i++) {
if (arrRight[i].customerId !== firstCustomerId) {
createMessage.error('请选择同一客户')
@ -616,9 +647,9 @@ function addDetailed() {
const arr = item.currency.split(' ')
arr.forEach(ite => {
applications.value.push({
amountOther:item.amountOther,
amountRMB:item.amountRMB,
amountUSD:item.amountUSD,
amountOther: item.amountOther,
amountRMB: item.amountRMB,
amountUSD: item.amountUSD,
applicationId: item.id,
currency: ite,
exchangeRate: 0
@ -633,41 +664,45 @@ function addDetailed() {
arr.push(item)
}
})
const uniqueData = arr.filter(item => {
if (!currencySet.has(item.currency)) {
currencySet.add(item.currency);
return true;
}
return false;
});
const promises = uniqueData.map(item => {
return new Promise((resolve) => {
const data = {
currencyFrom: 'RMB',
currencyTo: item.currency,
if (arr.length > 0) {
const uniqueData = arr.filter(item => {
if (!currencySet.has(item.currency)) {
currencySet.add(item.currency);
return true;
}
GetExchangeRate(data).then(res => {
exchangarr.value.push(res.data)
resolve(true);
})
return false;
});
});
return Promise.all(promises).then(() => {
applications.value.forEach(item => {
exchangarr.value.forEach(ite => {
if (item.currency == ite.currencyTo) {
item.exchangeRate = ite.reverseRate
const promises = uniqueData.map(item => {
return new Promise((resolve) => {
const data = {
currencyFrom: 'RMB',
currencyTo: item.currency,
}
GetExchangeRate(data).then(res => {
exchangarr.value.push(res.data)
resolve(true);
})
});
});
return Promise.all(promises).then(() => {
applications.value.forEach(item => {
exchangarr.value.forEach(ite => {
if (item.currency == ite.currencyTo) {
item.exchangeRate = ite.reverseRate
}
})
})
})
exchangeFlag.value = true
});
exchangeFlag.value = true
});
} else {
emits('updateList', applications.value)
open.value = false
exchangeFlag.value = false
}
}
const customerIdP = ref('')
defineExpose({ init, customerIdP })
</script>
<style lang="less" scoped>

@ -1692,7 +1692,7 @@ export function GetShippingOrderCompareResult(parameter) {
export function GetWebData(parameter) {
return request({
url: '/BookingOrder/GetWebData',
url: '/opApi/SeaExport/GetWebData',
method: 'get',
params: parameter,
})
@ -2276,4 +2276,5 @@ export function RefundPool(data) {
method: 'post',
data
})
}
}

@ -331,16 +331,6 @@ export const FeeStatus = [
]
//列表
export const columns: BasicColumn[] = [
{
dataIndex: 'lstDraftCompareRlt',
title: '格式单比对',
width: 120,
},
{
dataIndex: 'lstShipOrderCompareRlt',
title: '下货纸比对',
width: 120,
},
{
dataIndex: 'customerNo',
title: '委托编号',
@ -521,6 +511,16 @@ export const columns: BasicColumn[] = [
sorter: true,
width: 150,
},
{
dataIndex: 'lstDraftCompareRlt',
title: '格式单比对',
width: 120,
},
{
dataIndex: 'lstShipOrderCompareRlt',
title: '下货纸比对',
width: 120,
},
{
dataIndex: 'stlDate',
title: '结算日期',

@ -5,10 +5,7 @@
<div>
<TableActionBar :selectRow="getSelectRows" :reload="reload">
<tableActionBarRight :selectRow="getSelectRows" :reload="reload"></tableActionBarRight>
<Divider
type="vertical"
style="margin-top: 11px; background-color: #CED5D9;"
/>
<Divider type="vertical" style="margin-top: 11px; background-color: #CED5D9;" />
</TableActionBar>
</div>
</template>
@ -103,20 +100,20 @@
<!-- 运踪 -->
<template v-if="column.dataIndex == 'bookStatus'">
<div @click="checkBookStatus(record.id)">
<div v-if="record.bookingStatus && record.bookingStatus.length">
<span class="iconfont icon-refresh-1-copy"></span>
<span v-for="(item, index) in record.bookingStatus" :key="item.id">
<a-tooltip placement="top">
<template #title>
<span>{{ item.statusTime }}</span>
</template>
<span>{{ item.statusName }}<span v-if="index != record.bookingStatus?.length - 1">-</span></span>
</a-tooltip>
</span>
</div>
<div v-else style="cursor: pointer;">
<span class="iconfont icon-refresh-1-copy"></span> 舱单-海放-装载-码放-装船-离港
</div>
</div>
<div>
<span class="iconfont icon-refresh-1-copy"></span>
<span v-for="(item, index) in record.bookingStatus" :key="item.id">
<a-tooltip placement="top" v-if="item.statusTime">
<template #title>{{ item.statusTime }}</template>
<span @click="handleGetWebDataYZ(record, item.statusCode)" :class="{ yzActive: item.isChecked }">
{{ item.statusName }}
</span>
</a-tooltip>
<span style="cursor: pointer" @click="handleGetWebDataYZ(record, record.statusCode)"
:class="{ active: item.isChecked }" v-else>{{ item.statusName }}</span>
<span v-if="index != record.bookingStatus?.length - 1">-</span>
</span>
</div>
</template>
<!-- 格式单比对 -->
@ -137,14 +134,14 @@
</div>
</div>
</a-popover>
<i v-if="record.lstDraftCompareRlt" title="查看比对结果" style="margin-left: 10px" @click="handleFormatContrast(record)"
class="icon-shiyongwendang iconfont compareIcon"></i>
<i v-if="record.lstDraftCompareRlt" title="查看比对结果" style="margin-left: 10px"
@click="handleFormatContrast(record)" class="icon-shiyongwendang iconfont compareIcon"></i>
</div>
</template>
<!-- 下货纸比对 -->
<template v-if="column.dataIndex == 'lstShipOrderCompareRlt'">
<div class="goods-status">
<RedoOutlined style="margin-left: 10px" @click="excuteShippingOrderCompareBatch(record)"/>
<RedoOutlined style="margin-left: 10px" @click="excuteShippingOrderCompareBatch(record)" />
<a-popover>
<template #content>
<p>
@ -164,7 +161,7 @@
</template>
<div style="cursor: pointer" @click="handleOpenResult(record)">
<div v-if="record.lstShipOrderCompareRlt == 'DIFF'">
<CloseCircleFilled :style="{ color: 'red' }" />
<CloseCircleFilled :style="{ color: 'red' }" />
</div>
<div v-if="record.lstShipOrderCompareRlt == 'NO_DIFF'">
<CheckCircleFilled :style="{ color: '#54bc25' }" />
@ -173,13 +170,13 @@
<CheckCircleFilled :style="{ color: 'rgb(187,37,155)' }" />
</div>
<div v-if="record.lstShipOrderCompareRlt == 'BEFORE_DIFF'">
<CloseCircleFilled :style="{ color: 'red' }" />
<CloseCircleFilled :style="{ color: 'red' }" />
</div>
<div v-if="record.lstShipOrderCompareRlt == 'NO_DIFF_U'">
<CheckCircleFilled :style="{ color: '#54bc25' }" />
</div>
<div v-if="record.lstShipOrderCompareRlt == 'DIFF_U'">
<CloseCircleFilled :style="{ color: 'red' }" />
<CloseCircleFilled :style="{ color: 'red' }" />
</div>
</div>
</a-popover>
@ -279,7 +276,8 @@
</div>
</div>
</a-modal>
<lstDraftCompareRlt @setLoad="setLoadCompare" @handleSuccess="compareSuccess" ref="lstDraftCompareRltRef"></lstDraftCompareRlt>
<lstDraftCompareRlt @setLoad="setLoadCompare" @handleSuccess="compareSuccess" ref="lstDraftCompareRltRef">
</lstDraftCompareRlt>
</div>
</template>
<script lang="ts" setup name="订单管理">
@ -288,7 +286,7 @@ const TableActionBar = defineAsyncComponent(() => import("./components/tableActi
import { CheckCircleFilled, CloseCircleFilled, RedoOutlined } from '@ant-design/icons-vue'
const tableActionBarRight = defineAsyncComponent(() => import("./components/tableActionBarRight.vue"))
import { BasicTable, useTable, TableAction } from '/@/components/Table'
import { PageDataByBooking, SeaExportCopy } from './api/BookingLedger.js'
import { PageDataByBooking, SeaExportCopy, GetWebData } from './api/BookingLedger.js'
import { Divider } from 'ant-design-vue'
import { useModal } from '/@/components/Modal'
import { columns, searchFormSchema } from './columns'
@ -411,6 +409,25 @@ const [registerTable, { reload, getForm, setLoading, getSelectRows }] = useTable
item.issueDate = formatTableData(item.issueDate)
item.customDate = formatTableData(item.customDate)
item.inspectionDate = formatTableData(item.inspectionDate)
const bookstatus = [
{ statusCode: 'status_cangdan', isChecked: false, statusName: '舱单' },
{ statusCode: 'status_haifang', isChecked: false, statusName: '海放' },
{ statusCode: 'status_zhuangzai', isChecked: false, statusName: '装载' },
{ statusCode: 'status_mafang', isChecked: false, statusName: '码放' },
{ statusCode: 'status_zhuangchuan', isChecked: false, statusName: '装船' },
{ statusCode: 'status_atd', isChecked: false, statusName: '离港' }
]
if (item.bookingStatus && item.bookingStatus.length > 0) {
bookstatus.map((book, bindex) => {
item.bookingStatus.map((ite, index) => {
if (ite.statusCode == book.statusCode) {
bookstatus[bindex] = ite
bookstatus[bindex].isChecked = true
}
})
})
}
item.bookingStatus = bookstatus
})
if (res?.data?.list) {
const ids = res.data.list.map((item) => {
@ -490,6 +507,36 @@ function moreNumSubmit() {
function moreNumCancel() {
moreNumVisible.value = false
}
const webDataTitle = ref('')
const webData = ref('')
const webDataFlag = ref(false)
function handleGetWebDataYZ(row, code) {
let webCode = ''
this.webData = ''
if (code === 'static_haifang' || code === 'static_cangdan') {
webCode = 'HLW_CD'
webDataTitle.value = '物流信息数据'
} else {
webCode = 'YGT'
webDataTitle.value = '云港通数据'
}
const data = {
bookingId: row.id,
webCode: webCode
}
setLoading(true)
GetWebData(data).then((res) => {
if (res.code === 200) {
webData.value = res.data
webDataFlag.value = true
} else {
createMessage.error(res.message)
}
setLoading(false)
}).catch(() => {
setLoading(false)
})
}
const bsloading = ref(false)
//
const checkBookStatus = (id) => {
@ -577,16 +624,16 @@ const lstDraftCompareRltRef = ref()
function handleFormatContrast(row) {
lstDraftCompareRltRef.value.initLstDraft(row)
}
function excuteShippingOrderCompareBatch(row){
function excuteShippingOrderCompareBatch(row) {
lstDraftCompareRltRef.value.reload(row)
}
function handleOpenResult(row){
function handleOpenResult(row) {
lstDraftCompareRltRef.value.initTask(row)
}
function setLoadCompare(){
function setLoadCompare() {
setLoading(true);
}
function compareSuccess(){
function compareSuccess() {
setLoading(false);
reload()
}
@ -600,6 +647,7 @@ onMounted(() => {
<style lang="less">
.ds-sea-export-table {
height: 100%;
.ant-table-footer {
display: none;
}
@ -613,6 +661,7 @@ onMounted(() => {
color: #257afa;
cursor: pointer;
}
.ds-table {
.ant-table-body {
min-height: calc(100vh - 430px);
@ -625,7 +674,15 @@ onMounted(() => {
cursor: pointer;
font-size: 15px
}
.goods-status{
.goods-status {
display: flex;
}
.yzActive {
cursor: pointer;
color: #ff9702 !important;
font-weight: bold;
font-size: 12px;
}
</style>

Loading…
Cancel
Save