|
|
@@ -134,14 +134,14 @@
|
|
|
<vxe-table ref="tableRightRef" border :data="form.priceDetail" :column-config="{ resizable: true }">
|
|
|
<vxe-column type="seq" width="60" title="序号" align="center" />
|
|
|
<vxe-column v-if="form.permitType === '2'" title="企业名称" align="center" min-width="100" :formatter="colNoData">
|
|
|
- <template #default="{ row }">{{ row?.cpyName }}</template>
|
|
|
+ <template #default="{ row, $rowIndex }">{{ row?.cpyName || form?.permitCpyNames[$rowIndex] || '-' }}</template>
|
|
|
</vxe-column>
|
|
|
<vxe-column title="适用类型" align="center" field="memberLevelName" min-width="100" :formatter="colNoData" />
|
|
|
<vxe-column title="折扣标准" align="center" min-width="100">
|
|
|
<template #default="{ row }">{{ NP.times(row?.memberDiscount, 10) }}折</template>
|
|
|
</vxe-column>
|
|
|
<vxe-column title="折扣后售价" align="center" field="name" min-width="100">
|
|
|
- <template #default="{ row }">{{ row?.discountPrice }}元</template>
|
|
|
+ <template #default="{ row }">{{ NP.times(row?.originalPrice, row?.memberDiscount) }}元</template>
|
|
|
</vxe-column>
|
|
|
<vxe-column title="最终售价" align="center" min-width="100">
|
|
|
<template #default="{ row }">
|
|
|
@@ -171,7 +171,7 @@ import NP from 'number-precision';
|
|
|
import { colNoData } from '@/utils/noData';
|
|
|
import { vipDiscountList } from '@/api/cdt/discount';
|
|
|
import { debounce } from 'lodash';
|
|
|
-import { addTestPackage, getTestPackage, getTestPackageItems, testPackageSale } from '@/api/cdt/menus';
|
|
|
+import { addTestPackage, editTestPackage, getTestPackage, getTestPackageItems, testPackageSale } from '@/api/cdt/menus';
|
|
|
const { query }: any = useRoute();
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
const { dm_package_type, dm_permit_type, vip_level } = toRefs<any>(proxy?.useDict('dm_package_type', 'dm_permit_type', 'vip_level'));
|
|
|
@@ -246,14 +246,22 @@ const submitSever = async (type) => {
|
|
|
memberLevel: item.memberLevel,
|
|
|
memberDiscount: item.memberDiscount,
|
|
|
originalPrice: item.originalPrice,
|
|
|
+ memberLevelName: item.memberLevelName,
|
|
|
price: item.price
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
delete params.items;
|
|
|
- const res = await addTestPackage(params).finally(() => {
|
|
|
- proxy.$modal.closeLoading();
|
|
|
- });
|
|
|
+ let res = null;
|
|
|
+ if (form.value.id) {
|
|
|
+ res = await editTestPackage(params).finally(() => {
|
|
|
+ proxy.$modal.closeLoading();
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ res = await addTestPackage(params).finally(() => {
|
|
|
+ proxy.$modal.closeLoading();
|
|
|
+ });
|
|
|
+ }
|
|
|
if (!res || res.code !== 200) return;
|
|
|
if (type) {
|
|
|
await testPackageSale(res.data?.id || form.value?.id);
|
|
|
@@ -310,13 +318,11 @@ const changePermit = (val: string[]) => {
|
|
|
memberDiscount: item.discount,
|
|
|
memberLevelName: item.name,
|
|
|
originalPrice: totalCountPrice.value,
|
|
|
- discountPrice: NP.times(item.discount, totalCountPrice.value),
|
|
|
price: NP.times(item.discount, totalCountPrice.value) || undefined
|
|
|
};
|
|
|
});
|
|
|
};
|
|
|
const changePermitCpys = (vals: any[]) => {
|
|
|
- console.log(vals);
|
|
|
form.value.priceDetail = vals.map(item => {
|
|
|
const discountItem = getDiscountItem(item.vipLevel || '0');
|
|
|
return {
|
|
|
@@ -325,7 +331,6 @@ const changePermitCpys = (vals: any[]) => {
|
|
|
memberLevel: discountItem?.level,
|
|
|
memberDiscount: discountItem?.discount,
|
|
|
originalPrice: totalCountPrice.value,
|
|
|
- discountPrice: NP.times(discountItem?.discount, totalCountPrice.value),
|
|
|
price: NP.times(discountItem?.discount, totalCountPrice.value) || undefined
|
|
|
};
|
|
|
});
|
|
|
@@ -347,11 +352,10 @@ const getDetail = async () => {
|
|
|
if (!res || res.code !== 200) return;
|
|
|
form.value = {
|
|
|
...res.data,
|
|
|
- items: []
|
|
|
+ items: [],
|
|
|
};
|
|
|
getItems();
|
|
|
};
|
|
|
-const itemsInfo = ref<any>([]);
|
|
|
const getItems = async () => {
|
|
|
const res = await getTestPackageItems({
|
|
|
pageNum: 1,
|