소스 검색

Merge branch 'master' of http://1.71.9.215:3000/feiyi/cbjsxt-front-master

shiyanyu 1 개월 전
부모
커밋
7270b00b63

+ 0 - 860
src/components/layouts/HtTopBar/index copy.vue

@@ -1,860 +0,0 @@
-<template>
-  <div class="top-bar-container" :style="topStyle">
-    <div class="top-bar-main">
-      <!--      :style="{ background: variables[`${style}-menu-background`] }"-->
-
-      <el-row class="top-bar-row">
-        <el-col
-          :xl="3"
-          :lg="6"
-          :md="6"
-          :sm="6"
-          :xs="6"
-          class="top-bar-row-logo"
-        >
-          <img src="@/assets/top_images/logo.png" class="logo-padding" />
-        </el-col>
-
-        <el-col
-          :xl="16"
-          :lg="14"
-          :md="14"
-          :sm="14"
-          :xs="14"
-          class="top-bar-center"
-        >
-          <!-- <div v-show="menuLeft < 0" class="menu-left" @click="leftClick">
-            <i class="el-icon-arrow-left"></i>
-          </div> -->
-          <div ref="menuScroll" class="menu-scroll menu-wrap">
-            <el-menu
-              id="menuContentRef"
-              router
-              :background-color="variables[`${style}-menu-background`]"
-              :text-color="variables[`${style}-menu-color`]"
-              :active-text-color="themeColor"
-              :style="{
-                '--menuBgColor': variables[`${style}-menu-background`],
-                left: menuLeft + 'px',
-              }"
-              :default-active="activeMenu"
-              mode="horizontal"
-              menu-trigger="hover"
-            >
-              <!-- 使用v-for遍历mockMenu数组 -->
-              <template v-for="menu in mockMenu">
-                <!-- 如果菜单没有子项,直接显示菜单项 -->
-                <el-menu-item
-                  v-if="!menu.children || menu.children.length === 0"
-                  :key="menu.index"
-                  :index="menu.index"
-                >
-                  <i :class="menu.icon"></i>
-                  <span>{{ menu.title }}</span>
-                </el-menu-item>
-
-                <!-- 如果菜单有子项,显示为子菜单 -->
-                <el-submenu v-else :key="menu.index" :index="menu.index">
-                  <template slot="title">
-                    <i :class="menu.icon"></i>
-                    <span>{{ menu.title }}</span>
-                  </template>
-
-                  <!-- 遍历子菜单 -->
-                  <template v-for="subMenu in menu.children">
-                    <!-- 子菜单可能还有孙菜单 -->
-                    <el-submenu
-                      v-if="subMenu.children && subMenu.children.length > 0"
-                      :key="subMenu.index"
-                      :index="subMenu.index"
-                    >
-                      <template slot="title">
-                        <i :class="subMenu.icon"></i>
-                        <span>{{ subMenu.title }}</span>
-                      </template>
-
-                      <!-- 遍历孙菜单 -->
-                      <el-menu-item
-                        v-for="child in subMenu.children"
-                        :key="child.index"
-                        :index="child.index"
-                      >
-                        {{ child.title }}
-                      </el-menu-item>
-                    </el-submenu>
-
-                    <!-- 如果子菜单没有孙菜单,直接显示 -->
-                    <el-menu-item
-                      v-else
-                      :key="subMenu.index"
-                      :index="subMenu.index"
-                    >
-                      <i :class="subMenu.icon"></i>
-                      <span>{{ subMenu.title }}</span>
-                    </el-menu-item>
-                  </template>
-                </el-submenu>
-              </template>
-            </el-menu>
-            <!-- <el-menu id="menuContentRef" :background-color="variables[`${style}-menu-background`]"
-              :text-color="variables[`${style}-menu-color`]" :active-text-color="themeColor" :style="{
-                '--menuBgColor': variables[`${style}-menu-background`],
-                left: menuLeft + 'px',
-              }" :default-active="activeMenu" mode="horizontal" menu-trigger="hover">
-              <template v-for="route in currentShowMenu">
-                <ht-side-bar-item v-if="!route.hidden" :key="route.id" :full-path="route.path" :item="route" />
-              </template>
-            </el-menu> -->
-          </div>
-
-          <!-- <div v-show="showRightIcon" class="menu-right" @click="rightClick">
-            <i class="el-icon-arrow-right"></i>
-          </div> -->
-        </el-col>
-
-        <el-col :xl="4" :lg="4" :md="4" :sm="4" :xs="4" class="top-bar-right">
-          <div
-            class="right-panel"
-            :style="{
-              '--topRightColor': '#ffffff',
-              // '--topRightColor': variables[`${style}-top-right-color`],
-            }"
-          >
-            <ht-message
-              :message-count="messageCount"
-              @msg-click="$router.push('/personal/message')"
-            ></ht-message>
-
-            <ht-full-screen-bar @refresh="refreshRoute" />
-
-            <!-- <ht-apps /> -->
-
-            <!-- <ht-error-log /> -->
-
-            <ht-theme-bar v-show="false" class="hidden-md-and-down" />
-
-            <el-divider direction="vertical"></el-divider>
-
-            <ht-avatar />
-          </div>
-        </el-col>
-      </el-row>
-    </div>
-  </div>
-</template>
-
-<script>
-  import variables from '@/styles/variables.scss'
-  import adjustPX from '@/mixins/adjustPX.js'
-  import { mapGetters, mapState } from 'vuex'
-
-  export default {
-    name: 'HtTopBar',
-    mixins: [adjustPX],
-    data() {
-      return {
-        menuTrigger: 'hover',
-        menuLeft: 0,
-        showRightIcon: true,
-        calcRatio: undefined,
-        // 菜单数据直接定义在data中
-        mockMenu: [
-          {
-            index: 'costAudit',
-            icon: 'el-icon-folder',
-            title: '成本监审',
-            children: [
-              {
-                index: 'costAudit/baseInfo',
-                icon: 'el-icon-document',
-                title: '基础信息管理',
-                children: [
-                  { index: '/costAudit/catalogManage', title: '监审目录管理' },
-                  {
-                    index: '/costAudit/auditEntityManage',
-                    title: '被监审单位管理',
-                  },
-                  {
-                    index: '/costAudit/costFormManage',
-                    title: '成本调查表管理',
-                  },
-                  {
-                    index: '/costAudit/financeSheetManage',
-                    title: '财务数据表管理',
-                  },
-                  {
-                    index: '/costAudit/costVerifyManage',
-                    title: '成本核定表管理',
-                  },
-                  {
-                    index: '/costAudit/auditReviewDocManage',
-                    title: '监审文书管理',
-                  },
-                  {
-                    index: '/costAudit/auditDocNoManage',
-                    title: '监审文书号管理',
-                  },
-                  {
-                    index: '/costAudit/auditProcessManage',
-                    title: '监审流程管理',
-                  },
-                  { index: '/costAudit/auditDocManage', title: '监审资料管理' },
-                  { index: '/costAudit/dictionaryManage', title: '字典项维护' },
-                ],
-              },
-              {
-                index: 'costAudit/projectInfo',
-                icon: 'el-icon-setting',
-                title: '项目信息管理',
-                children: [
-                  {
-                    index: '/costAudit/annualReviewPlan',
-                    title: '年度监审计划',
-                  },
-                  { index: '/costAudit/initiation', title: '成本监审立项管理' },
-                  { index: '/costAudit/memoManage', title: '备忘录管理' },
-                  {
-                    index: '/costAudit/taskProgressManage',
-                    title: '任务进度管理',
-                  },
-                  {
-                    index: '/costAudit/taskQueryStatistics',
-                    title: '任务查询统计',
-                  },
-                  {
-                    index: '/costAudit/superviseMattersManage',
-                    title: '督办事项管理',
-                  },
-                  {
-                    index: '/costAudit/superviseResultManage',
-                    title: '督办结果管理',
-                  },
-                ],
-              },
-            ],
-          },
-        ],
-      }
-    },
-    created() {
-      this.setRatio()
-      console.log('this.calcRatio', this.calcRatio)
-      window.addEventListener('resize', () => {
-        this.setRatio()
-      })
-    },
-    computed: {
-      topStyle() {
-        return {
-          //需要使用到的各种样式变量,可以给一个变量为空的默认值
-          '--calcRatio': this.calcRatio,
-        }
-      },
-      ...mapGetters({
-        style: 'settings/style',
-        routes: 'routes/routes',
-        themeColor: 'settings/themeColor',
-        visitedRoutes: 'tabsBar/visitedRoutes',
-        messageCount: 'navHeader/getUnreadMsgCount',
-      }),
-      ...mapState('routes', ['menus']),
-      activeMenu() {
-        const route = this.$route
-        const { meta, path } = route
-        if (meta.activeMenu) {
-          return meta.activeMenu
-        }
-        return path
-      },
-      variables() {
-        return variables
-      },
-      currentShowMenu() {
-        const menu = this.menus.find((item, index) => index === 6)
-        if (!menu) return this.routes
-        const menuIndex = this.routes.findIndex((it) => it.path === menu.path)
-        const currentMenuList = this.routes.filter(
-          (menu, index) => index <= menuIndex
-        )
-        const otherMenus = this.routes.filter(
-          (menu, index) => index > menuIndex
-        )
-        if (otherMenus && otherMenus.length > 0) {
-          currentMenuList.push({
-            alwaysShow: true,
-            children: otherMenus,
-            name: 'moreMenu',
-            meta: { icon: 'icon-gengduo2' },
-            path: '/more',
-          })
-        }
-        currentMenuList.forEach((element) => {
-          element.isOnlyOne = false
-          if (element.children && element.children.length > 0) {
-            const child = element.children.filter((menu, index) => !menu.hidden)
-            if (child && child.length === 1) {
-              element.isOnlyOne = true
-              // element.routeChildren = child[0]
-              // element.path = path.resolve(element.path, child[0].path)
-              // element.meta.target = child[0].meta.target
-            }
-          }
-        })
-        return currentMenuList
-      },
-    },
-    mounted() {
-      this.$store.dispatch('navHeader/setUnreadMsgCount')
-      // this.$root.$on('resize', () => {
-      //   this.$nextTick(() => {
-      //     this.initMenuScroll()
-      //   })
-      // })
-      // this.initMenuScroll()
-    },
-    methods: {
-      setRatio() {
-        this.calcRatio = this.calcRem()
-        this.$store.state.user.calcRatio = this.calcRatio
-      },
-      async refreshRoute() {
-        this.$baseEventBus.$emit('reload-router-view')
-      },
-      async initMenuScroll() {
-        if (!this.$refs.menuScroll) {
-          await this.awaitOneSecond()
-        }
-        const lookWidth = this.$refs.menuScroll.clientWidth
-        const totalWidth = document.getElementById('menuContentRef').scrollWidth
-        let rightSurplus = totalWidth - Math.abs(this.menuLeft) - lookWidth
-        this.showRightIcon = rightSurplus > 0
-      },
-      awaitOneSecond() {
-        return new Promise((resolve) => {
-          setTimeout(() => {
-            resolve()
-          }, 1000)
-        })
-      },
-      // 点击右箭头(左侧滚动)
-      rightClick() {
-        // 获取可视区域宽度
-        const lookWidth = this.$refs.menuScroll.clientWidth
-        const totalWidth = document.getElementById('menuContentRef').scrollWidth
-        let rightSurplus = totalWidth - Math.abs(this.menuLeft) - lookWidth
-        let percentOffest = lookWidth * 0.5
-        if (rightSurplus > 0) {
-          this.menuLeft -=
-            rightSurplus >= percentOffest ? percentOffest : rightSurplus
-          if (totalWidth - Math.abs(this.menuLeft) - lookWidth <= 0) {
-            this.showRightIcon = false
-          }
-        } else {
-          this.showRightIcon = false
-        }
-      },
-      // 点击左箭头(右侧滚动)
-      leftClick() {
-        // 获取可视区域宽度
-        const lookWidth = this.$refs.menuScroll.clientWidth
-        const totalWidth = document.getElementById('menuContentRef').scrollWidth
-        let percentOffest = lookWidth * 0.5
-        let rightSurplus = totalWidth - Math.abs(this.menuLeft) - lookWidth
-        if (Math.abs(this.menuLeft) > 0) {
-          this.menuLeft +=
-            Math.abs(this.menuLeft) >= percentOffest
-              ? percentOffest
-              : Math.abs(this.menuLeft)
-          this.showRightIcon = true
-        }
-        if (rightSurplus > 0) {
-          this.showRightIcon = true
-        }
-      },
-    },
-  }
-</script>
-
-<style lang="scss" scoped>
-  @mixin dot-border-color {
-    border-color: var(--themeColor);
-  }
-
-  @mixin more-submenu-style($color) {
-    .sub-menu-title,
-    .ht-fa-icon,
-    .el-submenu__icon-arrow {
-      color: var($color) !important;
-    }
-  }
-
-  @mixin menu-arrow($degree) {
-    .el-submenu__icon-arrow {
-      transform: rotateZ($degree);
-    }
-  }
-
-  .top-bar-container {
-    display: flex;
-    align-items: center;
-    justify-items: flex-end;
-    height: $base-top-bar-height;
-
-    .top-bar-main {
-      width: $base-full-width;
-      background: url('~@/assets/top_images/h-back.png');
-
-      .top-bar-row {
-        width: 92% !important;
-        margin: auto;
-        display: flex;
-        align-items: center;
-
-        .top-bar-row-logo {
-          // width: 180px;
-          // lj-修改
-          //width: 80px;
-          width: calc(var(--calcRatio) * 360px);
-        }
-
-        .top-bar-right {
-          width: 380px;
-        }
-
-        .top-bar-center {
-          flex: 1;
-          display: flex;
-          justify-content: flex-start;
-          position: relative;
-          padding: 0 calc(var(--calcRatio) * 30px);
-
-          .menu-scroll {
-            width: 100%;
-            overflow: hidden;
-          }
-
-          .menu-wrap {
-            ::v-deep {
-              .is-active {
-                .el-submenu__title {
-                  .more-menu {
-                    color: var(--themeColor);
-                  }
-                }
-              }
-            }
-          }
-
-          .menu-left {
-            width: 32px;
-            height: 32px;
-            position: absolute;
-            left: 14px;
-            top: 14px;
-            background: #f5f5f5;
-            color: #999;
-            display: flex;
-            align-items: center;
-            justify-content: center;
-            font-size: 20px;
-            cursor: pointer;
-
-            &:hover {
-              color: var(--themeColor);
-            }
-          }
-
-          .menu-right {
-            width: 32px;
-            height: 32px;
-            position: absolute;
-            right: 14px;
-            top: 14px;
-            background: #f5f5f5;
-            color: #999;
-            display: flex;
-            align-items: center;
-            justify-content: center;
-            font-size: 20px;
-            cursor: pointer;
-
-            &:hover {
-              color: var(--themeColor);
-            }
-          }
-        }
-      }
-
-      .logo-padding {
-        padding-left: $base-logo-padding-left;
-        background: transparent !important;
-        //height: var(--calcRatio);
-        width: calc(var(--calcRatio) * 50px);
-      }
-
-      .menu-more-wrap {
-        height: $base-top-bar-height;
-        width: 68px;
-        display: flex;
-        align-items: center;
-
-        .more-menu {
-          position: fixed;
-          top: 60px;
-          z-index: 99;
-        }
-      }
-
-      ::v-deep {
-        .el-menu {
-          &.el-menu--horizontal {
-            // width: 100%;
-            height: $base-top-bar-height;
-            // display: flex;
-            flex-shrink: 0;
-            // overflow-x: auto;
-            // overflow-y: hidden;
-            // overflow: hidden;
-            border-bottom: 0 solid transparent !important;
-            background-color: var(--menuBgColor) !important;
-            display: flex;
-
-            // &::before {
-            //   content: '';
-            //   flex: 1;
-            // }
-
-            &::-webkit-scrollbar {
-              width: 6px;
-              height: 6px;
-              background: transparent;
-            }
-
-            &::-webkit-scrollbar-thumb {
-              background-color: rgba(144, 147, 153, 0.3);
-              border-radius: 10px;
-            }
-
-            &::-webkit-scrollbar-thumb:hover {
-              background-color: rgba(144, 147, 153, 0.3);
-            }
-
-            .el-menu-item.is-active {
-              background-color: rgba(var(--themeColorRgb), 0.2) !important;
-            }
-
-            .el-submenu.is-active {
-              .el-submenu__title {
-                background-color: rgba(var(--themeColorRgb), 0.2) !important;
-              }
-            }
-
-            .is-active.more-menu__submenu {
-              .el-menu--horizontal {
-                .el-submenu.is-active {
-                  .el-submenu__title {
-                    @include more-submenu-style(--themeColor);
-                  }
-                }
-
-                .el-submenu .el-submenu__title {
-                  background-color: var(--menuBgColor) !important;
-
-                  &:hover {
-                    @include more-submenu-style(--themeColor);
-                    @include menu-arrow(90deg);
-                  }
-
-                  @include more-submenu-style(--menuColor);
-                  @include menu-arrow(0deg);
-                }
-              }
-            }
-
-            .el-menu-item,
-            .el-submenu__title {
-              // padding: 0 15px;
-              // background-color: var(--menuBgColor) !important;
-              &:hover {
-                .ht-fa-icon {
-                  color: var(--themeColor);
-                }
-              }
-            }
-
-            @media only screen and (max-width: 767px) {
-              .el-menu-item,
-              .el-submenu__title {
-                padding: 0 8px;
-              }
-
-              li:nth-child(4),
-              li:nth-child(5) {
-                display: none !important;
-              }
-            }
-
-            > .el-menu-item {
-              flex-shrink: 0;
-              height: $base-top-bar-height;
-              line-height: unset;
-              display: flex;
-              align-items: center;
-              // &:hover {
-              //   background-color: rgba(var(--themeColorRgb), 0.2) !important;
-              // }
-            }
-
-            > .el-submenu {
-              .el-submenu__title {
-                height: $base-top-bar-height;
-                line-height: unset;
-                display: flex;
-                align-items: center;
-
-                .ht-fa-icon {
-                  margin-right: 0;
-
-                  &::before {
-                    margin-right: 8px;
-                  }
-                }
-
-                .sub-menu-title {
-                  flex: 1;
-                }
-              }
-            }
-
-            .el-menu--popup {
-              .el-submenu {
-                margin: 0 10px;
-                height: 48px;
-                line-height: 48px;
-              }
-
-              .el-submenu__title {
-                height: 48px;
-                border-radius: 4px;
-              }
-            }
-
-            .el-submenu {
-              .el-menu-item {
-                margin: 0 $base-menu-bg-margin;
-              }
-
-              .el-icon-arrow-down {
-                display: none;
-              }
-
-              // &:hover {
-              //   .el-icon-arrow-down {
-              //     display: none;
-              //     color: var(--themeColor);
-              //   }
-              // }
-              .is-active {
-                background-color: rgba(var(--themeColorRgb), 0.2) !important;
-                border-radius: $base-radius;
-
-                .sub-menu-child__title {
-                  &::before {
-                    background: transparent;
-                    @include dot-border-color;
-                  }
-                }
-              }
-
-              .sub-menu-child__title {
-                &::before {
-                  border-color: $base-color-second-color;
-                }
-              }
-
-              .el-menu-item {
-                &:hover {
-                  .sub-menu-child__title {
-                    &::before {
-                      @include dot-border-color;
-                    }
-                  }
-                }
-              }
-            }
-
-            .el-submenu.is-active {
-              // .el-submenu__title {
-              //   background-color: rgba(var(--themeColorRgb), 0.2) !important;
-              // }
-              .ht-fa-icon {
-                color: var(--themeColor);
-              }
-            }
-
-            .el-submenu.is-opened > .el-submenu__title .el-submenu__icon-arrow {
-              transform: rotateZ(90deg);
-            }
-          }
-
-          svg {
-            width: 1rem;
-            margin-right: 3px;
-          }
-
-          &--horizontal {
-            .el-menu {
-              .el-menu-item,
-              .el-submenu__title {
-                height: $base-menu-item-height;
-                line-height: $base-menu-item-height;
-              }
-            }
-
-            .el-submenu,
-            .el-menu-item {
-              &.is-active {
-                // background-color: $base-color-blue !important;
-                border-bottom: 0 solid transparent !important;
-
-                .el-icon-arrow-down {
-                  color: var(--themeColor);
-                }
-
-                .el-submenu__title {
-                  border-bottom: 0 solid transparent !important;
-                }
-              }
-            }
-
-            > .el-menu-item {
-              .el-tag {
-                margin-top: calc(#{$base-top-bar-height} / 2 - 7.5px);
-                margin-left: 5px;
-              }
-
-              @media only screen and (max-width: 1199px) {
-                .el-tag {
-                  display: none;
-                }
-              }
-
-              &.is-active {
-                background-color: transparent !important;
-              }
-            }
-          }
-        }
-      }
-
-      ::v-deep .el-menu {
-        &.el-menu--horizontal {
-          background-color: transparent !important;
-
-          > .el-submenu {
-            .ht-fa-icon {
-              color: #ffffff;
-            }
-          }
-
-          .el-menu-item {
-            color: #ffffff !important;
-            background: transparent !important;
-
-            .ht-fa-icon {
-              color: #ffffff !important;
-            }
-
-            &.is-active {
-              background: rgba(255, 255, 255, 0.1) !important;
-            }
-          }
-
-          .el-submenu {
-            .el-submenu__title {
-              color: #ffffff !important;
-              background: transparent !important;
-              padding: 0 calc(var(--calcRatio) * 15px) !important;
-
-              &:hover {
-                background: rgba(255, 255, 255, 0.1) !important;
-
-                .ht-fa-icon {
-                  color: #ffffff !important;
-                }
-              }
-            }
-
-            &.is-active {
-              .el-submenu__title {
-                background: rgba(255, 255, 255, 0.1) !important;
-              }
-
-              .ht-fa-icon {
-                color: #ffffff !important;
-              }
-
-              .sub-menu-title {
-                color: #ffffff !important;
-              }
-            }
-          }
-
-          .el-submenu {
-          }
-        }
-      }
-    }
-
-    .right-panel {
-      display: flex;
-      align-items: center;
-      justify-content: flex-end;
-      height: $base-top-bar-height;
-
-      div:not(.el-divider--vertical),
-      span {
-        padding: 0 8px;
-      }
-
-      ::v-deep {
-        .el-divider--vertical {
-          margin: 0 20px;
-          background-color: var(--topRightColor);
-        }
-
-        svg {
-          width: 18px;
-          height: 18px;
-          font-size: $base-font-size-big;
-          color: rgba($base-color-white, 0.9);
-          cursor: pointer;
-          fill: var(--topRightColor);
-        }
-
-        button {
-          svg {
-            margin-right: 0;
-            color: rgba($base-color-white, 0.9);
-            cursor: pointer;
-            fill: rgba($base-color-white, 0.9);
-          }
-        }
-
-        .el-badge {
-          margin-right: 15px;
-        }
-
-        .message-title {
-          color: var(--topRightColor);
-        }
-      }
-    }
-
-    ::v-deep .right-panel {
-      .avatar-dropdown .user-name {
-        color: #ffffff;
-      }
-    }
-  }
-</style>

+ 1 - 0
src/components/task/taskInfo.vue

@@ -387,6 +387,7 @@
                     {{ scope.row.feedbackDocumentUrl ? '已回传' : '未回传' }}
                   </span>
                   <el-button
+                    v-if="scope.row.feedbackDocumentUrl"
                     type="text"
                     size="mini"
                     @click="handleViewFeedback(scope.row.feedbackDocumentUrl)"

+ 1 - 0
src/views/EntDeclaration/auditTaskManagement/components/AuditDocumentTab.vue

@@ -66,6 +66,7 @@
             上传附件
           </el-button>
           <el-button
+            v-if="scope.row.feedbackDocumentUrl"
             type="text"
             size="mini"
             @click="handleViewFeedback(scope.row.feedbackDocumentUrl)"

+ 4 - 0
src/views/costAudit/auditInfo/auditManage/auditDocumentsMain.vue

@@ -77,7 +77,11 @@
             >
               上传附件
             </el-button> -->
+            <span>
+              {{ scope.row.feedbackDocumentUrl ? '已回传' : '未回传' }}
+            </span>
             <el-button
+              v-if="scope.row.feedbackDocumentUrl"
               type="text"
               size="mini"
               @click="handleViewScan(scope.row.feedbackDocumentUrl)"

+ 4 - 0
src/views/costAudit/projectInfo/auditTaskManage/taskCustomizedRelease/auditNoticeTab.vue

@@ -77,7 +77,11 @@
             >
               上传附件
             </el-button> -->
+            <span>
+              {{ scope.row.feedbackDocumentUrl ? '已回传' : '未回传' }}
+            </span>
             <el-button
+              v-if="scope.row.feedbackDocumentUrl"
               type="text"
               size="mini"
               @click="handleViewScan(scope.row.feedbackDocumentUrl)"

+ 37 - 0
src/views/home/index.vue

@@ -532,6 +532,15 @@
       :current-status="cbjsInfoData && cbjsInfoData.status"
     />
     <taskDetail ref="taskDetail" />
+    <!-- 填报任务侧边弹窗 -->
+    <task-fill-in
+      ref="taskFillIn"
+      :visible.sync="taskFillInVisible"
+      :task-info="currentTaskInfo"
+      :view-mode="taskViewMode"
+      @close="handleTaskFillInClose"
+      @refresh="handleTaskFillInRefresh"
+    />
   </div>
 </template>
 
@@ -548,6 +557,7 @@
   import taskInfo from '@/components/task/taskInfo.vue'
   import cbjsInfo from '@/components/task/cbjsInfo.vue'
   import taskDetail from '@/components/task/taskDetail.vue'
+  import TaskFillIn from '@/views/EntDeclaration/auditTaskManagement/taskFillIn.vue'
   export default {
     name: 'Dashboard',
     components: {
@@ -556,6 +566,7 @@
       cbjsInfo,
       mainDetailsDialog,
       taskDetail,
+      TaskFillIn,
     },
     mixins: [regionMixin, memoManageMixin],
     data() {
@@ -591,6 +602,10 @@
         cbjsInfoData: null,
         mainDetailsVisible: false,
         curOrg: '',
+        // 填报任务弹窗相关
+        taskFillInVisible: false,
+        currentTaskInfo: {},
+        taskViewMode: false,
       }
     },
     watch: {
@@ -668,6 +683,28 @@
           this.loading = false
         }
       },
+      // 填报任务
+      handleEdit(row) {
+        console.log('填报任务', row)
+        this.currentTaskInfo = row || {}
+        this.taskViewMode = false
+        // 使用ref调用组件的open方法
+        this.$nextTick(() => {
+          if (this.$refs.taskFillIn) {
+            this.$refs.taskFillIn.open(row, false)
+          }
+        })
+      },
+      // 填报任务提交成功后刷新列表
+      handleTaskFillInRefresh() {
+        // 刷新列表数据
+        this.getEnterpriseTodoList()
+      },
+      // 填报任务弹窗关闭
+      handleTaskFillInClose() {
+        this.taskFillInVisible = false
+        this.currentTaskInfo = {}
+      },
       // 加载审核项目列表
       async loadAuditProjectList() {
         try {