ソースを参照

应用管理前端修改

marxjaw 4 ヶ月 前
コミット
cce2be1282
1 ファイル変更171 行追加75 行削除
  1. 171 75
      src/views/main/formworkErection/appAdmin.vue

+ 171 - 75
src/views/main/formworkErection/appAdmin.vue

@@ -49,6 +49,9 @@
         <el-table-column label="操作" width="150" fixed="right">
           <template #default="scope">
             <div class="button">
+              <el-button class="button-item" type="primary" style="margin-bottom: 5px" @click="edit(scope.row)">
+                关联渠道
+              </el-button>
               <el-button class="button-item" type="primary" style="margin-bottom: 5px" @click="edit(scope.row)">
                 编辑
               </el-button>
@@ -66,19 +69,149 @@
     <!-- 操作弹窗 -->
     <Layer :layer="layer" @confirm="submit(ruleForm)" @close="layer.show = false">
       <el-form :model="formEdit" :rules="rules" ref="ruleForm" label-width="120px" style="margin-right: 30px">
-        <el-form-item label="请求秘钥:" required prop="apiKey">
-          <el-input v-model="formEdit.apiKey" type="number" placeholder="请输入" clearable />
-        </el-form-item>
-        <el-form-item label="请求密令:" required prop="apiSecret">
-          <el-input v-model="formEdit.apiSecret" placeholder="请输入" clearable />
-        </el-form-item>
-
-        <el-form-item label="渠道ID:" required prop="channelId">
-          <el-input v-model="formEdit.channelId" placeholder="请输入" clearable />
-        </el-form-item>
-        <el-form-item label="渠道名称:" required prop="channelName">
-          <el-input v-model="formEdit.channelName" placeholder="请输入" clearable />
-        </el-form-item>
+        <el-row :gutter="5">
+          <el-col :span="10" v-if="formEdit.appId">
+            <el-form-item label="应用ID" required prop="apiKey">
+              <el-input v-model="formEdit.appId" disabled type="number" placeholder="请输入" clearable />
+            </el-form-item>
+          </el-col>
+          <el-col :span="2" v-if="formEdit.appId"></el-col>
+          <el-col :span="10">
+            <el-form-item label="应用名称:" required prop="appName">
+              <el-input v-model="formEdit.appName" placeholder="请输入" clearable />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="应用类型" required prop="appType">
+              <el-select v-model="formEdit.appType">
+                <el-option  value="1" label="Android" />
+                <el-option value="2" label="IOS" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="是否上架" required prop="store_on_sale">
+              <el-select v-model="formEdit.store_on_sale">
+                <el-option  value="1" label="是" />
+                <el-option value="2" label="否" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="上架商店" required prop="store_type">
+              <el-select v-model="formEdit.store_type" placeholder="请选择上架应用商店">
+                <el-option  value="1" label="App Store" />
+                <el-option value="2" label="Google Play" />
+                <el-option value="3" label="华为商店" />
+                <el-option value="4" label="小米应用商店" />
+                <el-option value="5" label="OPPO商店" />
+                <el-option value="6" label="vivo商店" />
+                <el-option value="7" label="应用宝" />
+                <el-option value="8" label="TapTap" />
+                <el-option value="9" label="Amazon应用商店" />
+                <el-option value="10" label="三星应用商店" />
+                <el-option value="11" label="小米海外应用商店" />
+                <el-option value="12" label="华为海外应用市场" />
+                <el-option value="13" label="Roku" />
+                <el-option value="14" label="Samsung Smart TV" />
+                <el-option value="15" label="Microsoft" />
+                <el-option value="16" label="LG Smart TV" />
+                <el-option value="17" label="Vizio" />
+                <el-option value="99" label="其他" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="商店链接" required prop="store_url">
+                <el-input v-model="formEdit.store_url" placeholder="请输入上架商店链接" clearable />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="应用域名" prop="required">
+              <el-input v-model="formEdit.domain" placeholder="请输入应用域名" clearable />
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="应用包名" required prop="package_name">
+              <el-input v-model="formEdit.package_name" placeholder="请输入应用包名" clearable />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="一级分类" prop="sub_category">
+              <el-select v-model="formEdit.category" placeholder="请选择上架应用商店">
+                <el-option  value="1" label="App" />
+                <el-option value="2" label="Game" />
+                <el-option value="3" label="Family" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="二级分类" required prop="sub_category">
+              <el-select v-model="formEdit.sub_category" placeholder="请选择上架应用商店">
+                <el-option  value="Daydream" label="Daydream" />
+                <el-option value="Wear" label="Android Wear" />
+                <el-option value="Design" label="Art & Design" />
+                <el-option value="Vehicles" label="Auto & Vehicles" />
+                <el-option value="Beauty" label="Beauty" />
+                <el-option value="Books" label="Books & Reference" />
+                <el-option value="Business" label="Business" />
+                <el-option value="Comics" label="Comics" />
+                <el-option value="Communication" label="Communication" />
+                <el-option value="Dating" label="Dating" />
+                <el-option value="Education" label="Education" />
+                <el-option value="Entertainment" label="Entertainment" />
+                <el-option value="Events" label="Events" />
+                <el-option value="Finance" label="Finance" />
+                <el-option value="Drink" label="Food & Drink" />
+                <el-option value="Fitness" label="Health & Fitness" />
+                <el-option value="House" label="House & Home" />
+                <el-option value="Libraries" label="Libraries & Demo" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="屏幕方向" prop="screen_orientation">
+              <el-select v-model="formEdit.screen_orientation" placeholder="请选择屏幕方向">
+                <el-option  value="1" label="竖屏" />
+                <el-option value="2" label="横屏" />
+                <el-option value="3" label="所有" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="版本号" required prop="versionCode">
+              <el-input v-model="formEdit.versionCode" placeholder="请输入版本号" clearable />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="5">
+          <el-col :span="10">
+            <el-form-item label="遵守美国COPPA" prop="screen_orientation">
+              <el-switch v-model="formEdit.coppa" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="2"></el-col>
+          <el-col :span="10">
+            <el-form-item label="遵守美国CCPA" required prop="versionCode">
+              <el-switch v-model="formEdit.ccpa" />
+            </el-form-item>
+          </el-col>
+        </el-row>
         <el-form-item label="渠道账号:" required prop="channelAccount">
           <el-input v-model="formEdit.channelAccount" placeholder="请输入" clearable />
         </el-form-item>
@@ -101,7 +234,6 @@
 <script setup>
   import { onBeforeMount, ref, reactive } from "vue";
   import { ElMessage } from "element-plus";
-  import { useStore } from "vuex";
   import { useGetDictList } from "@/hooks/useGetDictList.js";
   import { channelAddOne, channelDeleteOne, channelUpdateOne, appList,} from "@/api/formworkErection.js";
   import From from "@/components/from/index.vue";
@@ -110,9 +242,7 @@
   import { CopyDocument, Hide, View} from "@element-plus/icons-vue";
   import vCopy from '@/directive/copy'
 
-  const store = useStore();
-  const { dictData, loadDictData, getOptions, getDictionaryName } = useGetDictList();
-  const form = ref(null);
+  const { loadDictData, getDictionaryName } = useGetDictList();
   const tableData = ref([
   ]);
 
@@ -125,11 +255,9 @@
   });
 
   const formSearch = ref({
-    channelId: null, // 渠道ID
-    channelName: null, // 渠道名称
-    channelAccount: "", // 渠道账号
-    channelStatus: null, // 渠道状态
-    loginType: null, // 登录类型
+    appName: null,
+    channelName: null,
+    appType: null,
 
     limit: 20, // 当前页数量(查询量)
     page: 1, // 当前页码
@@ -148,42 +276,18 @@
     loadDictData().then(() => {
       dynamicFormItems.value = [
         {
-          label: "渠道ID",
-          prop: "channelId",
+          label: "应用名称",
+          prop: "appName",
           type: "input",
         },
         {
-          label: "渠道名称",
+          label: "广告渠道",
           prop: "channelName",
           type: "input",
         },
         {
-          label: "渠道账号",
-          prop: "channelAccount",
-          type: "input",
-        },
-        {
-          label: "渠道状态",
-          prop: "channelStatus",
-          type: "select",
-          options: [
-            {
-              label: "全部",
-              value: null,
-            },
-            {
-              label: "是",
-              value: 0,
-            },
-            {
-              label: "否",
-              value: 1,
-            },
-          ],
-        },
-        {
-          label: "登录类型",
-          prop: "loginType",
+          label: "应用类型",
+          prop: "appType",
           type: "select",
           options: [
             {
@@ -191,16 +295,15 @@
               value: null,
             },
             {
-              label: "账号密码",
+              label: "Android",
               value: 1,
             },
             {
-              label: "微信",
+              label: "IOS",
               value: 2,
             },
           ],
         },
-        // { label: '登录日期', prop: 'loginTime', type: 'daterange' },
       ];
     });
   };
@@ -227,11 +330,9 @@
     formSearch.value.pageSizes = 20;
     formSearch.value.limit = 20;
 
-    formSearch.value.channelId = formData.channelId;
     formSearch.value.channelName = formData.channelName;
-    formSearch.value.channelAccount = formData.channelAccount;
-    formSearch.value.channelStatus = formData.channelStatus;
-    formSearch.value.loginType = formData.loginType;
+    formSearch.value.appName = formData.appName;
+    formSearch.value.appType = formData.appType;
     formSearch
 
     getList();
@@ -240,11 +341,9 @@
   // 表单重置
   const handleFormReset = () => {
     formSearch.value = {
-      channelId: null, // 渠道ID
-      channelName: null, // 渠道名称
-      channelAccount: "", // 渠道账号
-      channelStatus: null, // 渠道状态
-      loginType: null, // 登录类型
+      appName: null,
+      channelName: null,
+      appType: null,
 
       limit: 20, // 当前页数量(查询量)
       page: 1, // 当前页码
@@ -268,6 +367,13 @@
   });
 
   const formEdit = ref({
+    store_on_sale: "",
+    store_type: null,
+    store_url: "",
+    category: "",
+    sub_category: "",
+    screen_orientation: "",
+    versionCode: "",
     apiKey: "", //请求秘钥
     apiSecret: "", //请求密令
     channelAccount: "", //渠道账号
@@ -282,11 +388,11 @@
   const edit = (row) => {
     ruleForm.value?.resetFields();
     if (row) {
-      layer.value.title = "编辑代理";
+      layer.value.title = "编辑APP";
       layer.value.edit = true;
       formEdit.value = row;
     } else {
-      layer.value.title = "新增代理";
+      layer.value.title = "新增APP";
       layer.value.edit = false;
       formEdit.value = {};
     }
@@ -296,16 +402,6 @@
   const ruleForm = ref(null);
 
   const rules = reactive({
-    /*  formEditbannedLimit: [
-               { required: true, message: "请输入封禁期限", trigger: "blur" },
-           ],
-           bannedReason: [
-               {
-                   required: true,
-                   message: "请输入封禁原因",
-                   trigger: "blur",
-               },
-           ], */
   });
 
   const submit = async (formEl) => {