1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417 |
- <template>
- <div id="containercon">
- <el-aside :width="isCollapse?'70px':'200px'" v-if="isHaveAside">
- <div id="main_left">
- <div class="logo_cont" >
- <!-- 正常logo尺寸 -->
- <img class="logo" v-if="!isCollapse" src="~@/assets/img/home/logo.png"/>
- <!-- 折叠侧边栏logo尺寸 -->
- <img class="logo_coll" v-else src="~@/assets/img/home/logo_mini.png"/>
- </div>
- <div style="overflow-y: auto;height:90%;overflow-x:hidden;" class="asider-cont">
- <aside class="menu-expanded">
- <!--导航菜单-->
- <el-menu
- background-color="#323A58"
- text-color="#fff"
- :collapse-transition="false"
- active-text-color="#FDB863"
- :default-active="$route.path.replace('/','')"
- :collapse="isCollapse"
- theme="light"
- unique-opened
- router
- class="el-menu-vertical-demo"
- @select="handleselect"
- ref="expandmenu"
- >
- <!-- <el-menu-item
- v-if="Role!=='rai_researcher' &&
- Role!=='ficc_researcher' &&
- Role!=='researcher' &&
- Role!=='compliance'&&
- Role!=='special_researcher'"
- :class="'/dashboard'==activePath?'active': ''"
- path="dashboard"
- key="dashboard"
- index="dashboard"
- :style="!isCollapse?'padding-left:0':''">
- <a href="/dashboard" :style="`display: block;color:${'dashboard'===activePath ? '#FDB863 ' : '#fff'}`" @click="(e) => e.preventDefault() ">
- <img src="~@/assets/img/home/work_ico.png" style="width:20px;height:20px;margin-right:20px;"/>
- <span
- style="display:inline-block; width:96px; text-align:left; box-sizing:border-box;font-size:15px;"
- >工作台</span>
- </a>
- </el-menu-item> -->
- <template v-for="(item,index) in navlists" v-show="!item.hidden">
- <el-menu-item :path="item.level_path" :index="item.level_path" :key="item.level_path" :style="!isCollapse?'text-align:left':''" v-if="item.IsLevel === 1">
- <a :href="`/${item.level_path}`" class="el-level-path" :style="`display: block;color:${item.level_path===activePath ? '#FDB863 ' : '#fff'}`" @click="(e) => e.preventDefault() ">
- <img :src="item.icon_path" alt="" style="width:24px;height:24px;" />
- <span class="titleLetter" v-show="isCollapse">{{isCollapse?MenuLetterMap[item.name]||'':''}}</span>
- <span style="display:inline-block; width:96px; text-align:left;font-size:15px;margin-left:14px;">{{item.name}}</span>
- </a>
- </el-menu-item>
-
- <el-submenu v-else :index="index+''" :key="index">
- <template slot="title">
- <img :src="item.icon_path" alt="" style="width:24px;height:24px;" />
- <span class="titleLetter" v-show="isCollapse">{{isCollapse?MenuLetterMap[item.name]||'':''}}</span>
- <span style="display:inline-block; width:96px; text-align:left;font-size:15px; margin-left:14px;"
- >{{item.name}}</span>
- </template>
- <el-menu-item
- v-for="child in item.children"
- :index="child.path"
- :path="child.path"
- :key="child.path"
- v-show="!child.hidden"
- >
- <a :href="`/${child.path}`" :style="`display: block;color:${child.path===activePath ? '#FDB863 ' : '#fff'}`" @click="(e) => e.preventDefault() ">
- {{child.name}}
- </a>
- </el-menu-item>
- </el-submenu>
- </template>
- </el-menu>
- </aside>
- </div>
- </div>
- </el-aside>
- <el-container>
- <div id="main_right">
- <div class="main_right_top">
- <div class="main_left_container">
- <div class="main_left_section" v-if="isHaveAside">
- <!-- 折叠按钮 -->
- <div class="coll_btn" @click="collapseHandle" >
- <!-- <img src="~@/assets/img/home/slide_up.png" alt="" class="coll_ico" v-if="isCollapse"> -->
- <i class="el-icon-s-unfold coll_ico" v-if="isCollapse"></i>
- <i class="el-icon-s-fold coll_ico" v-else></i>
- <!-- <img src="~@/assets/img/home/slide_down.png" alt="" class="coll_ico" v-else> -->
- </div>
- <!-- 面包屑 -->
- <el-breadcrumb separator="/" class="breadcrumb-inner">
- <el-breadcrumb-item v-for="item in $route.matched" :key="item.path">
- <span
- v-if="item.meta.pathFrom"
- @click.stop="handleClickBread(item)"
- style="cursor:pointer; color:#4099ef;fontSize:16px;">
- <template v-if="item.meta.pathFrom == 'pickList'">
- {{RoleType=='ficc'?'权益客户':'ficc客户'}}
- </template>
- <template v-if="item.meta.pathFrom=='/regionCustomerDetail'">
- {{$route.query.title?($route.query.title.split('/')[1]||''):''}}客户列表
- </template>
- <template v-else>
- {{item.meta.pathName}}
- </template>
- </span>
- <span v-if="item.meta.pathFrom" style="margin:0 9px;font-weight:700;color:#C0C4CC;fontSize:16px;">/</span>
- <span v-if="item.parent" style="cursor:pointer; color:#4099ef;fontSize:16px;" @click.stop="routeClick(item)">
- <template v-if="item.path == '/pickList'">
- {{RoleType=='ficc'?'权益客户':'ficc客户'}}
- </template>
- <template v-if="item.path=='/regionCustomerDetail'">
- {{$route.query.title?($route.query.title.split('/')[1]||''):''}}客户列表
- </template>
- <template v-else>
- {{ item.name }}
- </template>
- </span>
- <span v-else style="fontSize:16px;">{{ item.name }}</span>
- </el-breadcrumb-item>
- </el-breadcrumb>
- </div>
- <img src="~@/assets/img/home/logo_white.png" alt="" class="left_section_logo" v-else>
-
- <div class="approval_notice" v-show="isShowApprovalNotice">
- <img src="~@/assets/img/approval_ notice.png" alt="用印审批公告" />
- <div>纸质合同的用印交付时间为上午10:30-11:30,下午16:00-17:30</div>
- </div>
- </div>
-
-
- <div class="right_section">
- <!-- 财务系统 -->
- <div class="jump-other-sys-item" @click="linkToOtherMS('FINANCIAL_MANAGEMENT_SYSTEM')">
- <img class="icon" src="~@/assets/img/home/icon01.png" alt="">
- <span>财务系统</span>
- </div>
- <div class="jump-other-sys-item" @click="linkToOtherMS('HR_MANAGEMENT_SYSTEM')">
- <img class="icon" src="~@/assets/img/home/icon02.png" alt="">
- <span>HR系统</span>
- </div>
- <div class="jump-other-sys-item" @click="linkToOtherMS('ETA_SYSTEM')">
- <img class="icon" src="~@/assets/img/home/icon03.png" alt="">
- <span>ETA投研系统</span>
- </div>
-
- <!-- AI问答 -->
- <el-tooltip effect="dark" content="AI问答" placement="bottom">
- <div class="icon-box-item" @click="toOperation('AIQA')">
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
- <path d="M16.3221 2.84309C16.4829 2.84314 16.6421 2.87488 16.7906 2.93647C16.9391 2.99807 17.0741 3.08832 17.1877 3.20208C17.3013 3.31584 17.3915 3.45087 17.4529 3.59946C17.5144 3.74805 17.5459 3.90729 17.5458 4.06809C17.5441 4.2459 17.5037 4.42121 17.4275 4.58184L17.4358 4.57767C18.1705 5.53408 18.7093 6.62605 19.0213 7.79103C19.3333 8.956 19.4123 10.1711 19.254 11.3667C19.0956 12.5623 18.7028 13.7148 18.0983 14.7584C17.4937 15.802 16.6892 16.716 15.7308 17.4481C14.2543 18.5792 12.4679 19.2333 10.6101 19.323C8.7522 19.4127 6.91115 18.9338 5.33248 17.9502C5.18056 18.0162 5.01646 18.0495 4.85082 18.0481C4.69002 18.048 4.53081 18.0163 4.38228 17.9547C4.23375 17.8931 4.09882 17.8029 3.98517 17.6891C3.87153 17.5753 3.78142 17.4403 3.71997 17.2917C3.65853 17.1431 3.62696 16.9839 3.62707 16.8231C3.62407 16.6605 3.65351 16.4989 3.71367 16.3477C3.77383 16.1966 3.86351 16.059 3.97746 15.9429C4.09141 15.8268 4.22735 15.7346 4.37734 15.6717C4.52733 15.6088 4.68836 15.5763 4.85102 15.5763C5.01368 15.5763 5.17471 15.6088 5.3247 15.6717C5.47469 15.7346 5.61064 15.8268 5.72459 15.9429C5.83854 16.059 5.92822 16.1966 5.98838 16.3477C6.04854 16.4989 6.07798 16.6605 6.07498 16.8231C6.07361 16.9427 6.05293 17.0613 6.01373 17.1743C7.63872 18.1197 9.5404 18.4746 11.397 18.179C13.2536 17.8834 14.951 16.9555 16.2021 15.5523C17.4536 14.1484 18.1824 12.3556 18.2652 10.4767C18.348 8.5978 17.7799 6.74786 16.6566 5.23934C16.5484 5.27376 16.4356 5.2916 16.3221 5.29226C16.1613 5.2922 16.0021 5.26048 15.8536 5.19891C15.7051 5.13734 15.5702 5.04712 15.4566 4.93341C15.3429 4.8197 15.2528 4.68472 15.1913 4.53617C15.1299 4.38763 15.0983 4.22843 15.0983 4.06767C15.0983 3.90691 15.1299 3.74772 15.1913 3.59917C15.2528 3.45063 15.3429 3.31565 15.4566 3.20193C15.5702 3.08822 15.7051 2.998 15.8536 2.93643C16.0021 2.87486 16.1613 2.84314 16.3221 2.84309ZM9.90123 4.94934C13.0462 4.94934 15.6125 7.30059 15.6125 10.1864C15.6204 10.8732 15.4812 11.5538 15.2041 12.1823L16.5341 14.6031L13.2912 14.4114L13.2054 14.4681C12.2197 15.1001 11.0721 15.4333 9.90123 15.4277C6.74373 15.4277 4.18998 13.0764 4.18998 10.186C4.18998 7.29642 6.75623 4.94934 9.90123 4.94934ZM13.5766 1.65517C13.6422 1.67727 13.7026 1.71249 13.7542 1.75868C13.8057 1.80487 13.8473 1.86106 13.8764 1.92384C13.9055 1.98662 13.9216 2.05467 13.9236 2.12384C13.9256 2.19302 13.9134 2.26188 13.888 2.32622C13.8625 2.39057 13.8242 2.44905 13.7754 2.49812C13.7266 2.54719 13.6683 2.58581 13.6041 2.61163C13.5399 2.63746 13.4711 2.64994 13.4019 2.64833C13.3327 2.64672 13.2646 2.63104 13.2016 2.60226C12.5786 2.35606 11.928 2.18607 11.2641 2.09601C9.80843 1.90243 8.32746 2.10546 6.97755 2.68365C5.62763 3.26184 4.45885 4.19374 3.59457 5.38101C2.72984 6.56867 2.20145 7.96758 2.06505 9.43036C1.92866 10.8931 2.18932 12.3656 2.81957 13.6927C2.84853 13.7529 2.86528 13.8183 2.86884 13.8851C2.87241 13.9518 2.86271 14.0186 2.84032 14.0816C2.81793 14.1446 2.78329 14.2025 2.73839 14.2521C2.69349 14.3016 2.63923 14.3417 2.57873 14.3702C2.51082 14.406 2.4354 14.4243 2.35832 14.4235C2.1629 14.4235 1.98498 14.3102 1.90165 14.1335C0.0241494 10.2156 1.15165 5.51767 4.60207 2.87976C5.86473 1.91753 7.3552 1.29895 8.92814 1.08434C10.5011 0.86972 12.1028 1.06639 13.5771 1.65517H13.5766ZM9.90123 5.96976C7.30665 5.96976 5.1979 7.86392 5.1979 10.1864C5.1979 12.5089 7.30665 14.4073 9.90123 14.4073C10.8721 14.4135 11.8241 14.1381 12.6429 13.6152L12.9975 13.3702L14.7433 13.4764L14.0458 12.2068L14.2291 11.8518C14.4796 11.3323 14.6091 10.7631 14.6087 10.1864C14.6087 7.86392 12.4958 5.96976 9.90123 5.96976ZM8.59998 7.55767C8.82373 7.57434 9.01498 7.72684 9.08123 7.94101L10.1625 11.476L11.0679 9.38226C11.1054 9.29467 11.1655 9.21861 11.242 9.1618C11.3184 9.105 11.4086 9.0695 11.5033 9.05892L11.5616 9.05559C11.7771 9.05809 11.9708 9.18767 12.055 9.38642L12.4304 10.2723V10.2435C12.4747 10.1511 12.5441 10.0729 12.6307 10.0181C12.7172 9.96317 12.8175 9.93373 12.92 9.93309H13.6866C13.7949 9.93311 13.8988 9.97614 13.9753 10.0527C14.0519 10.1293 14.0949 10.2331 14.0949 10.3414C14.0949 10.4497 14.0519 10.5536 13.9753 10.6301C13.8988 10.7067 13.7949 10.7497 13.6866 10.7498H13.0991L12.8954 11.1823C12.8503 11.2754 12.7795 11.3538 12.6914 11.4081C12.6032 11.4623 12.5014 11.4902 12.3979 11.4885C12.2939 11.4877 12.1924 11.4562 12.1061 11.3982C12.0198 11.3401 11.9524 11.2579 11.9125 11.1618L11.5491 10.3006L10.5991 12.4923C10.5582 12.5893 10.4895 12.6721 10.4016 12.7302C10.3138 12.7883 10.2107 12.8192 10.1054 12.8189H10.0766C9.96563 12.8145 9.85888 12.775 9.77168 12.7061C9.68448 12.6372 9.62132 12.5425 9.59123 12.4356L8.5304 8.86809L7.7679 10.4514C7.6804 10.641 7.49082 10.7623 7.28248 10.7618H6.44582C6.33753 10.7618 6.2337 10.7188 6.15714 10.6422C6.08058 10.5656 6.03757 10.4618 6.03757 10.3535C6.03757 10.2452 6.08058 10.1414 6.15714 10.0648C6.2337 9.98823 6.33753 9.9452 6.44582 9.94517H7.10665L8.07332 7.86767C8.12106 7.77016 8.19637 7.68881 8.28992 7.6337C8.38347 7.57859 8.49113 7.55216 8.59957 7.55767H8.59998Z" fill="currentColor"/>
- </svg>
- </div>
- </el-tooltip>
- <!-- 留言板消息通知 -->
- <questionMsgDia></questionMsgDia>
- <el-popover
- placement="bottom"
- width="610"
- trigger="hover"
- popper-class="notice_poper">
- <div>
- <h4 style="paddingBottom:12px;borderBottom:1px solid #DCDFE6;">待办事项({{noticeCount}}项)</h4>
- <div class="notice-nav-box">
- <div class="notice-nav-item" @click="handleNoticeTypeChange('客户')" :class="noticeType==='客户'?'notice-nav-active':''" v-if="Role !== 'admin'">
- <span>客户</span>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:-8px;top:0px;" v-if="flag1"></span>
- </div>
- <div class="notice-nav-item" @click="handleNoticeTypeChange('合同')" :class="noticeType==='合同'?'notice-nav-active':''" v-if="Role !== 'admin'">
- <span>合同</span>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:-8px;top:0px;" v-if="flag2"></span>
- </div>
- <div class="notice-nav-item" @click="handleNoticeTypeChange('用印')" :class="noticeType==='用印'?'notice-nav-active':''" v-if="Role !== 'admin'">
- <span>用印</span>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:-8px;top:0px;" v-if="flag3"></span>
- </div>
- <div class="notice-nav-item" @click="handleNoticeTypeChange('ETA试用')" :class="noticeType==='ETA试用'?'notice-nav-active':''">
- <span>ETA试用</span>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:-8px;top:0px;" v-if="flag5"></span>
- </div>
- <div class="notice-nav-item" @click="handleNoticeTypeChange('出差')" :class="noticeType==='出差'?'notice-nav-active':''">
- <span>出差</span>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:-8px;top:0px;" v-if="flag6"></span>
- </div>
- </div>
- <ul style="marginTop:20px;" v-if="currentNoticeList.length">
- <li class="notice_item" v-for="item in currentNoticeList" :key="item" @click="noticeClick(item)"
- style="display:flex;justifyContent:space-between;alignItems:center;fontSize:12px;cursor:pointer;marginBottom:15px;">
- <div style="display:flex;alignItems:center;">
- <div style="width:36px;min-width:36px;height:36px;background:#409EFF;borderRadius:50%;color:#fff;textAlign:center;lineHeight:36px;marginRight:8px;fontSize:12px">{{item.RealName.substr(item.RealName.length-2)}}</div>
- <span :style="item.MessageStatus===0?'':'color:#bbb'">
- {{(Role=='rai_admin'||Role=='ficc_admin') && (noticeType!=='出差')?item.RealName:''}} {{item.Content}}
- </span>
- </div>
- <span style="color:#B2B5BB;margin-left: 15px;min-width: 110px;">{{item.CreateTime}}</span>
- </li>
- </ul>
- <div style="textAlign:center;margin:40px 0;color:#999;" v-else>暂无通知</div>
- </div>
- <div slot="reference" class="icon-box-item" @click="getNotice">
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
- <path d="M16.7344 15.4904L15.2941 12.9564V7.84847C15.2941 5.89142 13.8231 3.77337 11.6786 2.99732C11.5741 1.96012 10.8811 1.20374 9.97287 1.20374C9.06595 1.20374 8.37036 1.96014 8.26717 2.99732C6.12392 3.77337 4.65292 5.8914 4.65292 7.84847V12.9564L3.14258 15.6146C3.04183 15.7903 3.04429 16.0054 3.14504 16.1799C3.24581 16.3544 3.43263 16.4601 3.63415 16.4601H7.22871C7.49293 17.7357 8.62233 18.6967 9.97289 18.6967C11.3247 18.6967 12.4541 17.7357 12.7171 16.4601H16.3116C16.3215 16.4601 16.3288 16.4601 16.3374 16.4601C16.6508 16.4601 16.904 16.2082 16.904 15.8948C16.904 15.7362 16.8401 15.5925 16.7344 15.4904ZM9.97287 2.33803C10.1769 2.33803 10.3415 2.49286 10.4472 2.7239C10.2899 2.70792 10.1375 2.67106 9.97287 2.67106C9.8082 2.67106 9.65583 2.70792 9.49851 2.7239C9.60422 2.49284 9.76889 2.33803 9.97287 2.33803ZM9.97287 17.5636C9.25396 17.5636 8.65303 17.1016 8.41951 16.4601H11.5262C11.2927 17.1015 10.693 17.5636 9.97287 17.5636ZM4.60745 15.3282L5.71102 13.3853C5.76015 13.3017 5.78719 13.2034 5.78719 13.1051V7.84847C5.78719 5.93934 7.57648 3.80413 9.97287 3.80413C12.3692 3.80413 14.161 5.93934 14.161 7.84847V13.1051C14.161 13.2034 14.1868 13.3017 14.2347 13.3853L15.3395 15.3282H4.60745Z" fill="currentColor"/>
- </svg>
- <span style="width:8px;height:8px;borderRadius:50%;background:#f00;display:block;position:absolute;right:5px;top:3px;" v-if="flag1||flag2||flag3||flag4||flag5 || flag6"></span>
- </div>
- </el-popover>
- <!-- 销售待办 -->
- <el-tooltip effect="dark" content="待办事项" placement="bottom">
- <div class="icon-box-item" v-if="Role=='ficc_seller'||Role=='rai_seller'" @click="handleShowSallerTodayList">
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
- <path d="M2.35855 17.4322V2.4931C2.35855 2.41005 2.42588 2.34244 2.50893 2.34244H15.0778C15.1609 2.34244 15.2285 2.41005 15.2285 2.4931V8.52028H16.3187V2.4931C16.3187 1.80903 15.7622 1.2522 15.0778 1.2522H2.50893C1.82487 1.2522 1.26831 1.80903 1.26831 2.4931V17.4322C1.26831 18.1163 1.82487 18.6731 2.50893 18.6731H9.54544V17.5829H2.50893C2.42588 17.5829 2.35855 17.5153 2.35855 17.4322Z" fill="currentColor"/>
- <path d="M5.61836 10.7966C5.31731 10.7966 5.07324 11.0404 5.07324 11.3417C5.07324 11.643 5.31731 11.8868 5.61836 11.8868H7.79512C8.09616 11.8868 8.34024 11.643 8.34024 11.3417C8.34024 11.0404 8.09616 10.7966 7.79512 10.7966H5.61836ZM12.4324 8.39255C12.4324 8.09124 12.1883 7.84743 11.8872 7.84743H5.61836C5.31731 7.84743 5.07324 8.09124 5.07324 8.39255C5.07324 8.69385 5.31731 8.93767 5.61836 8.93767H11.8872C12.1883 8.93767 12.4324 8.69385 12.4324 8.39255ZM11.8872 5.00577H5.61836C5.31731 5.00577 5.07324 5.24958 5.07324 5.55089C5.07324 5.85219 5.31731 6.09601 5.61836 6.09601H11.8872C12.1883 6.09601 12.4324 5.85219 12.4324 5.55089C12.4324 5.24958 12.1883 5.00577 11.8872 5.00577ZM16.0233 14.038H14.9365V12.2749C14.9365 11.9736 14.6924 11.7298 14.3914 11.7298C14.0903 11.7298 13.8463 11.9736 13.8463 12.2749V14.5832C13.8463 14.8845 14.0903 15.1283 14.3914 15.1283H16.0233C16.3243 15.1283 16.5684 14.8845 16.5684 14.5832C16.5684 14.2818 16.3243 14.038 16.0233 14.038Z" fill="currentColor"/>
- <path d="M14.4272 10.0611C12.0589 10.0611 10.1389 11.981 10.1389 14.3493C10.1389 16.7177 12.0588 18.6376 14.4272 18.6376C16.7955 18.6376 18.7155 16.7177 18.7155 14.3493C18.7155 11.981 16.7955 10.0611 14.4272 10.0611ZM14.4272 17.5474C12.6638 17.5474 11.2292 16.1127 11.2292 14.3493C11.2292 12.5859 12.6638 11.1513 14.4272 11.1513C16.1906 11.1513 17.6252 12.5859 17.6252 14.3493C17.6253 16.1127 16.1906 17.5474 14.4272 17.5474Z" fill="currentColor"/>
- </svg>
- </div>
- </el-tooltip>
- <!-- 系统帮助文档 -->
- <el-tooltip effect="dark" content="帮助文档" placement="bottom">
- <div class="icon-box-item" v-if="isShowRole" @click="toOperation('fingerpost')">
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
- <path d="M9.24255 14.5C9.24255 14.0858 9.57834 13.75 9.99255 13.75C10.4068 13.75 10.7426 14.0858 10.7426 14.5C10.7426 14.9142 10.4068 15.25 9.99255 15.25C9.57834 15.25 9.24255 14.9142 9.24255 14.5Z" fill="currentColor"/>
- <path d="M9.99261 5.00763C8.32056 5.00763 6.96136 6.36682 6.96136 8.03888H8.21136C8.21136 7.05718 9.01092 6.25763 9.99261 6.25763C10.9743 6.25763 11.7739 7.05718 11.7739 8.03888C11.7739 8.71106 11.2183 9.3851 10.4931 9.67971L10.4899 9.68101C9.82793 9.95419 9.36767 10.6052 9.36767 11.3656V12.5H10.6177V11.3656C10.6177 11.1228 10.7618 10.9216 10.9655 10.837C11.9996 10.4161 13.0239 9.37337 13.0239 8.03888C13.0239 6.36682 11.6647 5.00763 9.99261 5.00763Z" fill="currentColor"/>
- <path d="M18.7427 10C18.7427 5.16751 14.8252 1.25 9.99268 1.25C5.16019 1.25 1.24268 5.16751 1.24268 10C1.24267 14.8325 5.16018 18.75 9.99267 18.75C14.8252 18.75 18.7427 14.8325 18.7427 10ZM17.4927 10C17.4927 14.1421 14.1348 17.5 9.99267 17.5C5.85054 17.5 2.49267 14.1421 2.49268 10C2.49268 5.85786 5.85054 2.5 9.99268 2.5C14.1348 2.5 17.4927 5.85787 17.4927 10Z" fill="currentColor"/>
- </svg>
- </div>
- </el-tooltip>
- <!-- <img src="~@/assets/img/home/saller_notice.png" v-if="Role=='ficc_seller'||Role=='rai_seller'" alt="" style="height:25px;margin-left:20px;cursor: pointer;" @click="handleShowSallerTodayList"> -->
- <div class="userinfo">
- <!-- <div class="userinfo-fingerpost">
- <el-button @click="toOperation('fingerpost')" type="text" v-if="isShowRole">帮助文档</el-button>
- </div>
- <span style="color:#409EFF;cursor: pointer;" @click="linkToOtherMS('HR_MANAGEMENT_SYSTEM')">HR系统</span>
- <span style="color:#409EFF;cursor: pointer;" @click="linkToOtherMS('FINANCIAL_MANAGEMENT_SYSTEM')">财务报表系统</span> -->
- <el-dropdown trigger="click">
- <span class="el-dropdown-link userinfo-inner">
- <img src="~@/assets/img/set_m/user_img.png" />
- {{sysUserName+',欢迎您!'}}
- </span>
- <el-dropdown-menu slot="dropdown">
- <el-dropdown-item divided @click.native="resetpwd">修改密码</el-dropdown-item>
- <el-dropdown-item divided @click.native="logout">退出登录</el-dropdown-item>
- </el-dropdown-menu>
- </el-dropdown>
- </div>
- </div>
- </div>
- <section class="content-container" id="displayMain" ref="displayMain" :style="dynamicContStyle">
- <el-row class="grid-content bg-purple-light contentc" style="min-width:900px;">
- <el-col :span="24" class="content-wrapper" :style="!isHaveAside ? 'padding: 0 30px 0 0;' : ''">
- <transition name="fade" mode="out-in">
- <!-- 加入key 解决不同路由到同一个文件时的缓存问题 -->
- <router-view :key="$route.path"></router-view>
- </transition>
- </el-col>
- </el-row>
- </section>
- </div>
- </el-container>
- <!-- 销售待办 -->
- <el-dialog
- width="70%"
- top="5vh"
- :visible.sync="show"
- :modal-append-to-body="false"
- :close-on-click-modal="todayListOpen==='auto'?false:true"
- :close-on-press-escape="todayListOpen==='auto'?false:true"
- :show-close="false"
- v-dialogDrag
- >
- <div slot="title">
- <img width="15px" src="../assets/img/home/todo-icon.png" alt="" style="margin-right:10px">
- <span style="position:relative;top:-2px">{{todayListOpen==='auto'?'今日待办':'我的待办'}}</span>
- </div>
- <div class="today-list-wrap">
- <el-table
- :data="todayList"
- height="70vh"
- border
- style="width: 100%">
- <el-table-column label="客户名称" width="200px" align="center" prop="CompanyName"></el-table-column>
- <el-table-column label="社会信用码" width="200px" align="center" prop="CreditCode"></el-table-column>
- <el-table-column label="客户状态" width="80px" align="center" prop="Status"></el-table-column>
- <el-table-column label="转试用日期" width="150px" align="center">
- <template slot-scope="scope">{{$moment(scope.row.TryOutTime).format('YYYY.MM.DD')}}</template>
- </el-table-column>
- <el-table-column label="到期天数" width="80px" align="center" prop="ExpireDays"></el-table-column>
- <!-- <el-table-column label="续约情况说明" align="center" prop="RenewalReason"></el-table-column> -->
- <el-table-column label="最新情况" align="center" prop="RenewalReason"></el-table-column>
- <el-table-column label="To Do事项" align="center" prop="RenewalTodo"></el-table-column>
- <el-table-column label="更新时间" align="center" prop="ModifyTime">
- <template slot-scope="scope">{{$moment(scope.row.ModifyTime).format('YYYY.MM.DD HH:mm:ss')}}</template>
- </el-table-column>
- <el-table-column label="操作" width="100px" align="center">
- <template slot-scope="scope">
- <span style="font-size:14px;color:#409EFF;cursor: pointer;" @click="handleShowEditTodayRemark(scope)">{{scope.row.RenewalReason?'编辑说明':'添加说明'}}</span>
- <span style="font-size:14px;color:#409EFF;cursor: pointer;display:inline-block" @click="getSellerTodayHistoryList(scope.row)">历史记录</span>
- </template>
- </el-table-column>
- </el-table>
-
- <div style="text-align:center;padding:30px 0">
- <el-button type="primary" style="width:200px" :disabled="!done" @click="handleTodayFinished" v-if="todayListOpen==='auto'">完成</el-button>
- <el-button type="primary" style="width:200px" @click="() => { show=false;getSellerFeedBackList() }" v-else>完成</el-button>
- </div>
- </div>
- </el-dialog>
- <!-- 填写备注弹窗 -->
- <el-dialog
- :visible.sync="showTodayRemark.show"
- :modal-append-to-body='false'
- width="670px"
- @close="handleTodayRemarkClose"
- v-dialogDrag
- >
- <div slot="title">
- <img width="15" src="../assets/img/icons/warn.png" alt="" style="position:relative;top:2px">
- <span>{{showTodayRemark.new?'添加说明':'编辑说明'}}</span>
- </div>
- <div>
- <div style="margin-bottom:5px">最新情况</div>
- <el-input type="textarea" v-model.trim="showTodayRemark.remark" :autosize="{ minRows: 8, maxRows: 12}" placeholder="请填写最新情况" resize="none"></el-input>
- <div style="margin-bottom:5px;margin-top:15px">To Do事项</div>
- <el-input type="textarea" v-model.trim="showTodayRemark.toDoRemark" :autosize="{ minRows: 8, maxRows: 12}" placeholder="请填写To Do事项" resize="none"></el-input>
- <el-checkbox v-model="showTodayRemark.isGiveUp" style="margin:20px 10px 0;">客户无续约意向,不再跟进(转为冻结客户)</el-checkbox>
- <div style="text-align:center;margin:30px 0">
- <el-button type="primary" style="width:152px;margin-right:30px" @click="handleSubmitTodayRemark">确定</el-button>
- <el-button type="primary" style="width:152px" plain @click="handleTodayRemarkClose">取消</el-button>
- </div>
- </div>
- </el-dialog>
- <!-- //重置初始密码 -->
- <pwd-dlg :dialogVisiblePwd="dialogVisiblePwd"/>
- <!-- 路演反馈弹窗 -->
- <feedback-dialog
- :isShow.sync="isFeedbackDialog"
- :data="roadshowFeedbackList"
- />
- <!-- 代办历史记录弹窗 -->
- <el-dialog
- :visible.sync="showTodayHistoryList"
- :modal-append-to-body='false'
- width="800px"
- v-dialogDrag
- title="历史记录"
- >
- <div>
- <el-table
- :data="todayHistoryList"
- height="500"
- border
- style="width: 100%"
- >
- <el-table-column align="center" prop="RenewalReason" label="客户跟踪"></el-table-column>
- <el-table-column align="center" prop="RenewalTodo" label="To Do事项"></el-table-column>
- <el-table-column align="center" prop="CreateTime" label="更新时间" width="180">
- <template slot-scope="scope">{{scope.row.CreateTime}}</template>
- </el-table-column>
- </el-table>
- <div style="text-align:center;margin:30px 0"><el-button type="primary" @click="showTodayHistoryList=false">知道了</el-button></div>
- </div>
- </el-dialog>
- </div>
- </template>
- <script>
- import { checkPwd,getnavlist, positionlist,departInterence,customInterence,roadshowInterence } from "api/api.js";
- import PwdDlg from '@/components/pwdDlg.vue';
- import feedbackDialog from '@/components/todo/roadShowFeedbackDia.vue';
- import questionMsgDia from '@/components/questionMsgDia.vue'
- import EventBus from '@/api/bus.js'
- export default {
- components:{
- PwdDlg,
- feedbackDialog,
- questionMsgDia
- },
- inject:['reload'],
- filters: {
- formatDate(e){
- return e.replace(/-/g,'.')
- }
- },
- watch: {
- '$route.path'(newval){
- console.log(newval);
- if(this.$route.meta.pathFrom) {
- this.activePath = this.$route.meta.pathFrom;
- }else {
- this.activePath = newval.replace('/','');
- }
- // 用印审批页面 头部需要加上公告
- if(newval === '/sealApprovalList'){
- this.isShowApprovalNotice = true
- console.log(this.isShowApprovalNotice);
- }else{
- this.isShowApprovalNotice = false
- console.log(this.isShowApprovalNotice);
- }
- this.sysUserName = localStorage.getItem('userName') || '';
- this.Role = localStorage.getItem('Role') || '';
- this.RoleType = localStorage.getItem('RoleType') || '';
- }
- },
- computed: {
- done(){
- //今日待办是否处理完
- if(!this.todayList){
- return false
- }
- // 之前是通过判断列表中是否都有说明,现需要判断列表中都要添加或编辑
- return this.todayList.every(item=>item.isEdited)
- },
- Role() {
- let role = localStorage.getItem('Role') || '';
- return role;
- },
- isShowRole() {
- let role = localStorage.getItem('RoleIdentity') || '';
- return role=='rai_group' || role=='ficc_group' || role=="rai_admin"|| role=='ficc_admin' || role=='rai_seller' || role=='ficc_seller'|| role=='admin'
- },
- /* layout2 不展示侧边 */
- isHaveAside() {
- return this.$route.path !== '/mychartdetail';
- },
- /* wrapper style */
- dynamicContStyle() {
- if(this.isHaveAside) {
- return this.isCollapse ? 'left:70px' : 'left:200px'
- }else {
- return 'left:0;padding-top:0;height:calc(100vh - 68px)'
- }
- }
- },
- data() {
- return {
- showTodayRemark:{
- CompanyId:0,
- ProductId:0,
- remark:'',
- toDoRemark:'',
- show:false,
- index:0,
- new:false,//是否为新增
- isGiveUp:false, //是否不继续跟进
- },//显示填写待办备注弹窗
- show:false,//显示销售今日待办列表
- todayListOpen:'auto',//auto 自动打开的今日待办 不可关闭 其余为点击导航打开的
- todayList:null,//销售今日待办数据
- todayHistoryList:[],//销售今日待办某项的历史数据
- showTodayHistoryList:false,
- // defaultPath:this.$route.meta.pathFrom?this.$route.meta.pathFrom:this.$route.path.replace('/',''),
- showNoteDetail: false, //是否显示日志明细弹出
- isCollapse:false,//侧边栏折叠
- noteDetail: "", //日志明细,
- predefineColors: [
- "#5882EF",
- "#ff4500",
- "#ff8c00",
- "#ffd700",
- "#90ee90",
- "#00ced1",
- "#c71585",
- ],
- breadcrumbFixed: false, //吸顶盒固定
- sysName: "弘则研究",
- // collapsed: false, //是否折叠左侧菜单栏
- issafariBrowser:
- /Safari/.test(navigator.userAgent) &&
- !/Chrome/.test(navigator.userAgent), //判断是否是苹果系统
- Role:'',//角色名称
- RoleType:'',//角色类型
- sysUserName: "", //登录系统用户名
- sysUserAvatar: "", //登录系统用户头像
- form: {
- name: "",
- region: "",
- date1: "",
- date2: "",
- delivery: false,
- type: [],
- resource: "",
- desc: "",
- },
- navlists: /* this.$router.options.routes */[],
- Socket: null,
- MAX: 1000, //重连最大次数
- count: 0, //当前已重连次数
- activePath: "",
- noticeList:[],//消息提醒列表
- isShowNotice:false,//显示提示红点
- currentNoticeList:[],//当前显示的消息提醒列表
- noticeType:'客户',//消息类型 客户/合同/用印
- noticeCount:0,//总共多少消息
- flag1:false,//显示客户提示红点
- flag2:false,//显示合同提示红点
- flag3:false,//显示用印提示红点
- dialogVisiblePwd:false, //初始密码的弹框
- flag4:false,
- flag5:false,//显示ETA试用相关的红点
- flag6:false,//显示出差相关的红点
- /* 路演反馈*/
- isFeedbackDialog: false,
- roadshowFeedbackList: [],
- isShowApprovalNotice:false, // 是否显示用印审批的公告
- //新的icon
- MenuLetterMap : {
- "销售管理":'Sale',
- "客户管理":'Clnt',
- "路演管理":'RShow',
- "出差管理":'Trip',
- "研报管理":'Rpt',
- "语义分析":'Nlp',
- "ETA表格":'Tbl',
- "ETA指标库":'Inx',
- "相关性":'Co-R',
- "ETA预测指标":'FInx',
- "ETA图库":'Gra',
- /* 151:'FData', */
- "供应分析":'Sup',
- "商品价格曲线":'Crv'
- }
- };
- },
- created() {
- this.isInitialPwd() //判断是否为初始密码
- this.Role = localStorage.getItem('Role') || '';
- this.RoleType = localStorage.getItem('RoleType') || '';
- this.sysUserName = localStorage.getItem('userName') || '';
- this.sysUserAvatar = "../assets/img/userLogo.png";
- this.getSellerTodayList('auto')
- if(this.$route.path === '/sealApprovalList'){
- this.isShowApprovalNotice = true
- }
- },
- destroyed() {},
- mounted() {
- if(sessionStorage.getItem('hasGetMenu')){
- this.navlists=JSON.parse(sessionStorage.getItem('MenuList'))
- sessionStorage.removeItem('hasGetMenu')
- }else{
- this.getMenuList()
- }
- this.getNotice()
- },
- methods: {
- //判断是否为初始密码
- async isInitialPwd() {
- const res = await checkPwd()
- if (res.Ret===200){
- this.dialogVisiblePwd=res.Data
- }
- },
- // 点击导航 打开今日待办
- handleShowSallerTodayList(){
- this.getSellerTodayList('click')
- },
- // 点击完成 批量提交备注
- handleTodayFinished(){
- let arr=this.todayList.map(item=>{
- return customInterence.sellerTodayListRemark({
- CompanyId:item.CompanyId,
- ProductId:item.ProductId,
- Remark:item.RenewalReason,
- Renew:item.isGiveUp?1:0,
- RenewalTodo:item.RenewalTodo
- })
- })
- Promise.all(arr).then(res=>{
- this.show=false;
- this.getSellerFeedBackList();
- }).catch(error=>{
- this.$message.waring('部分提交失败请重试')
- this.getSellerTodayList()
- })
- },
- //提交备注
- async handleSubmitTodayRemark(){
- if(!this.showTodayRemark.remark&&!this.showTodayRemark.isGiveUp){
- this.$message.warning('请填写最新情况')
- return
- }
- if(!this.showTodayRemark.toDoRemark&&!this.showTodayRemark.isGiveUp){
- this.$message.warning('请填写To Do事项')
- return
- }
- // 如果选中不再跟进,需要在备注中添加额外内容
- const addRemark = this.showTodayRemark.isGiveUp?this.showTodayRemark.remark?'。客户无续约意向,不再跟进(转为冻结客户)':'客户无续约意向,不再跟进(转为冻结客户)':''
- // 自动开大的点击完成时批量更新
- if(this.todayListOpen==='auto'){
- this.todayList[this.showTodayRemark.index].RenewalReason=this.showTodayRemark.remark+addRemark
- this.todayList[this.showTodayRemark.index].RenewalTodo=this.showTodayRemark.toDoRemark
- this.todayList[this.showTodayRemark.index].isGiveUp=this.showTodayRemark.isGiveUp
- this.$set(this.todayList[this.showTodayRemark.index],'isEdited',true)
- this.handleTodayRemarkClose()
- }else{
- const res=await customInterence.sellerTodayListRemark({
- CompanyId:this.showTodayRemark.CompanyId,
- ProductId:this.showTodayRemark.ProductId,
- Remark:this.showTodayRemark.remark+addRemark,
- Renew:this.showTodayRemark.isGiveUp?1:0,
- RenewalTodo:this.showTodayRemark.toDoRemark
- })
- if(res.Ret===200){
- this.todayList[this.showTodayRemark.index].RenewalReason=this.showTodayRemark.remark
- this.todayList[this.showTodayRemark.index].RenewalTodo=this.showTodayRemark.toDoRemark
- this.handleTodayRemarkClose()
- this.getSellerTodayList()
- }
- }
-
- },
- handleTodayRemarkClose(){
- this.showTodayRemark={
- remark:'',
- toDoRemark:'',
- show:false,
- index:0,
- new:false,
- ProductId:0,
- CompanyId:0,
- isGiveUp:false
- }
- },
- //显示填写今日待办备注
- handleShowEditTodayRemark(e){
- this.showTodayRemark.remark=e.row.RenewalReason
- this.showTodayRemark.toDoRemark=e.row.RenewalTodo
- this.showTodayRemark.CompanyId=e.row.CompanyId
- this.showTodayRemark.ProductId=e.row.ProductId
- if(e.row.RenewalReason&&this.todayListOpen!=='auto'){
- // 如果有说明且不是自动弹出,则为编辑
- this.showTodayRemark.new=false
- }else{
- this.showTodayRemark.new=true
- }
- this.showTodayRemark.show=true
- this.showTodayRemark.index=e.$index
- },
- //获取销售今日待办
- async getSellerTodayList(type){
- this.todayListOpen=type
- let ReasonStatus=-1
- if(type==='auto'){
- ReasonStatus=-1
- }else{
- ReasonStatus=0
- }
- const res=await customInterence.sellerTodayList({ReasonStatus:ReasonStatus,PageSize:10000,CurrentIndex:1})
- if(res.Ret===200){
- if(type==='auto'&&res.Data.Paging.Totals>0){
- // 自动弹出清除上次说明
- res.Data.List&&res.Data.List.forEach(item=>item.RenewalReason='')
- }
- if((type==='auto'&&res.Data.Paging.Totals>0)||type!=='auto'){
- this.show=true
- }else {
- this.getSellerFeedBackList();
- }
-
- this.$nextTick(()=>{
- this.todayList=res.Data.List
- })
- }
- },
- //获取销售代办中的历史记录
- async getSellerTodayHistoryList(item){
- const res=await customInterence.sellerTodayHistoryList({
- CompanyId:Number(item.CompanyId),
- ProductId:Number(item.ProductId)
- })
- if(res.Ret===200){
- this.showTodayHistoryList=true
- this.$nextTick(()=>{
- this.todayHistoryList=res.Data||[]
- })
- }
- },
- /* 获取销售路演待反馈 */
- getSellerFeedBackList() {
- roadshowInterence.toFeedbacklist().then(res => {
- if(res.Ret !== 200) return
- const { Data } = res;
- if(!Data || !Data.length) return
- this.isFeedbackDialog = true;
- this.roadshowFeedbackList = Data;
- })
- },
- // 操作指南的跳转
- toOperation (url) {
- // this.$router.replace({name: '/fingerpost', params: {id: 1}})
- let {href} = this.$router.resolve({path:`/${url}`,query:{contractid:this.contractId}});
- window.open(href,'_blank');
- },
- // 跳转去其他的系统
- async linkToOtherMS(key){
- /**
- * HR_MANAGEMENT_SYSTEM -- HR管理系统
- * FINANCIAL_MANAGEMENT_SYSTEM -- 财务管理系统
- */
- let href = process.env[key]
- console.log(href);
- if(key==='ETA_SYSTEM'){//跳转ETA系统
- // 获取临时code
- const res=await departInterence.getToETASysCode()
- if(res.Ret===200){
- href=`${href}?code=${res.Data}`
- }
- }
- window.open(href,'_blank');
- },
- // 切换通知消息类型
- handleNoticeTypeChange(e){
- this.noticeType=e
- if(e==='客户'){
- this.currentNoticeList=this.noticeList.Company.List
- }else if(e==='合同'){
- this.currentNoticeList=this.noticeList.Contract.List
- }else if (e === '用印'){
- this.currentNoticeList=this.noticeList.Seal.List
- }else if(e==='ETA试用'){
- this.currentNoticeList=this.noticeList.ETATrial.List
- }else if(e==='出差'){
- this.currentNoticeList=this.noticeList.BusinessTrip.List
- }else{
- this.currentNoticeList=this.noticeList.EdbReplace.List
- }
- },
- routeClick(item) {
- if(this.$route.path == item.path) {
- window.location.reload();
- }else {
- this.$router.push({path:item.path})
- }
- },
- /* 侧边栏菜单列表 */
- getMenuList() {
- departInterence.getMenu().then(res => {
- if(res.Ret === 200) {
- this.navlists = res.Data.List.length?res.Data.List:[];
- sessionStorage.setItem('MenuList',JSON.stringify(this.navlists));
- /* 是否有数据报表权限 */
- let bool_data = this.navlists.some(item => {
- return item.name === '报表统计'
- })
- this.$store.commit('SET_DATA_AUTH',bool_data)
- }
- })
- },
- /* 待办事项列表 */
- getNotice() {
- customInterence.noticeList().then(res => {
- if(res.Ret === 200) {
- res.Data.Company.List&&res.Data.Company.List.forEach(item => {
- item.CreateTime = item.CreateTime.replace(/-/g,'.')
- });
- res.Data.Contract.List&&res.Data.Contract.List.forEach(item => {
- item.CreateTime = item.CreateTime.replace(/-/g,'.')
- });
- res.Data.Seal.List&&res.Data.Seal.List.forEach(item => {
- item.CreateTime = item.CreateTime.replace(/-/g,'.')
- });
- res.Data.EdbReplace.List&&res.Data.EdbReplace.List.forEach(item => item.CreateTime = item.CreateTime.replace(/-/g,'.'));
- res.Data.BusinessTrip.List&&res.Data.BusinessTrip.List.forEach(item => item.CreateTime = item.CreateTime.replace(/-/g,'.'));
- this.noticeList = res.Data;
- this.noticeCount= this.Role === 'admin' ? res.Data.EdbReplace.Total+res.Data.BusinessTrip.Total :
- res.Data.Company.Total+res.Data.Contract.Total+res.Data.Seal.Total + res.Data.EdbReplace.Total+res.Data.BusinessTrip.Total;
- this.noticeType = this.Role === 'admin' ? '更新' : '客户';
- // 默认显示客户
- this.currentNoticeList = this.Role === 'admin' ? res.Data.EdbReplace.List : res.Data.Company.List
- // 检查是否有未读的
- if(this.Role !='admin'){
- this.flag1=res.Data.Company.List.some(item => {
- return item.MessageStatus === 0;
- })
- this.flag2=res.Data.Contract.List.some(item => {
- return item.MessageStatus === 0;
- })
- this.flag3=res.Data.Seal.List.some(item => {
- return item.MessageStatus === 0;
- })
- }
- // this.flag4=res.Data.EdbReplace.List.some(item => {
- // return item.MessageStatus === 0;
- // })
- this.flag5=res.Data.ETATrial.List.some(item => {
- return item.MessageStatus === 0;
- })
- this.flag6=res.Data.BusinessTrip.List.some(item => {
- return item.MessageStatus === 0;
- })
-
- // res.Data.List&&res.Data.List.forEach(item => {
- // item.CreateTime = item.CreateTime.replace(/-/g,'.')
- // });
- // this.noticeList = res.Data.List || [];
- // // 检索列表中每一个是否已读
- // let bol = this.noticeList.some(item => {
- // return item.MessageStatus === 0;
- // })
- // /* 有一个未读就显示提示,全部已读不显示提示 */
- // this.isShowNotice = bol?true:false
- }
- })
- },
- /* 点击消息列表 跳转审批列表 */
- noticeClick(item) {
- customInterence.readNotice({
- Id:Number(item.Id)
- }).then(res => {
- if(res.Ret===200) {
- item.MessageStatus = 1;
- if(this.noticeType==='客户'){
- if(this.$route.path!='/approvalList') {
- this.$router.push({
- path:'/approvalList'
- })
- }else {
- window.location.reload();
- }
- }else if(this.noticeType==='合同'){
- let Role=localStorage.getItem('Role')
- // 主管跳转合同审批列表
- if(Role==='ficc_admin'||Role==='rai_admin'){
- if(this.$route.path!='/contractapprovallist') {
- this.$router.push({
- path:'/contractapprovallist'
- })
- }else {
- window.location.reload();
- }
- }else{
- if(this.$route.path!='/contractmanagelist') {
- this.$router.push({
- path:'/contractmanagelist'
- })
- }else {
- window.location.reload();
- }
- }
- }else if(this.noticeType==='用印'){
- // 用印
- if(this.$route.path!='/sealApprovalList') {
- this.$router.push({
- path:'/sealApprovalList'
- })
- }else {
- window.location.reload();
- }
- }else if(this.noticeType==='ETA试用'){
- const path = this.$route.path
- let pushPath = '/etaApprovalList'
- //非管理员:若通过跳转用户列表,若驳回跳转审批列表
- //const etaApprovalListType = item.Content.includes('通过')?'approved':'all'
- const etaApprovalListType = item.Redirect===1?'approved':'all'
- sessionStorage.setItem('etaApprovalListType',etaApprovalListType)
- if(path==pushPath){
- window.location.reload();
- }else{
- this.$router.push(pushPath)
- }
- }else if(this.noticeType==='出差'){
- const path = this.$route.path
- let pushPath;
- if(item.ApprovalStatus!=1){
- // 跳到申请列表
- pushPath= '/businessTripApplication'
- }else{
- // 跳到审批列表
- pushPath = '/businessTripApproval'
- }
- if(path==pushPath){
- window.location.reload();
- }else{
- this.$router.push(pushPath)
- }
- }
-
- }
- })
- },
- resetpwd() {
- //修改密码
- this.$router.push({ path: "/resetpsd" });
- },
- handleselect: function (a, b) {
-
- // 清除筛选条件
- sessionStorage.removeItem('pickListBack');
- sessionStorage.removeItem('customSearchBack');
- sessionStorage.removeItem('customListBack');
- sessionStorage.removeItem('approvalListBack');
- this.activePath = a;
- // this.defaultPath = a.replace('/','');
- if (a == this.$route.path.replace(/\//g,'')) {
- window.location.reload();
- }
- },
- logout() {
- //退出登录
- var that = this;
- this.$confirm("确认退出吗?", "提示", {
- type: "warning"
- }).then(() => {
- // http.setCookie({rddp_admin_access_token:'',rddp_user_name:''},function(){},0);
- localStorage.setItem('auth','');
- localStorage.setItem('userName','');
- localStorage.setItem('Role','');
- localStorage.setItem('RoleType','');
- localStorage.setItem('AdminId','');
- localStorage.setItem('AdminName','');
- localStorage.setItem('ManageType','');
- localStorage.setItem('RoleIdentity','')
- that.$router.push("/login");
- })
- .catch(() => {});
- },
- collapseHandle: function () {
- //折叠导航栏
- this.isCollapse = !this.isCollapse;
- // 派发折叠导航栏事件
- EventBus.$emit('collapseHandle',this.isCollapse)
- },
- handleScroll() {
- //页面滚动监听
- let mainDiv = document.getElementById("displayMain");
- var scrollTop = mainDiv.scrollTop;
- if (scrollTop > 80) {
- this.breadcrumbFixed = true;
- } else {
- this.breadcrumbFixed = false;
- }
- },
- handleClickBread(item){
- if(item.meta.pathFrom=='dayorweek'){
- this.$router.go(-1)
- }else{
- this.$router.push({path:'/'+item.meta.pathFrom})
- }
- },
- },
- };
- </script>
- <style lang="scss">
- .notice_item:hover {
- color: #409EFF;
- }
- .notice_poper {
- max-height: 500px;
- overflow-y: auto;
- .notice-nav-box{
- display: flex;
- padding-top: 12px;
- padding-left: 5px;
- .notice-nav-item{
- cursor: pointer;
- line-height: 2;
- margin-right: 30px;
- position: relative;
- }
- }
- .notice-nav-active{
- color: #409EFF;
- border-bottom: 2px solid #409EFF;
- }
- }
- #containercon {
- min-width: 1000px;
- width: 100%;
- position: absolute;
- top: 0px;
- bottom: 0px;
- overflow :hidden;
- display: flex;
- .asider-cont {
- &::-webkit-scrollbar{
- width: 0 !important;
- }
- }
- // reset
- .el-breadcrumb {
- font-size: 16px;
- }
- #main_left {
- // width: 200px;
- height: 100%;
- background: #323a58 !important;
- color: #000;
- border-bottom: 1px solid #eaeaea;
- position: fixed;
- left: 0;
- top: 0;
- z-index: 99;
- .logo_cont {
- box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
- // padding: 10px 0;
- .logo {
- width: 200px;
- height: 66px;
- display: block;
- overflow: hidden;
- // margin: 0 auto;
- // margin-left: 18px;
- }
- .logo_coll {
- width: 35px;
- height: 35px;
- display: block;
- overflow: hidden;
- margin-left: 14px;
- margin-top: 10px;
- margin-bottom: 10px;
- }
- }
- aside {
- text-align: center;
- z-index: 10;
- margin-left: -1px;
- .el-menu {
- width: 200px;
- height: 100%;
- box-sizing: border-box;
- background: #323a58 !important;
- }
- .el-menu--collapse {
- width: 70px;
- height: 100%;
- box-sizing: border-box;
- background: #323a58 !important;
- }
- .collapsed {
- width: 59px;
- background: #344058;
- .item {
- position: relative;
- }
- }
- .menuitem {
- height: 55px;
- padding-left: 28px;
- box-sizing: border-box;
- cursor: pointer;
- color: #1f2e4d;
- font-size: 15px;
- display: flex;
- align-items: center;
- overflow: hidden;
- img {
- width: 20px;
- margin-right: 6px;
- }
- }
- // .menuitem.active {
- // background: rgba($color: #FDB863, $alpha: 0.2);
- // color: #FDB863;
- // }
- .el-submenu .el-menu-item {
- font-size: 15px;
- padding: 0 0 0 62px !important;
- text-align: left;
- }
- .el-menu-item.is-active {
- background: rgba($color: #FDB863, $alpha: 0.1) !important;
- color: #FDB863 !important;
- }
- .el-submenu__title {
- //padding-left: 0 !important;
- display: flex;
- align-items: center;
- }
- .el-level-path{
- position:relative;
- height:56px;
- display: flex;
- align-items: center;
- .titleLetter{
- font: 12px "\5FAE\8F6F\96C5\9ED1";
- letter-spacing: 1px;
- left: 0;
- }
- }
- .titleLetter{
- position:absolute;
- bottom: -2px;
- width:auto;
- height:auto;
- visibility: visible;
- font-size: 12px;
- }
- .el-menu--collapse .el-submenu__title {
- padding-left: 20px !important;
- }
- }
- .subItem {
- overflow: hidden;
- .sub-item {
- height: 55px;
- padding-left: 52px;
- box-sizing: border-box;
- cursor: pointer;
- color: #1f2e4d;
- font-size: 15px;
- display: flex;
- align-items: center;
- overflow: hidden;
- &.sub_act {
- background: #dbe4fc;
- }
- }
- }
- .menu-expanded > .el-menu-vertical-demo {
- // width: 200px;
- // min-height: calc(100vh - 80px);
- color: #fff;
- padding-bottom: 20px;
- overflow: hidden;
- overflow-y: auto;
- border-right: none;
- // .el-submenu > .el-menu > .el-menu-item:hover {/* background-color: #5882EF !important;color: #fff !important; */}
- .el-submenu > .el-menu > .active {
- background: rgba($color: #FDB863, $alpha: 0.2) !important;
- color: #FDB863 !important;
- }
- }
- .el-submenu__title > i:nth-of-type(1) {
- color: #fff !important;
- }
- }
- .left_section_logo {
- width: 148px;
- height: 38px;
- }
- #main_right {
- width: 100%;
- overflow: hidden;
- background: #F5F7F9;
- .main_right_top {
- // width: 100%;
- background: #fff;
- height: 60px;
- box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
- box-sizing: border-box;
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding: 0 30px;
- .main_left_container{
- display: flex;
- align-items: center;
- .main_left_section {
- display: flex;
- flex-shrink: 0;
- align-items: center;
- }
- .approval_notice{
- display: flex;
- align-items: center;
- margin-left: 45px;
- img{
- margin-right: 10px;
- }
- div{
- font-size: 16px;
- font-family: PingFang SC-Regular, PingFang SC;
- font-weight: 400;
- color: #EE9A34;
- line-height: 19px;
- -webkit-background-clip: text;
- }
- }
- }
- .coll_btn {
- margin-right: 20px;
- .coll_ico {
- font-size:22px;
- display: block;
- cursor: pointer;
- color: #606266;
- &:hover {
- color: #4099ef;
- }
- }
- }
- .breadcrumb-container {
- padding: 12px 20px;
- box-sizing: border-box;
- line-height: 18px;
- margin-bottom: 0px;
- .title {
- width: 150px;
- color: #475669;
- float: left;
- }
- .breadcrumb-inner {
- font: 14px/19px "微软雅黑";
- }
- }
- .breadFixed {
- display: block !important;
- background: rgb(255, 255, 255);
- border-bottom: 1px solid #eaeaea;
- padding: 13px 245px 12px 20px;
- box-sizing: border-box;
- position: fixed;
- top: 60px;
- left: 150px;
- right: 0;
- z-index: 10;
- overflow: hidden;
- }
- .breadCollapsedFixed {
- display: block !important;
- background: rgb(255, 255, 255);
- border-bottom: 1px solid #eaeaea;
- padding: 15px 105px 15px 25px;
- box-sizing: border-box;
- position: fixed;
- top: 60px;
- left: 60px;
- right: 0;
- z-index: 10;
- }
- .userinfo {
- min-width: 210px;
- width: 220px;
- height: 60px;
- text-align: right;
- overflow: hidden;
- position: relative;
- margin-left: 15px;
- margin-right: 4%;
- display:flex;
- justify-content: space-between;
- align-items: center;
- .theme-picker {
- position: absolute;
- top: 14px;
- left: 0px;
- }
- .userinfo-fingerpost {
- margin-left: 20px;
- }
- .item {
- padding: 4px;
- position: absolute;
- top: 14px;
- left: 110px;
- border: 1px solid #ccc;
- border-radius: 4px;
- }
- .item:hover {
- color: #5882ef;
- }
- .userinfo-inner {
- cursor: pointer;
- color: #666 !important;
- overflow: hidden;
- line-height: 60px;
- font-size: 16px;
- img {
- width: 40px;
- height: 40px;
- border-radius: 20px;
- margin: 10px;
- float: left;
- }
- }
- .userinfo-inner:hover {
- color: #5882ef;
- }
- }
- }
- .right_section {
- display: flex;
- align-items: center;
- .jump-other-sys-item{
- height: 32px;
- padding: 0 10px;
- border-radius: 4px;
- cursor: pointer;
- margin-right: 30px;
- flex-shrink: 0;
- display: flex;
- align-items: center;
- &:hover{
- background-color: #EAF3FE;
- }
- .icon{
- height: 20px;
- margin-right: 3px;
- }
- span{
- line-height: 19px;
- }
- }
- .icon-box-item{
- height: 32px;
- padding: 0 10px;
- border-radius: 4px;
- cursor: pointer;
- margin-right: 30px;
- flex-shrink: 0;
- display: flex;
- align-items: center;
- color: #333;
- position: relative;
- &:hover{
- background-color: #EAF3FE;
- color: #409EFF;
- }
- svg{
- width: 20px;
- height: 20px;
- }
- img{
- width: 20px;
- height: 20px;
- }
- }
- }
- .safariStyle {
- border-right: none;
- margin-left: -1px;
- }
- .content-container {
- height: calc(100vh - 90px);
- background: #F5F7F9;
- // position: relative;
- overflow-y: auto;
- position: absolute;
- padding-top: 22px;
- left: 200px;
- top: 68px;
- right: 0;
- z-index: 100;
- /*修改滚动条样式*/
- &::-webkit-scrollbar{
- width:10px;
- height:10px;
- }
- &::-webkit-scrollbar-track{
- background: rgb(239, 239, 239);
- border-radius:2px;
- }
- &::-webkit-scrollbar-thumb{
- background: #ccc;
- border-radius:10px;
- }
- &::-webkit-scrollbar-thumb:hover{
- background: #888;
- }
- &::-webkit-scrollbar-corner{
- background: #666;
- }
- /**/
- .contentc {
- width: 100%;
- overflow: auto;
- .content-wrapper {
- width: 100%;
- padding: 0 30px 20px;
- box-sizing: border-box;
- overflow: auto;
- background: #F5F7F9;
- }
- .note_entrance {
- display: inline-block;
- position: absolute;
- right: 20px;
- top: 50%;
- height: 100%;
- transform: translateY(-50%);
- > img {
- width: 20px;
- margin-right: 5px;
- vertical-align: middle;
- }
- }
- }
- }
- }
- }
- </style>
|