diff --git a/src/main/java/cn/timer/api/controller/kqgl/ClockInController.java b/src/main/java/cn/timer/api/controller/kqgl/ClockInController.java
index de697d8..c02b2a9 100644
--- a/src/main/java/cn/timer/api/controller/kqgl/ClockInController.java
+++ b/src/main/java/cn/timer/api/controller/kqgl/ClockInController.java
@@ -194,47 +194,54 @@ public class ClockInController {
 								int isSbdk3Cr = shif.getIsSbdk3Cr();//上班3是否次日(0:否;1:是)
 								int isXbdk3Cr = shif.getIsXbdk3Cr();//下班3是否次日(0:否;1:是)
 								if(balan.getSort() < dkcs) {
-									if(balan.getSort()+1 == 2 && dkcs == 2) {
-										if(isXbdk1Cr > 0) {//次日
-											crdk = true;
-										}
-									}
-									if(balan.getSort()+1 == 3 && dkcs == 4) {
-										if(isSbdk2Cr > 0) {//次日
-											crdk = true;
-										}
-									}
-									if(balan.getSort()+1 == 4 && dkcs == 4) {
-										if(isXbdk2Cr > 0) {//次日
-											crdk = true;
-										}
-									}
-									if(balan.getSort()+1 == 5 && dkcs == 6) {
-										if(isSbdk3Cr > 0) {//次日
-											crdk = true;
-										}
-									}
-									if(balan.getSort()+1 == 6 && dkcs == 6) {
-										if(isXbdk3Cr > 0) {//次日
-											crdk = true;
-										}
+									if((isXbdk1Cr + isSbdk2Cr +isXbdk2Cr +  isSbdk3Cr + isXbdk3Cr) > 0) {
+										crdk = true;
 									}
+									
+//									if(balan.getSort()+1 == 2 && dkcs == 2) {
+//										//次日
+//										if(isXbdk1Cr > 0) { crdk = true; }
+//									}
+//									if(balan.getSort()+1 == 3 && dkcs == 4) {
+//										if(isSbdk2Cr > 0) {crdk = true; }
+//									}
+//									if(balan.getSort()+1 == 4 && dkcs == 4) {
+//										if(isXbdk2Cr > 0) { crdk = true; }
+//									}
+//									if(balan.getSort()+1 == 5 && dkcs == 6) {
+//										if(isSbdk3Cr > 0) { crdk = true; }
+//									}
+//									if(balan.getSort()+1 == 6 && dkcs == 6) {
+//										if(isXbdk3Cr > 0) { crdk = true; }
+//									}
 								}
 								
 							}else {
 								//无记录的话就找昨天的数据
-//								AttendanceCardListDto attdate1 = MethodCall(qyid,userid,yesterday);
+								AttendanceCardListDto attdate1 = MethodCall(qyid,userid,yesterday);
+								List<AttSchedule> ashssyebo = attdate1.getAttsch();//获取昨天应打卡时间
+								if(ashssyebo.size() > 0) {
+									Date sd1=df1.parse(ClockInTool.stampToDate(String.valueOf(ashssyebo.get(0).getTime())));//当天应打的首次上班卡时间
+									Date sd2=df1.parse(current_time);//当前时间
+									if(sd2.after(sd1)) {//大于
+										dnck = true;
+									}
+								}
+								
+								crdk = true;
+								
+								attdate = MethodCall(qyid,userid,yesterday);
 							}
 							
 							if(crdk && dnck) {
 								dkmc = KqglAssoDkmx.builder().build().selectOne(new QueryWrapper<KqglAssoDkmx>().lambda().eq(KqglAssoDkmx::getUserid, userid)
-										.ge(KqglAssoDkmx::getDksj, startDateyesterday).le(KqglAssoDkmx::getDksj, endDateyesterday));
+										.ge(KqglAssoDkmx::getDksj, startDateyesterday).le(KqglAssoDkmx::getDksj, endDateyesterday).eq(KqglAssoDkmx::getData, yesterday));
 								attdate = MethodCall(qyid,userid,yesterday);
 								attendance_date = startDateyesterday;
 								toweek = yesterday;
 							}else {
 								dkmc = KqglAssoDkmx.builder().build().selectOne(new QueryWrapper<KqglAssoDkmx>().lambda().eq(KqglAssoDkmx::getUserid, userid)
-										.ge(KqglAssoDkmx::getDksj, startDate).le(KqglAssoDkmx::getDksj, endDate));
+										.ge(KqglAssoDkmx::getDksj, startDate).le(KqglAssoDkmx::getDksj, endDate).eq(KqglAssoDkmx::getData, putime));
 								attendance_date = startDate;
 								toweek = putime;
 							}
@@ -1456,11 +1463,10 @@ public class ClockInController {
 //			 pbfs;// 排班方式 1:固定排班;2:自由排班;3:自由工时
 			 
 		     long time_ = DateUtil.getStringTime(clock.getPunchtime(), "yyyy-MM-dd HH:mm:ss");//打卡时间戳
-		     
 				
-			String putime = sStdIoTime.substring(0, 10);////转换打卡时间格式 yyyy-MM-dd
+			 String putime = sStdIoTime.substring(0, 10);////转换打卡时间格式 yyyy-MM-dd
 			
-			String putimehhmm = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(time_);//转换打卡时间格式 年月日
+			 String putimehhmm = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(time_);//转换打卡时间格式 年月日
 		     
 			 Long startDate = DateUtil.getStartTime(0,DateUtil.getStringTime(putime,"yyyy-MM-dd")).getTime();//打卡当天开始时间
 		     Long endDate = DateUtil.getnowEndTime(23,DateUtil.getStringTime(putime,"yyyy-MM-dd")).getTime();//打卡当天结束时间
@@ -1545,14 +1551,14 @@ public class ClockInController {
 					}
 					if(crdk && dnck) {
 						dkmc = KqglAssoDkmx.builder().build().selectOne(new QueryWrapper<KqglAssoDkmx>().lambda().eq(KqglAssoDkmx::getUserid, userid)
-								.ge(KqglAssoDkmx::getDksj, startDateyesterday).le(KqglAssoDkmx::getDksj, endDateyesterday));
+								.ge(KqglAssoDkmx::getDksj, startDateyesterday).le(KqglAssoDkmx::getDksj, endDateyesterday).eq(KqglAssoDkmx::getData, yesterday));
 						attdate = MethodCall(qyid,userid,yesterday);
 						attendance_date = startDateyesterday;
 						toweek = yesterday;
 						putime = toweek;
 					}else {
 						dkmc = KqglAssoDkmx.builder().build().selectOne(new QueryWrapper<KqglAssoDkmx>().lambda().eq(KqglAssoDkmx::getUserid, userid)
-								.ge(KqglAssoDkmx::getDksj, startDate).le(KqglAssoDkmx::getDksj, endDate));
+								.ge(KqglAssoDkmx::getDksj, startDate).le(KqglAssoDkmx::getDksj, endDate).eq(KqglAssoDkmx::getData, putime));
 						attendance_date = startDate;
 						toweek = putime;
 					}