Browse Source

【商机-项目信息收集】详情增加子表信息:品牌信息

002390 1 year ago
parent
commit
36f58ba533

+ 28 - 4
src/views/business/spd/bo/gather/details/columns.js

@@ -119,7 +119,6 @@ export default function useColumns() {
       attr: {
         is: "el-input",
         type: "textarea",
-        rows: 3,
         placeholder: "请输入开发思路(营销策略)",
       },
     },
@@ -128,7 +127,6 @@ export default function useColumns() {
       attr: {
         is: "el-input",
         type: "textarea",
-        rows: 3,
         placeholder: "请输入机会点/困难点所需资源",
       },
     },
@@ -137,7 +135,6 @@ export default function useColumns() {
       attr: {
         is: "el-input",
         type: "textarea",
-        rows: 3,
         placeholder: "请输入备注",
       },
     },
@@ -148,5 +145,32 @@ export default function useColumns() {
       span: item.span || 6,
     }
   }));
-  return { FormColumns }
+
+  const TabColumns = [
+    {
+      item: { key: "gatherCgItem", title: "品牌信息", },
+      attr: { value: [] },
+      TableColumns: [
+        {
+          item: { key: "brandName", title: "品牌名称", width: 200, },
+          attr: {},
+        },
+        {
+          item: { key: "brandPortion", title: "品牌份额(万)", },
+          attr: {
+            isSummary: true,
+          },
+        },
+        {
+          item: { key: "cooperationstart", title: "合作期跟(开始)", },
+          attr: {},
+        },
+        {
+          item: { key: "cooperationEnd", title: "合作期限(结束)", },
+          attr: {},
+        },
+      ],
+    },
+  ];
+  return { FormColumns, TabColumns }
 }

+ 68 - 4
src/views/business/spd/bo/gather/details/index.vue

@@ -18,14 +18,28 @@ export default {
   },
   components: {
     ElSuperForm: () => import("@/components/super-form/index.vue"),
+    ElSuperUxTable: () => import("@/components/super-ux-table/index.vue"),
   },
   data() {
-    const { FormColumns } = useColumns();
+    const {
+      FormColumns,
+      TabColumns,
+      TabColumns: [
+        {
+          item: { key: tabName },
+        },
+      ],
+    } = useColumns();
     const params = this.$init.params(FormColumns);
     const rules = this.$init.rules(FormColumns);
     return {
       rules,
-      params,
+      params: {
+        ...params,
+        gatherCgItem: [],
+      },
+      tabName,
+      TabColumns,
       FormColumns,
       width: "100%",
       visible: false,
@@ -46,6 +60,12 @@ export default {
       },
       sest() {},
     },
+    tableHeight: {
+      get() {
+        return window.innerHeight - 480;
+      },
+      set() {},
+    },
   },
   methods: {
     setVisible(prop) {
@@ -54,8 +74,19 @@ export default {
     // 关闭
     hide() {
       this.visible = false;
-      const { FormColumns } = useColumns();
-      this.params = this.$init.params(FormColumns);
+      const {
+        FormColumns,
+        TabColumns,
+        TabColumns: [
+          {
+            item: { key: tabName },
+          },
+        ],
+      } = useColumns();
+      this.params = {
+        ...this.$init.params(FormColumns),
+        gatherCgItem: [],
+      };
       this.$emit("refresh");
     },
     //
@@ -124,6 +155,39 @@ export default {
       :disabled="addType == 'see'"
     >
     </el-super-form>
+
+    <el-tabs v-model="tabName" style="margin: 0 20px">
+      <el-tab-pane
+        v-for="({ item, TableColumns: columns }, index) in TabColumns"
+        :key="index"
+        :label="item.title"
+        :name="item.key"
+      >
+        <el-super-ux-table
+          v-model="params[item.key]"
+          :dict="dict"
+          index
+          showSummary
+          :ref="tabName"
+          :columns="columns"
+          :size="$attrs.size"
+          :height="tableHeight"
+        >
+          <!-- <ux-table-column
+            v-if="addType !== 'see'"
+            fixed="right"
+            title="操作"
+            width="120"
+            align="center"
+          >
+            <template slot="header" slot-scope="scope">
+            </template>
+            <template slot-scope="scope">
+            </template>
+          </ux-table-column> -->
+        </el-super-ux-table>
+      </el-tab-pane>
+    </el-tabs>
   </el-drawer>
 </template>