数据资产登记更新
Showing
1 changed file
with
125 additions
and
2 deletions
| ... | @@ -9,6 +9,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'; | ... | @@ -9,6 +9,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'; |
| 9 | import { useRouter, useRoute } from "vue-router"; | 9 | import { useRouter, useRoute } from "vue-router"; |
| 10 | import { MoreFilled } from "@element-plus/icons-vue"; | 10 | import { MoreFilled } from "@element-plus/icons-vue"; |
| 11 | import { | 11 | import { |
| 12 | changeNum, | ||
| 12 | tagMethod, | 13 | tagMethod, |
| 13 | tagType, | 14 | tagType, |
| 14 | } from "@/utils/common"; | 15 | } from "@/utils/common"; |
| ... | @@ -34,6 +35,13 @@ const route = useRoute(); | ... | @@ -34,6 +35,13 @@ const route = useRoute(); |
| 34 | const { proxy } = getCurrentInstance() as any; | 35 | const { proxy } = getCurrentInstance() as any; |
| 35 | const path = route.path; | 36 | const path = route.path; |
| 36 | 37 | ||
| 38 | const loading = ref(false); | ||
| 39 | const defaultItemLogo = new URL('@/assets/images/home-finance-product.png', import.meta.url).href | ||
| 40 | const demandListData: any = ref([ | ||
| 41 | { companyName: '北数所', listedNum: 16, processNum: 1235 }, | ||
| 42 | { companyName: '深数所', listedNum: 16, processNum: 1235 }, | ||
| 43 | { companyName: '苏数所', listedNum: 16, processNum: 1235 }, | ||
| 44 | ]); | ||
| 37 | const searchItemList = ref([ | 45 | const searchItemList = ref([ |
| 38 | { | 46 | { |
| 39 | type: "input", | 47 | type: "input", |
| ... | @@ -167,6 +175,9 @@ const getTableBtns = (row, includeDetail = true) => { | ... | @@ -167,6 +175,9 @@ const getTableBtns = (row, includeDetail = true) => { |
| 167 | 175 | ||
| 168 | const currTableData: any = ref({}); | 176 | const currTableData: any = ref({}); |
| 169 | 177 | ||
| 178 | const btnClick = (btn) => { | ||
| 179 | } | ||
| 180 | |||
| 170 | const tableBtnClick = (scope, btn) => { | 181 | const tableBtnClick = (scope, btn) => { |
| 171 | const type = btn.value; | 182 | const type = btn.value; |
| 172 | const row = scope.row; | 183 | const row = scope.row; |
| ... | @@ -486,7 +497,33 @@ const createBtnVisible = computed(() => { | ... | @@ -486,7 +497,33 @@ const createBtnVisible = computed(() => { |
| 486 | </script> | 497 | </script> |
| 487 | 498 | ||
| 488 | <template> | 499 | <template> |
| 489 | <div class="container_wrap"> | 500 | <div class="container_wrap" v-loading="loading"> |
| 501 | <div class="list-content"> | ||
| 502 | <div class="card-content" v-for="item in demandListData" :key="item.guid"> | ||
| 503 | <div class="header"> | ||
| 504 | <img class="left-img" :src="(item.picUrl && typeof item.picUrl == 'string') ? item.picUrl : defaultItemLogo" | ||
| 505 | alt="" /> | ||
| 506 | <div class="right-main"> | ||
| 507 | <div class="title">{{ item.companyName ?? '--' }}</div> | ||
| 508 | <div class="count-group"> | ||
| 509 | <div class="count-item"> | ||
| 510 | <div class="item-label">已上架产品数</div> | ||
| 511 | <div class="item-num">{{ changeNum(item.listedNum) }}</div> | ||
| 512 | </div> | ||
| 513 | <div class="count-item"> | ||
| 514 | <div class="item-label">审批中产品数</div> | ||
| 515 | <div class="item-num">{{ changeNum(item.processNum) }}</div> | ||
| 516 | </div> | ||
| 517 | </div> | ||
| 518 | </div> | ||
| 519 | </div> | ||
| 520 | <div class="operator-btn"> | ||
| 521 | <div class="left-btn borderRight" @click="btnClick(item)">更新模板</div> | ||
| 522 | <div class="left-btn" @click="btnClick(item)">资产登记</div> | ||
| 523 | </div> | ||
| 524 | </div> | ||
| 525 | </div> | ||
| 526 | <div class="content_main_wrap"> | ||
| 490 | <div class="table_tool_wrap"> | 527 | <div class="table_tool_wrap"> |
| 491 | <TableTools :searchItems="searchItemList" :searchId="'register-data-search'" @search="toSearch" /> | 528 | <TableTools :searchItems="searchItemList" :searchId="'register-data-search'" @search="toSearch" /> |
| 492 | <div class="tools_btns"> | 529 | <div class="tools_btns"> |
| ... | @@ -554,6 +591,7 @@ const createBtnVisible = computed(() => { | ... | @@ -554,6 +591,7 @@ const createBtnVisible = computed(() => { |
| 554 | <Table v-else :tableInfo="tableInfo" @tableBtnClick="tableBtnClick" /> | 591 | <Table v-else :tableInfo="tableInfo" @tableBtnClick="tableBtnClick" /> |
| 555 | <PageNav :class="[pageInfo.type]" :pageInfo="pageInfo" @pageChange="pageChange" /> | 592 | <PageNav :class="[pageInfo.type]" :pageInfo="pageInfo" @pageChange="pageChange" /> |
| 556 | </div> | 593 | </div> |
| 594 | </div> | ||
| 557 | <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" /> | 595 | <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" /> |
| 558 | <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> | 596 | <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> |
| 559 | </div> | 597 | </div> |
| ... | @@ -561,7 +599,13 @@ const createBtnVisible = computed(() => { | ... | @@ -561,7 +599,13 @@ const createBtnVisible = computed(() => { |
| 561 | 599 | ||
| 562 | <style scoped lang="scss"> | 600 | <style scoped lang="scss"> |
| 563 | .container_wrap { | 601 | .container_wrap { |
| 564 | padding: 0 16px; | 602 | padding: 16px 16px 0; |
| 603 | display: flex; | ||
| 604 | flex-direction: column; | ||
| 605 | } | ||
| 606 | |||
| 607 | .content_main_wrap { | ||
| 608 | flex: 1; | ||
| 565 | } | 609 | } |
| 566 | 610 | ||
| 567 | .table_panel { | 611 | .table_panel { |
| ... | @@ -696,4 +740,83 @@ const createBtnVisible = computed(() => { | ... | @@ -696,4 +740,83 @@ const createBtnVisible = computed(() => { |
| 696 | } | 740 | } |
| 697 | } | 741 | } |
| 698 | } | 742 | } |
| 743 | |||
| 744 | .list-content { | ||
| 745 | display: flex; | ||
| 746 | justify-content: space-between; | ||
| 747 | flex-wrap: wrap; | ||
| 748 | margin-bottom: 8px; | ||
| 749 | |||
| 750 | .card-content { | ||
| 751 | width: calc(33.33% - 10px); | ||
| 752 | padding: 16px; | ||
| 753 | box-shadow: 0 0 0 1px #d9d9d9; | ||
| 754 | |||
| 755 | .header { | ||
| 756 | display: flex; | ||
| 757 | margin-bottom: 16px; | ||
| 758 | |||
| 759 | img { | ||
| 760 | width: 80px; | ||
| 761 | margin-right: 16px; | ||
| 762 | } | ||
| 763 | |||
| 764 | .title { | ||
| 765 | font-size: 16px; | ||
| 766 | color: #212121; | ||
| 767 | font-weight: 600; | ||
| 768 | margin-bottom: 8px; | ||
| 769 | } | ||
| 770 | |||
| 771 | .right-main { | ||
| 772 | width: calc(100% - 96px); | ||
| 773 | display: flex; | ||
| 774 | flex-direction: column; | ||
| 775 | justify-content: space-between; | ||
| 776 | |||
| 777 | .count-group { | ||
| 778 | display: flex; | ||
| 779 | justify-content: space-between; | ||
| 780 | |||
| 781 | .item-num { | ||
| 782 | font-size: 20px; | ||
| 783 | font-weight: 600; | ||
| 784 | color: #212121; | ||
| 785 | margin-top: 8px; | ||
| 786 | } | ||
| 787 | } | ||
| 788 | } | ||
| 789 | } | ||
| 790 | |||
| 791 | .operator-btn { | ||
| 792 | display: flex; | ||
| 793 | justify-content: space-between; | ||
| 794 | align-items: center; | ||
| 795 | box-shadow: 0 0 0 1px #d9d9d9; | ||
| 796 | position: relative; | ||
| 797 | |||
| 798 | &::after { | ||
| 799 | content: ''; | ||
| 800 | width: 0; | ||
| 801 | height: 100%; | ||
| 802 | border-left: 1px solid #d9d9d9; | ||
| 803 | position: absolute; | ||
| 804 | left: 50%; | ||
| 805 | transform: translateX(-50%); | ||
| 806 | } | ||
| 807 | |||
| 808 | >.left-btn { | ||
| 809 | width: 50%; | ||
| 810 | height: 40px; | ||
| 811 | line-height: 40px; | ||
| 812 | text-align: center; | ||
| 813 | cursor: pointer; | ||
| 814 | |||
| 815 | &:hover { | ||
| 816 | color: #4fa1a4; | ||
| 817 | } | ||
| 818 | } | ||
| 819 | } | ||
| 820 | } | ||
| 821 | } | ||
| 699 | </style> | 822 | </style> | ... | ... |
-
Please register or sign in to post a comment