Commit 3ba91595 by qinjianhui

fix: 排单选择排版宽度修改

parent 82b25374
......@@ -32,7 +32,12 @@
</template>
</ElTableColumn>
</template>
<ElTableColumn v-else header-align="center" v-bind="col">
<template v-else>
<ElTableColumn
v-if="col.showColumn !== false"
header-align="center"
v-bind="col"
>
<template #header="{ column, $index }">
<component
:is="() => col.headerRender(column, $index)"
......@@ -52,10 +57,7 @@
</template>
<!-- 如果传递按钮数组,就展示按钮组 END-->
<!-- render函数 (START) 使用内置的component组件可以支持h函数渲染和txs语法-->
<component
:is="() => col.render(row, $index)"
v-if="col.render"
/>
<component :is="() => col.render(row, $index)" v-if="col.render" />
<slot
v-else-if="col.slot"
:name="col.slot"
......@@ -65,6 +67,7 @@
<span v-else>{{ row[col.prop!] }}</span>
</template>
</ElTableColumn>
</template>
</template>
<script lang="ts" setup>
import type { Column } from 'element-plus'
......
import type { Column as ElColumn } from 'element-plus/lib/components/index.js'
interface Column<D> extends Omit<ElColumn, 'width'> {
/** 为 false 时隐藏该列;未设置时默认显示 */
showColumn?: boolean
width?: number | string
minWidth?: number | string
key?: string
......
......@@ -21,12 +21,6 @@
/>
</ElFormItem>
<template v-if="isAuto || !showAutoSwitch">
<!-- <ElFormItem label="排版类型">
<el-radio-group v-model="form.type">
<el-radio label="tiff">tiff</el-radio>
<el-radio label="png">png</el-radio>
</el-radio-group>
</ElFormItem> -->
<ElFormItem label="排版宽度">
<el-radio-group v-model="form.templateWidth">
<el-radio :value="42">40+2cm</el-radio>
......@@ -92,10 +86,9 @@ const handleSubmit = async () => {
const { templateWidth } = form.value
const mustFill = isAuto.value || !showAutoSwitch.value
if (mustFill && (!templateWidth)) {
return ElMessage.warning('排版宽度为必选项')
if (mustFill && !templateWidth) {
return ElMessage.warning('请选择排版宽度')
}
if (!templateWidth) return ElMessage.warning('请选择排版宽度')
submitting.value = true
try {
......
......@@ -430,16 +430,32 @@
</span>
<template #dropdown>
<ElDropdownMenu>
<ElDropdownItem command="createLogistic"
<ElDropdownItem
command="createLogistic"
:disabled="
cardSelectList.some((item) => item.shipmentType !== 1)
"
>创建物流订单</ElDropdownItem
>
<ElDropdownItem command="getTrackingNumber"
<ElDropdownItem
command="getTrackingNumber"
:disabled="
cardSelectList.some((item) => item.shipmentType !== 1)
"
>获取跟踪号</ElDropdownItem
>
<ElDropdownItem command="getPrintOrder"
<ElDropdownItem
command="getPrintOrder"
:disabled="
cardSelectList.some((item) => item.shipmentType !== 1)
"
>获取打印面单</ElDropdownItem
>
<ElDropdownItem command="cancelLogistic"
<ElDropdownItem
command="cancelLogistic"
:disabled="
cardSelectList.some((item) => item.shipmentType !== 1)
"
>取消物流订单</ElDropdownItem
>
</ElDropdownMenu>
......@@ -1111,10 +1127,19 @@ const mainColumns = [
minWidth: 160,
},
{
prop: 'logisticsWayName',
prop: 'shipmentType',
label: '物流方式',
minWidth: 140,
align: 'center',
render: (row: FactoryOrderNewListData) => {
return (
<div>
{row.shipmentType === 0 && <span>自有物流</span>}
{row.shipmentType === 1 && <span>工厂物流</span>}
{row.shipmentType === 2 && <span>自提</span>}
</div>
)
},
},
{
prop: 'trackingNumber',
......@@ -1146,7 +1171,7 @@ const mainColumns = [
label: '收货地址',
minWidth: 220,
align: 'left',
render: ({ row }: { row: FactoryOrderNewListData }) => {
render: (row: FactoryOrderNewListData) => {
return (
<div>
<span>{row?.receiverCountry || ''}</span>
......@@ -1181,7 +1206,13 @@ const mainColumns = [
},
]
const baseProductColumns = [
const showProductInventoryColumns = computed(
() =>
status.value !== 'PENDING_RECEIVE' ||
pendingAcceptSubTab.value !== 'PENDING_RECEIVE',
)
const baseProductColumns = computed(() => [
{
key: 'variantImage',
prop: 'variantImage',
......@@ -1230,8 +1261,7 @@ const baseProductColumns = [
align: 'center',
},
{
key: 'styleNo',
prop: 'styleNo',
prop: 'supplierProductNo',
label: '款号',
minWidth: 100,
align: 'center',
......@@ -1253,6 +1283,7 @@ const baseProductColumns = [
label: '可用数量',
minWidth: 100,
align: 'right',
showColumn: showProductInventoryColumns.value,
render: (row: ProductListData) => {
const available = new BigNumber(row.inventory ?? 0)
.minus(row.occupyInventory ?? 0)
......@@ -1266,12 +1297,14 @@ const baseProductColumns = [
label: '库存数量',
minWidth: 100,
align: 'right',
showColumn: showProductInventoryColumns.value,
},
{
prop: 'occupyInventory',
label: '占用数量',
minWidth: 100,
align: 'right',
showColumn: showProductInventoryColumns.value,
},
{
prop: 'customsNameEnglish',
......@@ -1320,12 +1353,12 @@ const baseProductColumns = [
)
},
},
]
])
const productColumns = computed(() => {
if (status.value === 'PENDING_DELIVERY') {
return [
...baseProductColumns,
...baseProductColumns.value,
{
key: 'operation',
prop: 'operation',
......@@ -1369,7 +1402,7 @@ const productColumns = computed(() => {
},
]
}
return baseProductColumns
return baseProductColumns.value
})
const confirmOrderDialogRef = ref<InstanceType<typeof ConfirmOrderDialog>>()
......@@ -1380,7 +1413,8 @@ const pickFailDialogRef = ref<InstanceType<typeof PickFailDialog>>()
const operateDetailsDialogRef = ref()
const arrangeDialogRef = ref<InstanceType<typeof ArrangeDialog>>()
const createLogisticDialogRef = ref()
const printWarehouseSkuDialogRef = ref<InstanceType<typeof PrintWarehouseSkuTag>>()
const printWarehouseSkuDialogRef =
ref<InstanceType<typeof PrintWarehouseSkuTag>>()
const updateCustomsDialogVisible = ref(false)
const weightDialogRef = ref()
const detailVisible = ref(false)
......
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