huangxw 10 hónapja
szülő
commit
dba9775958

+ 28 - 4
src/views/cdt/menus/form/index.vue

@@ -136,7 +136,7 @@
                             <vxe-column v-if="form.permitType === '2'" title="企业名称" align="center" min-width="100" :formatter="colNoData">
                                 <template #default="{ row }">{{ row?.cpyName }}</template>
                             </vxe-column>
-                            <vxe-column title="适用类型" align="center" field="name" min-width="100" :formatter="colNoData" />
+                            <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>
@@ -171,7 +171,8 @@ import NP from 'number-precision';
 import { colNoData } from '@/utils/noData';
 import { vipDiscountList } from '@/api/cdt/discount';
 import { debounce } from 'lodash';
-import { addTestPackage, testPackageSale } from '@/api/cdt/menus';
+import { addTestPackage, 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'));
 // 字典
@@ -307,6 +308,7 @@ const changePermit = (val: string[]) => {
             ...item,
             memberLevel: item.level,
             memberDiscount: item.discount,
+            memberLevelName: item.name,
             originalPrice: totalCountPrice.value,
             discountPrice: NP.times(item.discount, totalCountPrice.value),
             price: NP.times(item.discount, totalCountPrice.value) || undefined
@@ -317,10 +319,9 @@ const changePermitCpys = (vals: any[]) => {
     console.log(vals);
     form.value.priceDetail = vals.map(item => {
         const discountItem = getDiscountItem(item.vipLevel || '0');
-        console.log(discountItem);
         return {
             cpyName: item.cpyName,
-            name: discountItem?.name,
+            memberLevelName: discountItem?.name,
             memberLevel: discountItem?.level,
             memberDiscount: discountItem?.discount,
             originalPrice: totalCountPrice.value,
@@ -338,7 +339,30 @@ const changePermitType = () => {
     form.value.permitCpys = [];
     form.value.priceDetail = [];
 };
+const getDetail = async () => {
+    proxy?.$modal.loading('加载中...');
+    const res = await getTestPackage(query?.id).finally(() => {
+        proxy?.$modal.closeLoading();
+    });
+    if (!res || res.code !== 200) return;
+    form.value = {
+        ...res.data,
+        items: []
+    };
+    getItems();
+};
+const itemsInfo = ref<any>([]);
+const getItems = async () => {
+    const res = await getTestPackageItems({
+        pageNum: 1,
+        pageSize: 1000,
+        packageId: query?.id
+    });
+    if (!res || res.code !== 200) return;
+    form.value.items = res.rows;
+};
 onMounted(() => {
     getDiscount();
+    getDetail();
 });
 </script>

+ 1 - 1
src/views/cdt/menus/index.vue

@@ -80,7 +80,7 @@
                             <template v-if="+row?.status === 0">
                                 <el-button @click="putaway(row)" text type="primary">上架</el-button>
                                 <span></span>
-                                <el-button text type="primary">编辑</el-button>
+                                <el-button @click="router.push({ path: 'menus-form', query: { id: row?.id } })" text type="primary">编辑</el-button>
                             </template>
                             <template v-if="+row?.status === 1">
                                 <el-button @click="soldOut(row)" text type="danger">下架</el-button>

+ 3 - 0
src/views/models/SearchSelect.vue

@@ -81,4 +81,7 @@ onMounted(() => {
       });
     });
 })
+watch(() => props.modelValue, (val) => {
+    value.value = val
+}, { immediate: true })
 </script>