董国庆
2025-06-26 dc50368851188628e3a4d1c7002369c640e41045
菌种库中台
3个文件已修改
73 ■■■■ 已修改文件
culture/src/layouts/components/HeaderNav.vue 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/middleground/index.vue 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/middleground/service.js 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/layouts/components/HeaderNav.vue
@@ -2,7 +2,12 @@
  <div>
    <!-- 右侧用户登录图标 -->
    <div class="user-logininfo">
      <div class="user-logininfo-icon">
      <div class="logoIcon" v-if="logo">
        <div class="image">
          <img src="../../assets/logo.jpg" alt="" srcset="" />
        </div>
      </div>
      <div class="user-logininfo-icon" v-else>
        <!-- 折叠 -->
        <i @click="clickFold" class="el-icon-s-fold"></i>
        <!-- 标签列表 -->
@@ -37,6 +42,12 @@
      scrollTimer: null,
      scrollAmount: 0
    }
  },
  props: {
    logo: {
      type: String,
      default: "",
    },
  },
  computed: {
    ...mapState(['tagList', 'isFold'])
@@ -109,6 +120,17 @@
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  .image {
    // margin-top: 40px;
    width: 70px;
    height: 70px;
    img {
      width: 100%;
      height: 100%;
      border-radius: 50%;
    }
  }
  .user-logininfo-icon {
    margin-right: 30px;
culture/src/views/middleground/index.vue
@@ -37,22 +37,20 @@
          <div class="title">待办事项</div>
          <!-- 待办事项列表将放置在这里 -->
          <div class="todo-list">
            <div class="todo-item" v-for="i in 6" :key="i">
            <div class="todo-item" v-for="(item,index) in list" :key="index" @click.stop="toDetail(item)">
              <div class="todo-details">
                <div class="notice-card">
                  <div class="todo-icon">
                  </div>
                  <div class="red-notice"></div>
                  <div class="todo-icon"></div>
                  <div class="red-notice" v-if="item.status==1"></div>
                </div>
                <span class="todo-title">您有 [1] 条 【项目课题方案】 等待审批</span>
                <span class="todo-title" :title="item.noticeContent || ''">{{item.noticeContent||''}}</span>
              </div>
              <div class="todo-meta">
                <div class="me"></div>
                <span class="todo-submitter">提交人: 王晓晓</span>
                <span class="todo-submitter">提交人: {{item.commitName||''}}</span>
                <div class="time"></div>
                <span class="todo-submitter">2023.12.10 08:00</span>
                <span class="todo-submitter">{{item.createTime||''}}</span>
              </div>
            </div>
          </div>
@@ -66,6 +64,7 @@
<script>
import { loginReq } from './service'
import { Calendar } from "ant-design-vue";
import { getList,read } from "./service";
import HeaderNav from '../../layouts/components/HeaderNav.vue'
export default {
  name: 'Login',
@@ -85,6 +84,7 @@
      date: new Date(),
      viewWidth: '',
      scale: 1,
      list:[],
      // 审批人
      moduleList2: [
      {
@@ -149,6 +149,10 @@
  created() {
    // 初始化时检查窗口大小
    this.handleResize();
    getList().then(res=>{
      this.list = res
    })
  },
  mounted() {
    // 监听窗口大小变化
@@ -174,6 +178,19 @@
      })
     }
    },
    toDetail(item){
      read({id:item.id}).then(res=>{
        let urlList=['/strainReportLibrary/reportLibraryOne','/strainReportLibrary/reportLibraryOne','/strain-library/strain-library-manage'
          ,'/strain/pedigree-vhart','/strain/breeding-record','/strain/validation/primitive-cell',
          '/strainReportLibrary/reportLibraryOne','/strainReportLibrary/reportLibraryOne','/deliveryAssessment/projectTeamIntegral',
        ]
        let url=urlList[item.noticeType *1]
        this.$router.push({
          path: url,
        });
      })
    }
  },
  computed: {
    currentModuleList() {
@@ -894,6 +911,7 @@
      .todo-list {
        flex: 1;
        height: 100%;
        max-height: 264px;
        overflow: auto;
      }
@@ -902,7 +920,7 @@
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 20PX;
        margin-bottom: 20px;
        /* 分隔线 */
        &:first-child {
@@ -947,11 +965,17 @@
          font-size: 14px;
          color: #303133;
          line-height: 24px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          max-width: 400px;
          cursor: pointer;
        }
        .todo-meta {
          display: flex;
          align-items: center;
          min-width:260px;
        }
        .time {
culture/src/views/middleground/service.js
@@ -1,6 +1,9 @@
import axios from '@/utils/request';
// 登录
export const loginReq = (data) => {
    return axios.post('/login', { ...data })
export const getList = (data) => {
    return axios.get('/t-notice/list', { ...data })
}
export const read = (data) => {
    return axios.get(`/open/t-notice/read?id=${data.id}`, { ...data })
}