Эх сурвалжийг харах

feat: 企业分组管理列表、编辑需求开发

Signed-off-by: tangshizhe <48740614+tangshizhe@users.noreply.github.com>
tangshizhe 6 сар өмнө
parent
commit
cab36dcee3

+ 11 - 0
apps/mobile/src/api/modules/entgroup.js

@@ -0,0 +1,11 @@
+import qs from 'qs'
+import request from '@/api'
+// 获取数据超市列表信息
+export function getGroupList(data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/bigmember/follow/ent/labelGroup',
+    method: 'post',
+    data
+  })
+}

+ 1 - 0
apps/mobile/src/api/modules/index.js

@@ -27,3 +27,4 @@ export * from './invoice'
 export * from './business'
 export * from './docs'
 export * from './reportanalysis'
+export * from './entgroup'

+ 21 - 0
apps/mobile/src/router/modules/entgroup.js

@@ -0,0 +1,21 @@
+// 数据超市路由
+export default [
+  {
+    path: '/index',
+    name: 'EntGroupIndex',
+    component: () => import('@/views/entgroup/index.vue'),
+    meta: {
+      header: true,
+      title: '企业分组管理'
+    }
+  },
+  {
+    path: '/detail',
+    name: 'EntGroupDetail',
+    component: () => import('@/views/entgroup/detail.vue'),
+    meta: {
+      header: true,
+      title: '编辑分组'
+    }
+  }
+]

+ 86 - 0
apps/mobile/src/views/entgroup/detail.vue

@@ -0,0 +1,86 @@
+<template>
+  <div class="ent-group-detail">
+    <div class="j-main">
+      <van-field
+        v-model="groupNameValue"
+        label="分组名称"
+        placeholder="请输入分组名称"
+        maxlength="15"
+        show-word-limit
+        error-message="分组名称已存在"
+        @input="groupNameValue = $event.trim()"
+      />
+    </div>
+    <div class="j-footer">
+      <div class="j-button-group">
+        <div class="j-button-cancel">删除</div>
+        <div class="j-button-confirm">保存</div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import { Field } from 'vant'
+import { getGroupList } from '@/api/modules/'
+
+export default {
+  name: 'EntGroupDetail',
+  components: {
+    [Field.name]: Field
+  },
+  data() {
+    return {
+      groupNameValue: ''
+    }
+  },
+  created() {
+    this.getMyFollowList()
+  },
+  methods: {
+    async getMyFollowList() {
+      const { error_code: code, data } = await getGroupList({
+        type: 'get'
+      })
+      if (code === 0) {
+        this.groupList = data
+      }
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.ent-group-detail {
+  .van-cell {
+    flex-direction: column;
+    ::v-deep {
+      .van-cell__title {
+        font-size: 12px;
+        color: #171826;
+        line-height: 16px;
+      }
+      .van-field__body {
+        margin-top: 4px;
+        .van-field__control {
+          height: 24px;
+          line-height: 24px;
+          &::placeholder {
+            color: #9b9ca3;
+            font-size: 14px;
+            line-height: 16px;
+          }
+        }
+      }
+      .van-field__word-limit {
+        position: absolute;
+        right: 0;
+        top: 8px;
+      }
+      .van-field__word-num {
+        color: #2abed1;
+      }
+    }
+  }
+}
+</style>

+ 80 - 0
apps/mobile/src/views/entgroup/index.vue

@@ -0,0 +1,80 @@
+<template>
+  <div class="ent-group-index">
+    <div class="j-main">
+      <van-cell-group>
+        <van-cell
+          v-for="item in groupList"
+          :key="item.id"
+          :title="item.s_name"
+          :is-link="item.isPut !== 0"
+          @click="setGroupEvent(item)"
+        />
+      </van-cell-group>
+    </div>
+    <div class="j-footer">
+      <div class="j-button-group">
+        <div class="j-button-confirm">
+          <van-icon name="plus" />
+          <span style="margin-left: 8px">新增分组</span>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import { Cell, CellGroup, Icon } from 'vant'
+import { getGroupList } from '@/api/modules/'
+
+export default {
+  name: 'EntGroupIndex',
+  components: {
+    [Cell.name]: Cell,
+    [CellGroup.name]: CellGroup,
+    [Icon.name]: Icon
+  },
+  data() {
+    return {
+      groupList: []
+    }
+  },
+  created() {
+    this.getMyFollowList()
+  },
+  methods: {
+    async getMyFollowList() {
+      const { error_code: code, data } = await getGroupList({
+        type: 'get'
+      })
+      if (code === 0) {
+        this.groupList = data
+      }
+    },
+    setGroupEvent(data) {
+      this.$router.push({
+        path: '/entgroup/detail',
+        query: {
+          id: data.id
+        }
+      })
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.ent-group-index {
+  .van-cell {
+    padding: 15px 16px;
+    &::after {
+      left: 0;
+      right: 0;
+    }
+    .van-cell__title {
+      font-size: 16px;
+      color: #171826;
+      line-height: 24px;
+    }
+  }
+}
+</style>

+ 2 - 2
apps/mobile/vite.config.js

@@ -131,12 +131,12 @@ export default defineConfig(({ mode, command }) => {
           changeOrigin: true
         },
         '/jyapi': {
-          target: 'https://app3-jytest.jydev.jianyu360.com',
+          target: 'https://app-jytest.jydev.jianyu360.com',
           changeOrigin: true,
           rewrite: path => path.replace(/^\/jyapi/, '')
         },
         '/api': {
-          target: 'https://app3-jytest.jydev.jianyu360.com',
+          target: 'https://app-jytest.jydev.jianyu360.com',
           changeOrigin: true,
           rewrite: path => path.replace(/^\/api/, '')
         },