Răsfoiți Sursa

套餐分享区分环境

xiaoyelj 9 luni în urmă
părinte
comite
95e2315244
3 a modificat fișierele cu 37 adăugiri și 18 ștergeri
  1. 2 0
      .env.development
  2. 2 0
      .env.production
  3. 33 18
      src/views/cdt/menus/index.vue

+ 2 - 0
.env.development

@@ -36,3 +36,5 @@ VITE_APP_WEBSOCKET = false
 
 # sse 开关
 VITE_APP_SSE = true
+
+PACKAGE_SHARE_URL = 'http://dm.share.yujin.shuziyunyao.com/package'

+ 2 - 0
.env.production

@@ -36,3 +36,5 @@ VITE_APP_WEBSOCKET = false
 
 # sse 开关
 VITE_APP_SSE = true
+
+PACKAGE_SHARE_URL = 'https://www.shuziyunyao.com/dm/package'

+ 33 - 18
src/views/cdt/menus/index.vue

@@ -10,22 +10,27 @@
                     <div class="flex1 ov-hd d-flex j-ed">
                         <el-form :model="queryParams" ref="queryFormRef" :inline="true" label-width="auto">
                             <el-form-item label="套餐名称:" prop="name">
-                                <el-input v-model="queryParams.name" placeholder="请输入套餐名称关键字" clearable style="width: 180px" @keyup.enter="handleQuery" />
+                                <el-input v-model="queryParams.name" placeholder="请输入套餐名称关键字" clearable style="width: 180px"
+                                    @keyup.enter="handleQuery" />
                             </el-form-item>
                             <el-form-item label="套餐状态" prop="status">
-                                <el-select style="width: 160px" v-model="queryParams.status" clearable placeholder="请选择套餐状态" @change="handleQuery">
+                                <el-select style="width: 160px" v-model="queryParams.status" clearable placeholder="请选择套餐状态"
+                                    @change="handleQuery">
                                     <el-option label="未上架" value="0"></el-option>
                                     <el-option label="在售" value="1"></el-option>
                                     <el-option label="已下架" value="2"></el-option>
                                 </el-select>
                             </el-form-item>
                             <el-form-item label="制定规则" prop="permitType">
-                                <el-select style="width: 160px" v-model="queryParams.permitType" clearable placeholder="请选择制定规则" @change="handleQuery">
-                                    <el-option v-for="item in dm_permit_type" :key="item.value" :label="item.label" :value="item.value"></el-option>
+                                <el-select style="width: 160px" v-model="queryParams.permitType" clearable
+                                    placeholder="请选择制定规则" @change="handleQuery">
+                                    <el-option v-for="item in dm_permit_type" :key="item.value" :label="item.label"
+                                        :value="item.value"></el-option>
                                 </el-select>
                             </el-form-item>
                             <el-form-item label="创建人" prop="createByName">
-                                <el-input v-model="queryParams.createByName" placeholder="请输入创建人关键字" clearable style="width: 160px" @keyup.enter="handleQuery" />
+                                <el-input v-model="queryParams.createByName" placeholder="请输入创建人关键字" clearable
+                                    style="width: 160px" @keyup.enter="handleQuery" />
                             </el-form-item>
                             <el-form-item>
                                 <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
@@ -36,13 +41,16 @@
                 </div>
             </div>
             <div class="flex1 ov-hd pd-16 d-flex flex-cln">
-                <searchTabs v-model="queryParams.publicFlag" @change="handleQuery" :list="tabs" key-label="name" key-value="type" key-count="num"></searchTabs>
+                <searchTabs v-model="queryParams.publicFlag" @change="handleQuery" :list="tabs" key-label="name"
+                    key-value="type" key-count="num"></searchTabs>
                 <div class="pd-8"></div>
                 <div class="flex1 ov-hd">
-                    <vxe-table :loading="loading" border :data="list" min-height="0" max-height="100%" :row-class-name="rowClassName">
+                    <vxe-table :loading="loading" border :data="list" min-height="0" max-height="100%"
+                        :row-class-name="rowClassName">
                         <!-- 序号 -->
                         <vxe-column type="seq" fixed="left" width="60" title="序号" align="center" />
-                        <vxe-column title="套餐名称" fixed="left" align="center" field="name" min-width="100" :formatter="colNoData" />
+                        <vxe-column title="套餐名称" fixed="left" align="center" field="name" min-width="100"
+                            :formatter="colNoData" />
                         <vxe-column title="适用对象" field="applyType" min-width="210">
                             <template #default="{ row }">
                                 <view class="d-flex flex-cln" v-if="row?.permitType == '1'">
@@ -55,8 +63,10 @@
                                 </view>
                                 <view class="d-flex flex-cln" v-if="row?.permitType == '2'">
                                     <view>
-                                        {{ row?.permitCpyNames?.join(',') }}-{{ NP.times(row?.priceDetail?.length && row?.priceDetail[0]?.memberDiscount || 0, 10)}}折
-                                        <span class="c-333 f-w-5">({{ row?.priceDetail?.length&&row?.priceDetail[0]?.price }})</span>
+                                        {{ row?.permitCpyNames?.join(',') }}-{{ NP.times(row?.priceDetail?.length &&
+                                            row?.priceDetail[0]?.memberDiscount || 0, 10) }}折
+                                        <span class="c-333 f-w-5">({{ row?.priceDetail?.length && row?.priceDetail[0]?.price
+                                        }})</span>
                                     </view>
                                 </view>
                             </template>
@@ -86,7 +96,8 @@
                         </vxe-column>
                         <vxe-column title="剩余时间" field="restDay" width="80">
                             <template #default="{ row }">
-                                <span v-if="new Date(row?.validUntil) > new Date()">{{ Math.floor((new Date(row?.validUntil).getTime() - new Date().getTime())/(3600*24*1000))+1 }}天</span>
+                                <span v-if="new Date(row?.validUntil) > new Date()">{{ Math.floor((new
+                                    Date(row?.validUntil).getTime() - new Date().getTime()) / (3600 * 24 * 1000)) + 1 }}天</span>
                                 <span v-else>已过期</span>
                             </template>
                         </vxe-column>
@@ -104,7 +115,8 @@
                                 <template v-if="+row?.status === 0">
                                     <el-button @click="putaway(row)" text type="primary">上架</el-button>
                                     <span></span>
-                                    <el-button @click="router.push({ path: 'menus-form', query: { id: row?.id } })" 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>
@@ -119,13 +131,15 @@
                                 <span></span>
                                 <el-button @click="copyItem(row)" text type="primary">复制</el-button>
                                 <span></span>
-                                <el-button @click="router.push({ path: 'menus-detail', query: { id: row?.id } })" text type="primary">详情</el-button>
+                                <el-button @click="router.push({ path: 'menus-detail', query: { id: row?.id } })" text
+                                    type="primary">详情</el-button>
                             </template>
                         </vxe-column>
                     </vxe-table>
                 </div>
             </div>
-            <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
+            <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
+                v-model:limit="queryParams.pageSize" @pagination="getList" />
         </div>
     </div>
     <el-dialog title="套餐分享" v-model="shareDialog" width="350px">
@@ -148,6 +162,7 @@ import NP from 'number-precision';
 import { rowItems } from '../models';
 import { debounce } from 'lodash';
 import html2canvas from 'html2canvas';
+const base_url = import.meta.env.PACKAGE_SHARE_URL;
 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'));
 const router = useRouter();
@@ -246,7 +261,7 @@ const shareText = ref('');
 const sharePkgName = ref('');
 const shareDialog = ref(false);
 const showShareImg = (row) => {
-    shareText.value = `http://dm.share.yujin.shuziyunyao.com/package?id=${row?.id}`;
+    shareText.value = `${base_url}?id=${row?.id}`;
     sharePkgName.value = row?.name;
     shareDialog.value = true;
 }
@@ -270,9 +285,9 @@ const downloadQrCode = () => {
     })
 }
 const rowClassName = ({ row }) => {
-   if (new Date(row?.validUntil) <= new Date()) {
-      return 'row-expired';
-   }
+    if (new Date(row?.validUntil) <= new Date()) {
+        return 'row-expired';
+    }
 }
 onMounted(() => {
     getTabsCount();