Commit f5feaa32 by liguokang

feat:

parent 07dac285
/*
* @Author: liguokang
* @Date: 2021-07-14 20:36:28
* @LastEditors: liguokang
* @LastEditTime: 2021-07-15 10:25:29
* @Description:
* @Copyrigh: ©2021 杭州杰竞科技有限公司 版权所有
*/
import { Carousel } from 'antd';
import './CarouselArea.less';
export default function CarouselArea() {
return (
<div className='carousel-area'>
<Carousel autoplay>
<div className='tem'>
<img src='' />
</div>
</Carousel>
</div>
);
}
\ No newline at end of file
/*
* @Author: liguokang
* @Date: 2021-07-14 20:36:28
* @LastEditors: liguokang
* @LastEditTime: 2021-07-15 10:25:37
* @Description:
* @Copyrigh: ©2021 杭州杰竞科技有限公司 版权所有
*/
import Link from 'next/link';
import { useEffect } from 'react';
import lottie from 'lottie-web';
import './Footer.less';
interface FooterProps {
isTrial?: boolean;
}
export default function Footer(props: FooterProps) {
useEffect(() => {
if (props.isTrial) {
generateAnimation();
}
}, []);
// 生成动画
function generateAnimation() {
lottie.loadAnimation({
container: document.getElementById('big-img-svg'),
path: 'https://image.xiaomaiketang.com/xm/JPpibc4xdD.json',
renderer: 'svg',
loop: true,
autoplay: true,
name: 'Hello World',
});
}
return (
<footer>
{props.isTrial && (
<div className="content-module content-module-8">
<div className="module-model">
<div className="center">
<div className="big-img" id="big-img-4">
<div className="big-img-svg" id="big-img-svg">
<div className="wrap">
<div className="text">体验教育信息化新模式</div>
<div className="module-img">
<span className="btn-wrap">
<div
className="btn-click free-trial"
id="btn-free-try"
onClick={() => {
// window.WEBTRACING('WebG_foot_clickEvent_clickFreeUse', 'WebG_页面底部_点击事件_点击免费试用', { page: this.props.page })
this.renderModal(true);
}}
>
免费试用
</div>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
)}
<div className="center">
<div className="footer-middle">
<ul>
<li className="item">
<p>产品</p>
<div className="fl">
<Link href="/xmErp">
<span>小麦助教</span>
</Link>
<Link href="/cloud-class">
<span>云课堂</span>
</Link>
<Link href="/xm-school-info">
<span>小麦校讯通</span>
</Link>
<Link href="/micro-brand-web">
<span>微官网</span>
</Link>
</div>
<div className="fr" style={{ marginLeft: '30px' }}>
<Link href="/xm-show">
<span>小麦秀</span>
</Link>
<Link href="/mm-checkIn">
<span>麦麦打卡</span>
</Link>
<Link href="/mm-poster">
<span>麦萌海报</span>
</Link>
<Link href="/mm-chain">
<span>小麦连锁版</span>
</Link>
</div>
</li>
<li className="item">
<p>招商加盟</p>
<Link href="/wheat-system">
<span>小麦助教系统</span>
</Link>
</li>
<li className="item">
<p>关于我们</p>
<Link href="/company-profile">
<span>公司简介</span>
</Link>
<Link href="/honorary-certificate">
<span>荣誉资质</span>
</Link>
<Link href="/new-dynamic">
<span>新闻动态</span>
</Link>
<Link href="/join-us">
<span>加入我们</span>
</Link>
<a href="https://image.xiaomaiketang.com/xm/XGSwRGwacP.pdf" target="_blank" rel="noopener noreferrer">
<span>隐私声明</span>
</a>
</li>
<li className="item">
<p>联系我们</p>
<span>咨询电话:400-6677-456</span>
<span>联系地址 : 杭州市西湖区古墩路598号同人广场A座3楼</span>
</li>
<li className="item">
<div className="img">
<div className="img1"></div>
</div>
<span>小麦助教公众号</span>
</li>
<li className="item">
<div className="img">
<div className="img2"></div>
</div>
<span>下载小麦助教</span>
</li>
</ul>
</div>
<div className="footer-bottom">
<p>
©2015-2021&nbsp;&nbsp;杭州杰竞科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;
<a target="_blank" rel="noopener noreferrer" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=33010602006090">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<img
src="https://image.xiaomaiketang.com/xm/6mH2HnzP3k.png"
alt=""
style={{
width: '16px',
height: '16px',
display: 'inline-block',
margin: '0 4px 0 0',
verticalAlign: '-3px',
}}
/>
浙公网安备33010602006090号
</a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a style={{ marginLeft: '20px' }} target="_blank" rel="noopener noreferrer" href="https://beian.miit.gov.cn/#/Integrated/index">
浙ICP备15025826号-2
</a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a style={{ marginLeft: '20px' }} target="_blank" rel="noopener noreferrer" href="https://image.xiaomaiketang.com/xm/ffXeG5fXn8.jpg">
增值电信业务经营许可证:浙B2-20180802
</a>
</p>
<p>
<span style={{ marginLeft: '20px' }}>教APP备3300311号</span>
&nbsp;&nbsp;&nbsp;&nbsp;
<span style={{ marginLeft: '20px' }}>教APP备3300313号</span>
&nbsp;&nbsp;&nbsp;&nbsp;
<span style={{ marginLeft: '20px' }}>教APP备3300315号</span>
</p>
</div>
</div>
</footer>
);
}
/*
* @Description:
* @Author: zangsuyun
* @Date: 2020-07-22 14:52:25
* @LastEditors: liguokang
* @LastEditTime: 2021-07-14 21:27:23
* @Copyright: © 2020 杭州杰竞科技有限公司 版权所有
*/
import React, { Component } from "react";
import Link from 'next/link';
import "./Header.less";
// import FreeTrial from "@/components/FreeTrial";
class Header extends Component {
constructor(props) {
super(props);
this.state = {
active: "home",
isShow: false,
};
}
//在componentDidMount生命周期中添加window的handleScroll滑动监听事件
componentDidMount() {
window.addEventListener("scroll", this.handleScroll);
this.setState({
active: this.props.active,
});
document.body.scrollTop = document.documentElement.scrollTop = 0;
}
//定义handleScroll事件函数
handleScroll = (e) => {
var header = document.getElementById("header"); //定义一个dom节点为'header'的header变量
if (window.pageYOffset >= 20) {
//if语句判断window页面Y方向的位移是否大于或者等于导航栏的height像素值
header && header.classList.add("header_bg"); //当Y方向位移大于80px时,定义的变量增加一个新的样式'header_bg'
}
else if(window.location.href.indexOf("mmChain") >= 0){
header && header.classList.add("header_bg");
}
else if(window.location.href.indexOf("home") >= 0){
header && header.classList.add("header_bg");
}
else {
header && header.classList.remove("header_bg"); //否则就移除'header_bg'样式
}
};
renderModal = (flag) => {
this.setState({
isShow: flag,
});
};
render() {
const active = this.state.active;
return (
<div className='header' id="header">
<div className="top">
<div className="center clearfix">
<div className="header-left fl">
<div className="logo fl" id="xmtd-logo">
<h1 className="site-name">小麦助教</h1>
<a href="index.html">
<div className="img"></div>
</a>
</div>
</div>
<div className="header-right fr">
<div className="nav fl">
<ul className="nav-bar-title">
<li
className={
active === "home" ? "nav-bar-li on" : "nav-bar-li"
}
>
<Link href="/home">首页</Link>
</li>
<li
className={
active === "product" ? "nav-bar-li on" : "nav-bar-li"
}
id="show-choice"
>
<a>产品</a>
<span className="icon iconfont">&#xe614;</span>
<div id="module-choice" className="module-choice bgc-white">
<div className="triangle-up"></div>
<div
className="module-father"
style={{ position: "position", top: "-9px" }}
>
<ul
className="module-choice-hover bgc-white"
style={{ top: "8px", left: -150 }}
>
<li>
<div
className="fl"
style={{ width: "180px"}}
>
{/* <Link href="/xmErp">
<div className="fl icon xmzj"></div>
<div className="fl text">
<p className="title">小麦助教</p>
<p className="detail">校务管理</p>
</div>
</Link>
<Link href="/cloudClass" style={{margin:'10px 0'}}>
<div className="fl icon ykt"></div>
<div className="fl text">
<p className="title">云课堂</p>
<p className="detail">在线教学</p>
</div>
</Link>
<Link href="/xmSchoolInfo">
<div className="fl icon xmxxt"></div>
<div className="fl text">
<p className="title">小麦校讯通</p>
<p className="detail">家校服务</p>
</div>
</Link>
<Link href="/microBrandWeb" style={{margin:'10px 0'}}>
<div className="fl icon wgw"></div>
<div className="fl text">
<p className="title">微官网</p>
<p className="detail">品牌传播</p>
</div>
</Link>
</div>
<div className="fr">
<Link href="/xmShow">
<div className="fl icon xmx"></div>
<div className="fl text">
<p className="title">小麦秀</p>
<p className="detail">招生营销</p>
</div>
</Link>
<Link href="/mmCheckIn" style={{margin:'10px 0'}}>
<div className="fl icon mmdk"></div>
<div className="fl text">
<p className="title">麦麦打卡</p>
<p className="detail">课后督学</p>
</div>
</Link>
<Link href="/mmPoster">
<div className="fl icon poster"></div>
<div className="fl text">
<p className="title">麦萌海报</p>
<p className="detail">品牌设计</p>
</div>
</Link>
<Link href="/mmChain" style={{margin:'10px 0'}}>
<div className="fl icon icon-chain"></div>
<div className="fl text">
<p className="title">小麦连锁版</p>
<p className="detail">多校区管理</p>
</div>
</Link> */}
</div>
</li>
</ul>
</div>
</div>
</li>
<li
className={
active === "customerCase" ? "nav-bar-li on" : "nav-bar-li"
}
>
<Link href="/customercase">客户案例</Link>
</li>
<li
className={
active === "joinIn" ? "nav-bar-li on" : "nav-bar-li"
}
id="show-us"
>
<a>招商加盟</a>
<span className="icon iconfont">&#xe614;</span>
<div id="about-choice" className="module-choice bgc-white">
<div className="triangle-up"></div>
<div
className="module-father"
style={{
position: "relative",
top: "-9px",
width: 126,
}}
>
<ul
className="module-choice-hover bgc-white"
style={{ top: 18, width: 138, left: 10 }}
>
<li id="xmtd-sumary">
<Link href="/wheatsystem">小麦助教系统</Link>
</li>
</ul>
</div>
</div>
</li>
<li
className={
active === "wheatSchool" ? "nav-bar-li on" : "nav-bar-li"
}
>
<Link href="/wheatschool">小麦学院</Link>
</li>
<li
className={
active === "aboutUs" ? "nav-bar-li on" : "nav-bar-li"
}
id="show-us"
>
<a>关于我们</a>
<span className="icon iconfont">&#xe614;</span>
<div id="about-choice" className="module-choice bgc-white">
<div className="triangle-up"></div>
<div
className="module-father"
style={{
position: "relative",
top: "-9px",
width: 126,
}}
>
<ul
className="module-choice-hover bgc-white"
style={{ top: 18 }}
>
<li id="xmtd-sumary">
<Link href="/companyprofile">公司简介</Link>
</li>
<li id="xmtd-team-pic">
<Link href="/honoraryCertificate">荣誉资质</Link>
</li>
<li id="xmtd-join-us">
<Link href="/joinUs">加入我们</Link>
</li>
<li id="xmtd-news">
<Link href="/newsDynamic">新闻动态</Link>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<div className="login-box fl">
<span
className="free-trial btn fl"
id="free-try"
onClick={() => {
this.renderModal(true);
}}
>
免费试用
</span>
<a
href="https://b.xiaomai5.com"
target="_blank"
rel="noopener noreferrer"
>
<span className="login btn" id="xmtd-inst-login">
机构登录
</span>
</a>
</div>
</div>
</div>
</div>
{/* {this.state.isShow ? (
<FreeTrial handModalShow={this.renderModal}></FreeTrial>
) : (
""
)} */}
</div>
);
}
}
export default Header;
/*
* @Author: liguokang
* @Date: 2021-07-14 20:36:28
* @LastEditors: liguokang
* @LastEditTime: 2021-07-15 10:25:45
* @Description:
* @Copyrigh: ©2021 杭州杰竞科技有限公司 版权所有
*/
import './SiderBar.less';
export default function SiderBar() {
return (
<div className="sider-bar">
<div className="sider-tell">
<img src="https://image.xiaomaiketang.com/xm/kyiit34CzK.png" style={{ marginTop: 17 }} alt="" />
<p>咨询热线</p>
<div className="content">
<div className="consult-img fl"></div>
<div className="title fl">
了解产品和优惠
<br />
免费拨打
</div>
<div className="detail fl">400-6677-456</div>
</div>
</div>
<div
className="sider-apply"
onClick={() => {
this.renderModal(true);
}}
>
<div className="bg" style={{ marginTop: 17 }}></div>
<p>申请试用</p>
</div>
<div className="sider-focus">
<div className="bg"></div>
<p>扫码关注</p>
<div className="content">
<div className="consult-img fl"></div>
<div className="title fl">小麦助教公众号</div>
</div>
</div>
{/* {this.state.isShow ? (
<FreeTrial handModalShow={this.renderModal}></FreeTrial>
) : (
""
)} */}
</div>
);
}
/*
* @Description:
* @Date: 2020-03-18 18:19:52
* @LastEditTime: 2020-12-30 20:48:12
* @LastEditors: JamosLi
*/
import React from 'react';
import style from './laFooter.less';
import Link from 'next/link';
import LazyLoad from 'react-lazyload';
import { StaticImg } from '@/api/interfaces';
import Button from 'baseTemplate/lib/button';
const Img = StaticImg + '/Footer';
import { open } from '@/lib/methods';
class LaFooter extends React.Component {
render() {
return (
<footer className={style.laFooter}>
<div className={style.laFooterList2}>
<div className={style.List2Content}>
<div className={style.FooterBox1}>
<div>
<h2>关于中禄</h2>
<p>
<Link href={'/aboutUs'}>
<a>关于我们</a>
</Link>
</p>
<p>
<Link href={'/contactUs'}>
<a>联系我们</a>
</Link>
</p>
</div>
<div>
<h2>新手指南</h2>
<p onClick={open}>
<a>在线咨询</a>
</p>
<p onClick={open}>
<a>财税资讯</a>
</p>
<p>
<Link href={'/login/cusRegister'}>
<a>新手注册</a>
</Link>
</p>
</div>
<div>
<h2>服务推荐</h2>
<p>
<Link href={'/companyRegistration'}>
<a>公司注册</a>
</Link>
</p>
<p>
<Link href={'/agentAccount'}>
<a>代理记账</a>
</Link>
</p>
<p>
<Link href={'/qualification'}>
<a>资质办理</a>
</Link>
</p>
<p>
<Link href={'/BusinessService'}>
<a>商标知产</a>
</Link>
</p>
</div>
</div>
<div className={style.FooterBox2}>
<div className={style.Box2Line}>
<h3>服务热线</h3>
<LazyLoad height={72}>
<p style={{ backgroundImage: `url('${Img}/dianhua.svg')` }}>{this.props.phone || 400 - 690 - 8028}</p>
</LazyLoad>
<Button mode={'red'} className={style.inlineChat}>
<a onClick={open}>在线咨询</a>
</Button>
</div>
</div>
<div className={style.FooterBox3}>
<LazyLoad height={152}>
<div className={style.weChat} style={{ backgroundImage: `url('${Img}/wechat-min.jpg')` }} />
<span />
</LazyLoad>
<p>扫一扫,创业一手掌握</p>
</div>
</div>
</div>
<div className={style.laFooterList3}>
<a target="_blank" href="https://beian.miit.gov.cn">
<span>Copyright ©2017 浙江中禄财务咨询有限公司版权所有 ICP16004996-1</span>
</a>
</div>
</footer>
);
}
}
export default LaFooter;
.laFooter {
height: 258px;
width: 100%;
.laFooterList2 {
height: 216px;
background-color: #242633;
display: flex;
align-items: center;
justify-content: center;
.List2Content {
display: flex;
width: 1200px;
height: 226px;
.FooterBox1 {
display: flex;
width: 545px;
height: 216px;
div {
display: flex;
flex-direction: column;
width: 188px;
height: 160px;
margin-top: 30px;
h2 {
font-size: 18px;
font-weight: normal;
color: #ffffff;
margin-bottom: 5px;
}
p a {
font-size: 14px;
color: #878d99;
&:hover {
color: #f05750;
}
}
p {
cursor: pointer;
margin-bottom: 0;
line-height: 28px;
}
}
div:last-child {
border-right: 1px solid #3c4b57;
}
}
.FooterBox2 {
width: 450px;
.Box2Line {
display: flex;
flex-direction: column;
width: 100%;
height: 160px;
margin-top: 30px;
padding-left: 108px;
border-right: 1px solid #3c4b57;
h3 {
font-size: 18px;
color: #878d99;
margin-bottom: 20px;
line-height: 1em;
}
p {
font-size: 30px;
height: 36px;
font-style: italic;
font-weight: bold;
color: #fff;
line-height: 36px;
padding-left: 36px;
margin-bottom: 36px;
background: no-repeat center left/24px 24px;
}
.inlineChat {
width: 192px;
height: 36px;
text-align: center;
line-height: 36px;
background-color: #e63e36;
cursor: pointer;
a {
font-size: 14px;
color: #ffffff;
}
}
}
}
.FooterBox3 {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin-left: 50px;
width: 140px;
.weChat {
width: 140px;
height: 140px;
background: #fff no-repeat center center/120px 120px;
border-radius: 10px;
}
span {
display: block;
width: 0;
height: 0;
border-width: 6px;
border-style: solid;
border-color: #ffffff transparent transparent transparent;
}
p {
font-size: 12px;
color: #ffffff;
text-align: center;
}
}
}
}
.laFooterList3 {
height: 42px;
width: 100%;
background-color: #2e303c;
text-align: center;
span {
width: 1200px;
height: 100%;
font-size: 12px;
color: #878d99;
line-height: 42px;
}
}
}
// 框架依赖
import React from 'react';
import cookies from 'react-cookies';
import style from './laHeader.less';
import Link from 'next/link';
import { withRouter } from 'next/router';
import { logout } from '@/api/user';
import { setToPath, comingSoon } from '@/lib';
import { open } from '@/lib/methods';
import Icon from 'baseTemplate/lib/icon';
import { StaticImg } from '@/api/interfaces';
import store from '../../../redux/store';
import { connect } from 'react-redux';
import { getCity } from 'static/js/util';
const nav = [
{ val: '首页', link: '/' },
{ val: '工商注册', link: '/companyRegistration' },
{ val: '代理记账', link: '/agentAccount' },
{ val: '商标知产', link: '/BusinessService' },
{ val: '高新资质', link: '/qualification' },
{ val: '社保人事', link: '/socialSecurity' },
{ val: '项目申报', link: '/projectApplication' },
{ val: '财税资讯' },
];
class LaHeader extends React.Component {
constructor(props) {
super(props);
this.state = {
currentCity: '杭州',
// 城市选择盒子状态
cityBox: false,
userName: '',
anm: 0,
citylist: [],
phone: '',
};
}
// 退出登录逻辑
onLogout() {
let path = window.location.href;
logout(path);
this.setState({
userName: '',
});
}
setAnm = (val) => {
this.setState({
anm: val,
});
};
componentDidMount() {
const cookieName = cookies.load('username');
if (cookieName) {
this.setState({ userName: cookieName });
}
getCity(this.props.cityMap, window.location.href).then((res) => {
this.setState({ cityConfig: res });
this.setState({ cityname: res.data.config.city });
});
}
getMenuItems() {
const cityList = this.state.cityConfig ? this.state.cityConfig.citylist : [];
if (this.state.citylist) {
return cityList.map((city) => {
return (
<div
className={style.city}
onClick={() => {
// 切换城市
if (city.hostname.length > 1) {
window.location.href = '';
if (window.location.search.length > 0) {
window.location.href = city.hostname[0] + window.location.pathname + window.location.search;
} else {
window.location.href = city.hostname[0] + window.location.pathname;
}
} else {
// this.props.changeCity(city.config.city);
alert('此城市暂未开通服务,如需帮助请咨询客服!');
this.setState({ cityname: city.config.city });
this.setState({ cityBox: false });
}
}}
key={city.config.city}
>
{city.config.city}
</div>
);
});
}
}
render() {
let { config } = this.state.cityConfig ? this.state.cityConfig.data : { config: this.props.cityMap[0].config };
return (
<div>
<header className={style.laHeader}>
{/*顶部灰色栏*/}
<div className={style.laTop} style={{ display: this.props.noTop ? 'none' : 'block' }}>
<div className={style.topContent}>
{/*地区选择器*/}
<div
className={style.CityList}
onMouseEnter={() => {
this.setState({ cityBox: true });
}}
onMouseLeave={() => {
this.setState({ cityBox: false });
}}
style={{ backgroundColor: this.state.cityBox ? '#FFFFFF' : '' }}
>
<span className={style.currentCity} style={{ border: this.state.cityBox ? 'none' : '' }}>
{this.state.cityname ? this.state.cityname + '市' : ''}
</span>
<div className={style.cityBox} style={{ display: this.state.cityBox ? 'flex' : 'none' }}>
{this.getMenuItems()}
</div>
</div>
<span className={style.number}>全国服务热线:{config.phone ? config.phone : '400-'}</span>
{/*用户信息框*/}
<div className={style.user}>
{this.state.userName ? (
<div className={style.userDiv}>
{' '}
<Link href="/personalCenter/basicInfo">
<a>
<Icon name={'yongHu'} width={14} height={14} />
<span>欢迎你,{this.state.userName}</span>
</a>
</Link>
<div className={style.userBox}>
<ul>
<Link href={'/personalCenter/myOrder'}>
<a>
<li>
<svg xmlns="http://www.w3.org/2000/svg" width="11.403" height="13" viewBox="0 0 11.403 13">
<g id="dingdan-2" transform="translate(-1.58 -0.768)">
<path
id="路径_1608"
data-name="路径 1608"
d="M9.17,13.767l-7.589-.04L1.621.768l11.362.04V9.917a3.842,3.842,0,0,1-3.813,3.85Zm-6.782-.805H9.169a3.026,3.026,0,0,0,3.008-3.009l.04-8.378-9.83-.04V12.961Z"
fill="#aebac4"
/>
<path
id="路径_1609"
data-name="路径 1609"
d="M9.677,4.151Zm0,0H4.233a.383.383,0,0,1-.4-.4.384.384,0,0,1,.4-.4H9.677a.384.384,0,0,1,.4.4.384.384,0,0,1-.4.4ZM9.5,7.054H4.306a.4.4,0,0,1,0-.807H9.5a.384.384,0,0,1,.4.4.4.4,0,0,1-.4.4ZM7.9,9.594H4.306a.4.4,0,1,1,0-.806H7.9a.384.384,0,0,1,.4.4.4.4,0,0,1-.4.4Z"
fill="#aebac4"
/>
</g>
</svg>
<span>我的订单</span>
</li>
</a>
</Link>
<li onClick={this.onLogout.bind(this)}>
<svg xmlns="http://www.w3.org/2000/svg" width="10.859" height="13" viewBox="0 0 10.859 13">
<g id="tuichu" transform="translate(-1.529 -0.765)">
<path id="路径_1610" data-name="路径 1610" d="M1.529.765h.765V13H1.529Z" fill="#aebac4" />
<path id="路径_1611" data-name="路径 1611" d="M1.529.765h.765V13H1.529Zm8.412,0h.765V3.059H9.941Z" fill="#aebac4" />
<path id="路径_1612" data-name="路径 1612" d="M9.941.765h.765V3.059H9.941Zm0,10.706h.765v2.294H9.941Z" fill="#aebac4" />
<path
id="路径_1613"
data-name="路径 1613"
d="M9.941,11.471h.765v2.294H9.941ZM1.529.765H9.941v.765H1.529Z"
fill="#aebac4"
/>
<path id="路径_1614" data-name="路径 1614" d="M1.529.765H9.941v.765H1.529ZM1.529,13H9.941v.765H1.529Z" fill="#aebac4" />
<path
id="路径_1615"
data-name="路径 1615"
d="M1.529,13H9.941v.765H1.529ZM3.824,6.882h7.647v.765H3.824Z"
fill="#aebac4"
/>
<path id="路径_1616" data-name="路径 1616" d="M3.824,6.882h7.647v.765H3.824Z" fill="#aebac4" />
<path
id="路径_1617"
data-name="路径 1617"
d="M12.159,7.571l.229-.306L9.712,4.588l-.535.535,2.141,2.141L9.176,9.482l.535.535Z"
fill="#aebac4"
/>
</g>
</svg>
<span>退出登录</span>
</li>
</ul>
</div>
</div>
) : (
<div
className={style.userDiv}
onClick={() => {
setToPath(this.props.router.asPath);
}}
>
<a href={`/login/cusLogin`}>
<span>登录</span>
</a>
<span>/</span>
<a href={`/login/cusRegister`}>
<span>免费注册</span>
</a>
</div>
)}
</div>
</div>
</div>
{/*导航栏部分*/}
<nav className={style.laNav}>
<div className={style.laNavBody}>
<div>
<Link href="/">
<a style={{ marginRight: 20 }}>
<img src={StaticImg + '/logo.png'} width={121} alt="" />
</a>
</Link>
<div className={style.allService} style={{ cursor: 'pointer', minWidth: 102 }}>
<a onClick={open}>所有服务</a>
</div>
</div>
<div>
<ul>
{nav.map((item, index) => (
<li key={item.val} onClick={!!item.link ? null : comingSoon} style={{ cursor: 'pointer' }}>
{item.link ? (
<Link href={item.link}>
<a
target={item.val !== '首页' ? '_blank' : ''}
className={this.state.anm === index + 1 ? 'an' : ''}
onMouseLeave={this.setAnm.bind(this, 0)}
onMouseEnter={this.setAnm.bind(this, index + 1)}
>
{item.val}
</a>
</Link>
) : (
<a
className={this.state.anm === index + 1 ? 'an' : ''}
onMouseLeave={this.setAnm.bind(this, 0)}
onMouseEnter={this.setAnm.bind(this, index + 1)}
>
{item.val}
</a>
)}
</li>
))}
{/*<li ><Link href='/'><a className={this.state.anm===1?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,1)}>首页</a></Link></li>*/}
{/*<li ><Link href={'/companyRegistration'}><a className={this.state.anm===2?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,2)}>工商注册</a></Link></li>*/}
{/*<li ><Link href={'/agentAccount'}><a className={this.state.anm===3?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,3)}>代理记账</a ></Link></li>*/}
{/*<li ><Link href={'/about/BusinessService'}><a className={this.state.anm===4?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,4)}>商标知产</a></Link></li>*/}
{/*<li ><Link href='/qualification'><a className={this.state.anm===5?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,5)}>高新资质</a></Link></li>*/}
{/*<li onClick={comingSoon} style={{cursor:"pointer"}}><a className={this.state.anm===6?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,6)}>社保人事</a></li>*/}
{/*<li ><Link href={'/projectApplication'}><a className={this.state.anm===7?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,7)}>项目申报</a></Link></li>*/}
{/*<li onClick={comingSoon} style={{cursor:"pointer"}} ><a className={this.state.anm===8?'an':''} onMouseLeave={this.setAnm.bind(this,0)} onMouseEnter={this.setAnm.bind(this,8)}>财税资讯</a></li>*/}
</ul>
</div>
</div>
</nav>
<style jsx>
{`
@keyframes myfirst {
0% {
top: 0px;
}
50% {
top: -10px;
}
100% {
top: 0px;
}
}
.an {
animation: myfirst 0.4s;
}
`}
</style>
</header>
</div>
);
}
}
// export default withRouter(LaHeader);
const mapStateToProps = ({ city, cityMap }) => ({ city, cityMap });
export default connect(mapStateToProps)(LaHeader);
.laHeader {
width: 100%;
a {
text-decoration: none;
}
//顶部灰色盒子
.laTop {
height: 36px;
background-color: #ebeef4;
.topContent {
width: 1200px;
height: 36px;
margin: 0 auto;
display: flex;
align-items: center;
position: relative;
.CityList {
display: flex;
justify-content: center;
flex-direction: column;
position: absolute;
height: 36px;
width: 90px;
padding-left: 17px;
top: 0;
left: -17px;
.cityBox {
position: absolute;
display: flex;
flex-wrap: wrap;
background-color: #ffffff;
top: 36px;
left: -1px;
width: 270px;
text-align: center;
padding: 3px 18px 10px;
border: 1px solid #ebeef4;
border-top: none;
color: #878d99;
.city {
width: 58px;
height: 35px;
line-height: 35px;
font-size: 13px;
cursor: pointer;
}
.city:hover {
color: red !important;
}
}
.currentCity {
background: url('//statics.360jizhang.cn/staticFile/websiteFile/licenseAgent/dingwei.png') no-repeat center left;
display: inline-block;
height: 14px;
line-height: 14px;
width: 70px;
font-size: 13px;
padding-left: 18px;
border-right: 1px solid #bebebe;
cursor: pointer;
}
}
.number {
margin-left: 80px;
font-size: 12px;
color: #878d99;
}
span {
font-size: 12px;
color: #878d99;
}
.user {
display: flex;
align-items: center;
height: 100%;
position: absolute;
right: 0;
top: 0;
cursor: pointer;
.userDiv {
display: flex;
align-items: center;
span {
margin: 0 5px;
}
a {
display: flex;
align-items: center;
i {
margin-top: 4px;
}
}
a:hover {
span {
color: #e63e36;
}
svg {
path {
fill: #e63e36;
}
}
}
}
.userBox {
display: none;
position: absolute;
top: 36px;
right: 0px;
width: 109px;
height: 70px;
background: #fff;
border: 1px solid rgba(243, 243, 243, 1);
z-index: 999;
box-shadow: 0px 3px 12px rgba(98, 98, 98, 0.11);
ul {
width: 100%;
li {
display: flex;
align-items: center;
justify-content: center;
height: 35px;
width: 100%;
color: #333333;
font-size: 14px;
span {
font-size: 14px;
color: #333;
margin-left: 10px;
}
}
li:first-child {
border-bottom: 1px solid #f3f3f3;
}
li:hover {
svg {
path {
fill: #e63e36;
}
}
span {
color: #e63e36;
}
}
}
}
.userBox:after {
width: 0;
height: 0;
content: '';
position: absolute;
left: 45px;
top: -10px;
border-left: solid 10px transparent;
border-bottom: solid 10px white;
border-right: solid 10px transparent;
}
a {
font-size: 12px;
color: #878d99;
}
}
.user:hover {
.userBox {
display: block;
}
}
}
}
//导航栏部分
.laNav {
height: 80px;
width: 100%;
box-shadow: 0 1px 2px rgba(95, 95, 95, 0.1);
display: flex;
justify-content: center;
align-items: center;
background-color: #fff;
.laNavBody {
display: flex;
align-items: center;
justify-content: space-between;
width: 1200px;
height: 80px;
div:first-child {
display: flex;
align-items: center;
justify-content: center;
width: 240px;
min-width: 240px;
margin-right: 23px;
.laIcon {
width: 121px;
margin-right: 20px;
}
.allService {
display: flex;
align-items: center;
justify-content: center;
width: 102px;
height: 24px;
border: 1px solid #e63e36;
border-radius: 12px;
line-height: 24px;
a {
background: url('//statics.360jizhang.cn/staticFile/websiteFile/licenseAgent/xin.png') no-repeat 10px center;
background-size: 14px;
border-radius: 12px;
width: 100%;
padding-left: 28px;
height: 24px;
line-height: 24px;
display: inline-block;
font-size: 14px;
text-decoration: none;
color: #e63e36;
}
a:hover {
color: #fff;
background-image: url('//statics.360jizhang.cn/staticFile/websiteFile/licenseAgent/xin_bai.png');
background-color: #e63e36;
border: 1px solid #e63e36;
}
}
}
div:last-child {
height: 100%;
ul {
margin-bottom: 0;
list-style: none;
display: flex;
align-items: center;
justify-content: flex-end;
width: 920px;
height: 100%;
li {
margin-left: 53px;
a {
display: inline-block;
height: 50px;
line-height: 50px;
font-size: 16px;
font-weight: 400;
color: #1d2b36;
position: relative;
left: 0;
}
a:hover {
height: 70px;
line-height: 70px;
color: #e63e36;
}
}
}
}
}
}
}
import React from 'react';
import Head from 'next/head';
import { changeCity } from '../../redux/action';
// 组件
import XMHeader from './XMHeader/laHeader';
import XMFooter from './XMFooter/LaFooter';
import PropTypes from 'prop-types';
import { noXiaoHan } from '@/lib/methods';
import Sidebar from '../base/sidebar';
import { connect } from 'react-redux';
import { getCity } from 'static/js/util';
const Fragment = React.Fragment;
class Layout extends React.Component {
constructor(props) {
super(props);
this.state = {
phone: '',
};
}
static propTypes = {
title: PropTypes.string,
isHome: PropTypes.bool,
useAntd: PropTypes.bool,
noTop: PropTypes.bool,
noFooter: PropTypes.bool,
};
componentDidMount() {
if (window.location.pathname !== '/') {
// 关闭个人中心和商标页的小韩
noXiaoHan();
}
getCity(this.props.cityMap, window.location.href).then((res) => {
let cityConfig = res.data;
this.setState({ phone: cityConfig.config.phone });
this.setState({ hostname: cityConfig.hostname });
this.setState({ hmurl: cityConfig.config.hmurl });
this.setState({ cityname: cityConfig.config.city });
sessionStorage.setItem('pgtUrl', cityConfig.config.chatAnchor);
});
}
render() {
let mLink = '';
let hmurl = '';
const { title } = this.props;
let city = '';
if (this.state.cityname) {
city = this.state.cityname;
hmurl = this.state.hmurl;
mLink = this.state.hostname[1];
}
return (
<div style={{ minHeight: '100vh', position: 'relative' }}>
<Head>
<title>{title || `${city} `}</title>
<meta charSet="utf-8" />
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
<meta httpEquiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<meta name="renderer" content="webkit|ie-comp|ie-stand" />
{/*添加keywords*/}
{this.props.useImgHead && <meta name="referrer" content="no-referrer" />}
<meta name="keywords" content=" " />
<link type="image/x-icon" rel="shortcut icon" href="static/images/favicon.ico" />
<link rel="stylesheet" href="/static/styles/ready.css" />
{/* 部分老页面对antd.css这个文件有依赖,传递useAntd*/}
<meta name="format-detection" content="telephone=no,email=no" />
<meta httpEquiv="mobile-agent" content={'format=xhtml;url=' + mLink} />
<meta name="description" content="" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script async defer src=" " />
<meta httpEquiv="Expires" content="0" />
</Head>
<XMHeader city={this.state.cityname} changeCity={this.props.changeCity} noTop={this.props.noTop} />
{this.props.children}
{this.props.noFooter || (
<Fragment>
<div style={{ width: '100%', height: 258, backgroundColor: '#fff' }}></div>
<footer style={{ position: 'absolute', bottom: 0, width: '100%' }}>
<XMFooter phone={this.state.phone} />
</footer>
</Fragment>
)}
<Sidebar props={{ phone: this.state.phone }} phone={this.state.phone} />
</div>
);
}
}
export default connect(
({ city, cityMap }) => ({ city, cityMap }),
(dispatchEvent) => {
return {
changeCity: (city) => {
dispatchEvent(changeCity(city));
},
};
},
)(Layout);
......@@ -23,7 +23,7 @@
"**/*.ts",
"**/*.tsx",
"pages/index.jsx"
, "pages/company-profile.jsx", "pages/honorary-certificate.jsx", "pages/about.jsx", "pages/new-dynamic.jsx", "pages/wheat-system.jsx", "components/Footer.jsx", "components/SiderBar.jsx", "components/CarouselArea.jsx", "data-source/join-us/request-apisjts" ],
, "pages/company-profile.jsx", "pages/honorary-certificate.jsx", "pages/about.jsx", "pages/new-dynamic.jsx", "pages/wheat-system.jsx", "components/Footer.tsx", "components/SiderBar.jsx", "components/CarouselArea.jsx", "data-source/join-us/request-apisjts" ],
"exclude": [
"node_modules"
]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment