diff --git a/public/react/src/modules/courses/signin/component/Teacherentry.js b/public/react/src/modules/courses/signin/component/Teacherentry.js
index abd38e2dd..074845bc0 100644
--- a/public/react/src/modules/courses/signin/component/Teacherentry.js
+++ b/public/react/src/modules/courses/signin/component/Teacherentry.js
@@ -1,17 +1,15 @@
-import React,{ Component } from "react";
+import React, {Component} from "react";
 import '../css/signincdi.css';
-import { Progress } from 'antd';
+import {Progress} from 'antd';
 import axios from 'axios';
 
 //条目
-class Teacherentry extends Component{
+class Teacherentry extends Component {
 	//条目组件
-	constructor(props){
+	constructor(props) {
 		super(props);
 
-		this.state={
-
-		}
+		this.state = {}
 	}
 
 	componentDidMount() {
@@ -24,110 +22,126 @@ class Teacherentry extends Component{
 	}
 
 
-
-	render(){
-		let  isAdmin =this.props.isAdmin();
-		let item= this.props.item;
+	render() {
+		let isAdmin = this.props.isAdmin();
+		let item = this.props.item;
+		let index =this.props.index;
 		let jdt;
 		try {
-			jdt=item.normal_count/item.all_count * 100;
-		}catch (e) {
-			jdt=100;
+			jdt = item.normal_count / item.all_count * 100;
+		} catch (e) {
+			jdt = 100;
 		}
-		console.log(jdt);
-		return(
+		return (
 			<React.Fragment>
-				<div className="ws100s edu-back-white " >
+				<div className={index===0?"ws100s edu-back-white ": "ws100s edu-back-white mt20"}>
 					<div className="ws100s teacherentrydiv ">
-          <p className="ws100s teachedivp ymaxnamewidthdivp">
-						{
-							item.name
-						}
+						<p className="ws100s teachedivp ymaxnamewidthdivp">
+							{
+								item.name
+							}
 
-          </p>
+						</p>
 
-						<div  className="ws100s sortinxdirection mt17">
-             <div className="teachedivps">
-							 签到人数:
-						 </div>
+						<div className="ws100s sortinxdirection mt17">
+							<div className="teachedivps">
+								签到人数:
+							</div>
 							<div className="progressivps">
-								<Progress  percent={jdt} showInfo={false} strokeColor="#1890ff" />
+								<Progress percent={jdt} showInfo={false} strokeColor="#1890ff"/>
 							</div>
 							<div className="progressivpss">
-								已签到{item.normal_count?item.normal_count:0}  / 应签到 {item.all_count?item.all_count:0}
+								已签到{item.normal_count ? item.normal_count : 0} / 应签到 {item.all_count ? item.all_count : 0}
 							</div>
 						</div>
 
 
-						<div  className="ws100s sortinxdirection  mt5">
+						<div className="ws100s sortinxdirection  mt5">
 							<div className="ws80s sortinxdirection">
 
 
-							<div className="teachedivps  h40s">
-								签到发起人:
-							</div>
-							<div className="teachedivpsy ymaxnamewidth60 h40s">
-								{item.author.user_name}
-							</div>
+								<div className="teachedivps  h40s">
+									签到发起人:
+								</div>
+								<div className="teachedivpsy ymaxnamewidth60 h40s">
+									{item.author.user_name}
+								</div>
 
-							<div className="teachedivps ml20 h40s">
-								签到方式:
-							</div>
-							<div className="teachedivpsy ymaxnamewidth80 h40s">
-								{item.mode?
-										item.mode==="QRCODE"?
+								<div className="teachedivps ml20 h40s">
+									签到方式:
+								</div>
+								<div className="teachedivpsy ymaxnamewidth80 h40s">
+									{item.mode ?
+										item.mode === "QRCODE" ?
 											"二维码签到"
-									  :item.mode==="NUMBER"?
-                      "数字签到"
-									  :item.mode==="QUICK"?
-											"快捷签到"
-									  :""
-									:""}
-							</div>
-
-							<div className="teachedivps ml20 h40s">
-								开始结束时间:
-							</div>
-							<div className="teachedivpsy h40s">
-								{item.attendance_date} 	{item.start_time}-{item.end_time}
-							</div>
+											: item.mode === "NUMBER" ?
+											"数字签到"
+											: item.mode === "QUICK" ?
+												"快捷签到"
+												: ""
+										: ""}
+								</div>
+
+								<div className="teachedivps ml20 h40s">
+									开始结束时间:
+								</div>
+								<div className="teachedivpsy h40s">
+									{item.attendance_date} {item.start_time}-{item.end_time}
+								</div>
 							</div>
 
 							<div className="ws20s sortinxdirection">
 								{
-									isAdmin===true?
-										this.props.defaultActiveKey==="1"?
-												<div className="ws100s xaxisreverseorder">
-													<div className="jiezhis h40s">截止</div>
-													<div className="shanchu h40s">删除</div>
-												</div>
-											:
+									isAdmin === true ?
+										this.props.defaultActiveKey === "1" ?
 											<div className="ws100s xaxisreverseorder">
-												<div className="jiezhis h40s">编辑</div>
-												<div className="shanchu h40s">删除</div>
+												<div className="jiezhis h40s xiaoshou" onClick={()=>this.props.thisEnd(item.id)}>截止</div>
+												<div className="shanchu h40s xiaoshou" onClick={()=>this.props.thisdelete(item.id)}>删除</div>
 											</div>
+											:
+											item.edit_auth === true ?
+												<div className="ws100s xaxisreverseorder">
+													<div className="jiezhis h40s xiaoshou">编辑</div>
+													<div className="shanchu h40s xiaoshou" onClick={()=>this.props.thisdelete(item.id)}>删除</div>
+												</div>
+												:
+												<div className="ws100s xaxisreverseorder">
+													<div className="jiezhis h40s color-reds xiaoshou" onClick={()=>this.props.thisdelete(item.id)}>删除</div>
+												</div>
 										:
 										(
-											this.props.defaultActiveKey==="1"?
+											this.props.defaultActiveKey === "1" ?
 												<div className="ws100s xaxisreverseorder">
 
-												<div className="qiandaobutton xiaoshou">
-												  签到
-											 </div>
+													<div className="qiandaobutton xiaoshou">
+														签到
+													</div>
 												</div>
 												:
 												<div className="ws100s xaxisreverseorder">
-                           {/*<div className="zcqiandao xiaoshou">*/}
-														{/* 正常签到*/}
-													 {/*</div>*/}
+													{
+														item.attendance_status?
+															item.attendance_status === "NORMAL" ?
+																<div className="zcqiandao xiaoshou">
+																	正常签到
+																</div>
+																: item.attendance_status === "LEAVE" ?
+																<div className="qjqiandao xiaoshou">
+																	请假
+																</div>
+																: item.attendance_status === "ABSENCE" ?
+																	<div className="kkqiandao xiaoshou">
+																		旷课
+																	</div>
+																	:
+																	""
+															:
+															""
+													}
+
+
 
-													{/*<div className="qjqiandao xiaoshou">*/}
-													{/*	请假*/}
-													{/*</div>*/}
 
-													<div className="kkqiandao xiaoshou">
-														旷课
-													</div>
 												</div>
 										)
 
@@ -142,4 +156,5 @@ class Teacherentry extends Component{
 		)
 	}
 }
+
 export default Teacherentry;
diff --git a/public/react/src/modules/courses/signin/component/teachercomponent/Teaccomponent.js b/public/react/src/modules/courses/signin/component/teachercomponent/Teaccomponent.js
index 08da61696..26a871416 100644
--- a/public/react/src/modules/courses/signin/component/teachercomponent/Teaccomponent.js
+++ b/public/react/src/modules/courses/signin/component/teachercomponent/Teaccomponent.js
@@ -29,6 +29,48 @@ class Teaccomponent extends Component{
 	componentDidUpdate = (prevProps) => {
 
 
+	}
+   //截止
+	thisEnd=(attendance_id)=>{
+		const url = `/weapps/attendances/${attendance_id}/end.json`;
+		var data={
+
+		}
+		axios.post(url, data)
+			.then((result) => {
+				if (result.data.status === 0) {
+					// this.props.showNotification(`组卷成功`);
+					// console.log(result.data.exam_id);
+					//本来调试卷库首页的
+				  this.props.getsetdatas();
+				}
+			}).catch((error) => {
+			//console.log(error);
+		})
+	}
+   //删除
+	thisdelete=(attendance_id)=>{
+		const url = `/weapps/attendances/${attendance_id}.json`;
+		var data={
+
+		}
+		axios.delete(url, data)
+			.then((result) => {
+				if (result.data.status === 0) {
+					// this.props.showNotification(`组卷成功`);
+					// console.log(result.data.exam_id);
+					//本来调试卷库首页的
+					this.props.getsetdatas();
+				}
+			}).catch((error) => {
+			//console.log(error);
+		})
+	}
+
+  //学生签到
+	Signin=(type,)=>{
+
+
 	}
 
 
@@ -42,7 +84,16 @@ class Teaccomponent extends Component{
 						mydatas.length>0?
 								mydatas.map((object, index) => {
 									return (
-										<Teacherentry  item={object} key={index} index={index} defaultActiveKey={this.props.defaultActiveKey}{...this.props} {...this.state}></Teacherentry>
+										<Teacherentry
+											thisdelete={(id)=>this.thisdelete(id)}
+											thisEnd={(id)=>this.thisEnd(id)}
+											item={object} key={index}
+											index={index}
+											defaultActiveKey={this.props.defaultActiveKey}
+											{...this.props}
+											{...this.state}
+										></Teacherentry>
+
 									)
 								})
 							:
diff --git a/public/react/src/modules/courses/signin/css/signincdi.css b/public/react/src/modules/courses/signin/css/signincdi.css
index b78bc0554..e6f4ccf21 100644
--- a/public/react/src/modules/courses/signin/css/signincdi.css
+++ b/public/react/src/modules/courses/signin/css/signincdi.css
@@ -320,3 +320,7 @@
 .mr20r{
     margin-right: 20px;
 }
+
+.color-reds{
+    color:rgba(245,108,108,1) !important;
+}
diff --git a/public/react/src/modules/courses/signin/teacher/Teachers_signin.js b/public/react/src/modules/courses/signin/teacher/Teachers_signin.js
index 958fb331b..18f327485 100644
--- a/public/react/src/modules/courses/signin/teacher/Teachers_signin.js
+++ b/public/react/src/modules/courses/signin/teacher/Teachers_signin.js
@@ -21,7 +21,10 @@ class Students_signin extends Component{
 			count:50,
 			defaultActiveKey:"1",
 			attendances_count:0,
-			datas:[]
+			datas:[],
+			normal_count:0,
+			leave_count:0,
+			absence_count:0,
 		}
 	}
 
@@ -80,7 +83,10 @@ class Students_signin extends Component{
            	if(response.data){
            		this.setState({
 								attendances_count:response.data.attendances_count,
-								datas:response.data.attendances
+								datas:response.data.attendances,
+								normal_count:response.data.normal_count,
+								leave_count:response.data.leave_count,
+								absence_count:response.data.absence_count,
 							})
 						}
 					 }
@@ -121,10 +127,19 @@ class Students_signin extends Component{
 
 	}
 
+	getsetdatas=()=>{
+		let data={
+			key:this.state.defaultActiveKey,
+			page:this.state.page,
+			limit:5
+		}
+		this.gogetdatas(data);
+	}
+
 
 	render(){
 
-		let {page,per_page,count,defaultActiveKey,limit,attendances_count,datas} =this.state;
+		let {page,per_page,count,defaultActiveKey,limit,attendances_count,datas,absence_count,leave_count,normal_count} =this.state;
 		const  isAdmin =this.props.isAdmin();
 
 		return(
@@ -154,7 +169,9 @@ class Students_signin extends Component{
 							<Tabs defaultActiveKey="1" onChange={this.callback}>
 								<TabPane tab="正在签到" key="1">
 									<p className="mt20 mysligtes">共{attendances_count}个签到正在进行</p>
-									<Teaccomponent  datas={datas} defaultActiveKey={defaultActiveKey} {...this.state} {...this.props}></Teaccomponent>
+									<Teaccomponent getsetdatas={()=>this.getsetdatas()} datas={datas} defaultActiveKey={defaultActiveKey} {...this.state} {...this.props}
+
+									></Teaccomponent>
 
 
 
@@ -170,9 +187,9 @@ class Students_signin extends Component{
 										{
 											isAdmin===false?
 												<div className="ws50s xaxisreverseorder">
-                         <p className="kkp pr32 " style={{color:"#FF835C"}}>旷课:2</p>
-													<p className="kkp mr20r" style={{color:"#EAAE4E"}}>请假:2</p>
-													<p className="kkp mr20r" style={{color:"#26C7C9"}}>正常签到:10</p>
+                         <p className="kkp pr32 " style={{color:"#FF835C"}}>旷课:{absence_count}</p>
+													<p className="kkp mr20r" style={{color:"#EAAE4E"}}>请假:{leave_count}</p>
+													<p className="kkp mr20r" style={{color:"#26C7C9"}}>正常签到:{normal_count}</p>
 
 												</div>
 												:
@@ -182,7 +199,7 @@ class Students_signin extends Component{
 
 
 
-									<Teaccomponent  datas={datas} defaultActiveKey={defaultActiveKey} {...this.state} {...this.props}></Teaccomponent>
+									<Teaccomponent  getsetdatas={()=>this.getsetdatas()} datas={datas} defaultActiveKey={defaultActiveKey} {...this.state} {...this.props}></Teaccomponent>
 
 
 									<div className="mb30 clearfix educontent mt40 intermediatecenter">