parent
f40728e51b
commit
cc9f8eea5d
@ -0,0 +1,238 @@
|
|||||||
|
import React,{ Component } from "react";
|
||||||
|
import { Row, Col,Card } from 'antd';
|
||||||
|
import {
|
||||||
|
G2,
|
||||||
|
Chart,
|
||||||
|
Geom,
|
||||||
|
Axis,
|
||||||
|
Tooltip,
|
||||||
|
Coord,
|
||||||
|
Label,
|
||||||
|
Legend,
|
||||||
|
View,
|
||||||
|
Guide,
|
||||||
|
Shape,
|
||||||
|
Facet,
|
||||||
|
Util
|
||||||
|
} from "bizcharts";
|
||||||
|
class Signinstatistics extends Component {
|
||||||
|
constructor(props) {
|
||||||
|
super(props)
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
const data = [
|
||||||
|
{
|
||||||
|
month: "Jan",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Jan",
|
||||||
|
city: "London",
|
||||||
|
temperature: 3.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Feb",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 6.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Feb",
|
||||||
|
city: "London",
|
||||||
|
temperature: 4.2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Mar",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 9.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Mar",
|
||||||
|
city: "London",
|
||||||
|
temperature: 5.7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Apr",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 14.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Apr",
|
||||||
|
city: "London",
|
||||||
|
temperature: 8.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "May",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 18.4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "May",
|
||||||
|
city: "London",
|
||||||
|
temperature: 11.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Jun",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 21.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Jun",
|
||||||
|
city: "London",
|
||||||
|
temperature: 15.2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Jul",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 25.2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Jul",
|
||||||
|
city: "London",
|
||||||
|
temperature: 17
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Aug",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 26.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Aug",
|
||||||
|
city: "London",
|
||||||
|
temperature: 16.6
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Sep",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 23.3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Sep",
|
||||||
|
city: "London",
|
||||||
|
temperature: 14.2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Oct",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 18.3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Oct",
|
||||||
|
city: "London",
|
||||||
|
temperature: 10.3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Nov",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 13.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Nov",
|
||||||
|
city: "London",
|
||||||
|
temperature: 6.6
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Dec",
|
||||||
|
city: "Tokyo",
|
||||||
|
temperature: 9.6
|
||||||
|
},
|
||||||
|
{
|
||||||
|
month: "Dec",
|
||||||
|
city: "London",
|
||||||
|
temperature: 4.8
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const cols = {
|
||||||
|
month: {
|
||||||
|
range: [0, 1]
|
||||||
|
}
|
||||||
|
};
|
||||||
|
return(
|
||||||
|
<React.Fragment>
|
||||||
|
|
||||||
|
<Row gutter={[{ xs: 8, sm: 16, md: 24, lg: 32 }, 20]}>
|
||||||
|
<Col className="gutter-row" span={6}>
|
||||||
|
<div className="gutter-box">
|
||||||
|
<div className={"gutterrowbox"}>
|
||||||
|
<Card style={{ width: 300 }}>
|
||||||
|
<p>Card content</p>
|
||||||
|
<p>Card content</p>
|
||||||
|
<p>Card content</p>
|
||||||
|
</Card>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Col>
|
||||||
|
|
||||||
|
<Col className="gutter-row" span={6}>
|
||||||
|
<div className="gutter-box">
|
||||||
|
<div className={"gutterrowbox"}>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Col>
|
||||||
|
|
||||||
|
<Col className="gutter-row" span={6}>
|
||||||
|
<div className="gutter-box">
|
||||||
|
<div className={"gutterrowbox"}>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Col>
|
||||||
|
|
||||||
|
<Col className="gutter-row" span={6}>
|
||||||
|
<div className="gutter-box">
|
||||||
|
<div className={"gutterrowbox"}>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Col>
|
||||||
|
</Row>
|
||||||
|
<div>
|
||||||
|
<Chart height={400} data={data} scale={cols} forceFit>
|
||||||
|
<Legend />
|
||||||
|
<Axis name="month" />
|
||||||
|
<Axis
|
||||||
|
name="temperature"
|
||||||
|
label={{
|
||||||
|
formatter: val => `${val}°C`
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Tooltip
|
||||||
|
crosshairs={{
|
||||||
|
type: "y"
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Geom
|
||||||
|
type="line"
|
||||||
|
position="month*temperature"
|
||||||
|
size={2}
|
||||||
|
color={"city"}
|
||||||
|
shape={"smooth"}
|
||||||
|
/>
|
||||||
|
<Geom
|
||||||
|
type="point"
|
||||||
|
position="month*temperature"
|
||||||
|
size={4}
|
||||||
|
shape={"circle"}
|
||||||
|
color={"city"}
|
||||||
|
style={{
|
||||||
|
stroke: "#fff",
|
||||||
|
lineWidth: 1
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</Chart>
|
||||||
|
</div>
|
||||||
|
</React.Fragment>
|
||||||
|
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export default Signinstatistics;
|
@ -0,0 +1,4 @@
|
|||||||
|
.gutterrowbox{
|
||||||
|
width:209px;
|
||||||
|
height:150px;
|
||||||
|
}
|
@ -0,0 +1,74 @@
|
|||||||
|
import React,{ Component } from "react";
|
||||||
|
|
||||||
|
import { Modal , Button} from 'antd';
|
||||||
|
|
||||||
|
class Qrcodesignin extends Component {
|
||||||
|
constructor(props) {
|
||||||
|
super(props)
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
|
||||||
|
const leftbuton={
|
||||||
|
"width":"130px",
|
||||||
|
"height":"40px",
|
||||||
|
"border":"1px solid rgba(76,172,255,1)",
|
||||||
|
"border-radius":"4px",
|
||||||
|
}
|
||||||
|
|
||||||
|
const rightbuton={
|
||||||
|
"width":"130px",
|
||||||
|
"height":"40px",
|
||||||
|
"background":"#4CACFF",
|
||||||
|
"border-radius":"4px",
|
||||||
|
}
|
||||||
|
return(
|
||||||
|
<React.Fragment>
|
||||||
|
{this.props.Qrcodesignintype?<Modal
|
||||||
|
title="二维码签到"
|
||||||
|
visible={this.props.Qrcodesignintype}
|
||||||
|
closable={false}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div className={" marginauto clearfix edu-txt-center"}>
|
||||||
|
<a><img alt="example" src="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png" style={{"width": "100%"}} /></a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div className={"mt20 marginauto clearfix edu-txt-center"}>
|
||||||
|
<a>请打开小程序在课堂的签到模块扫码签到</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className={"mt20 marginauto clearfix edu-txt-center"}>
|
||||||
|
<a>
|
||||||
|
<Button type="primary" ghost style={leftbuton}>
|
||||||
|
取消
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<a>
|
||||||
|
<Button type="primary" className={"ml20"} style={rightbuton}>
|
||||||
|
确定
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</Modal>:""}
|
||||||
|
</React.Fragment>
|
||||||
|
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export default Qrcodesignin
|
@ -0,0 +1,76 @@
|
|||||||
|
import React,{ Component } from "react";
|
||||||
|
|
||||||
|
import { Modal , Form, Input,Button} from 'antd';
|
||||||
|
|
||||||
|
class Studentssignmodel extends Component {
|
||||||
|
constructor(props) {
|
||||||
|
super(props)
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
const { getFieldDecorator } = this.props.form;
|
||||||
|
const formItemLayout = {
|
||||||
|
wrapperCol: { span: 25},
|
||||||
|
};
|
||||||
|
|
||||||
|
const leftbuton={
|
||||||
|
"width":"130px",
|
||||||
|
"height":"40px",
|
||||||
|
"border":"1px solid rgba(76,172,255,1)",
|
||||||
|
"border-radius":"4px",
|
||||||
|
}
|
||||||
|
|
||||||
|
const rightbuton={
|
||||||
|
"width":"130px",
|
||||||
|
"height":"40px",
|
||||||
|
"background":"#4CACFF",
|
||||||
|
"border-radius":"4px",
|
||||||
|
}
|
||||||
|
return(
|
||||||
|
<React.Fragment>
|
||||||
|
{this.props.Studentssigntype?<Modal
|
||||||
|
title="签到码签到"
|
||||||
|
visible={this.props.Studentssigntype}
|
||||||
|
closable={false}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
|
||||||
|
<Form {...formItemLayout}>
|
||||||
|
|
||||||
|
<Form.Item>
|
||||||
|
{getFieldDecorator('name', {
|
||||||
|
rules: [{ required: true, message: 'Please input the title of collection!' }],
|
||||||
|
})(<Input placeholder="请输入签到码"/>)}
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
<div className={"mt20 marginauto clearfix edu-txt-center"}>
|
||||||
|
<a>
|
||||||
|
<Button type="primary" ghost style={leftbuton}>
|
||||||
|
取消
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<a>
|
||||||
|
<Button type="primary" className={"ml20"} style={rightbuton}>
|
||||||
|
确定
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</Form>
|
||||||
|
</Modal>:""}
|
||||||
|
</React.Fragment>
|
||||||
|
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const Studentssignmodels = Form.create({ name: 'Studentssignmodel' })(Studentssignmodel);
|
||||||
|
|
||||||
|
export default Studentssignmodels
|
Loading…
Reference in new issue