package com.qxueyou.scc.admin.attendance.impl;
|
|
import com.qxueyou.scc.admin.attendance.AttendanceService;
|
import com.qxueyou.scc.base.model.Pager;
|
import com.qxueyou.scc.base.model.Result;
|
import com.qxueyou.scc.base.service.ICommonService;
|
import com.qxueyou.scc.base.service.impl.CommonAppService;
|
import com.qxueyou.scc.base.util.CollectionUtils;
|
import com.qxueyou.scc.base.util.TraceUtils;
|
import com.qxueyou.scc.teach.student.model.StuStudent;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.stereotype.Service;
|
|
import java.text.SimpleDateFormat;
|
import java.util.Date;
|
import java.util.List;
|
|
@Service
|
public class AttendanceServiceImpl extends CommonAppService implements AttendanceService {
|
|
@Override
|
public String attendanceUpAndAdd(String studentId, String subjectId) {
|
String s="";
|
|
StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false");
|
|
List<Object> args = CollectionUtils.newList(studentId);
|
|
StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class);
|
|
try{
|
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
//ÉÏ¿Îʱ¼ä
|
String s1 = "9£º00:00";
|
//Èç¹ûÉÏ¿Îʱ¼ä(9µã)>µ±Ç°Ê±¼ä
|
String s2 = sdf.format(new Date());
|
int compareTo = s1.compareTo(s2);
|
if(compareTo>0)
|
{
|
s="Ç©µ½Ê±¼äÒѹý£¬±¾½Ú¿Î°´ÕÕ¿õ¿Î´¦Àí";
|
stuStudent.setAttendanceStatus("¿õ¿Î");
|
}
|
else
|
{
|
String s3 = "8£º50:00";
|
compareTo = s2.compareTo(s3);
|
if(compareTo<0)
|
{
|
s="δµ½Ç©µ½Ê±¼ä£¬ÇëÓëÉÏ¿Îʱ¼äǰ10·ÖÖÓÇ©µ½";
|
stuStudent.setAttendanceStatus("δ´ò¿¨");
|
}
|
else
|
{
|
if(stuStudent!=null && subjectId!=null){
|
stuStudent.setSubjectId(subjectId);
|
stuStudent.setAttendanceStatus("ÒÑ´ò¿¨");
|
s = "³É¹¦Íê³ÉÇ©µ½";
|
}
|
}
|
}
|
}
|
catch (Exception e)
|
{
|
e.printStackTrace();
|
}
|
save(stuStudent);
|
return s;
|
}
|
|
@Override
|
public List<StuStudent> findAttendanceList(Integer limit, Integer pageNum, String keyword, String subjectId) {
|
StringBuffer hql=new StringBuffer("from StuStudent where name like ? and subjectId = ? and deleteFlag is false");
|
|
List<Object> args = CollectionUtils.newList(keyword + "%",subjectId);
|
|
hql.append(" order by createTime desc");
|
|
List<StuStudent> list = findList(hql.toString(), new Pager(limit, pageNum), args, StuStudent.class);
|
|
return list;
|
}
|
|
@Override
|
public Result updateAttendanceStatus(String studentId, String attendanceStatus) {
|
StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false");
|
|
List<Object> args = CollectionUtils.newList(studentId);
|
|
StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class);
|
|
if(stuStudent!=null && attendanceStatus!=null){
|
stuStudent.setAttendanceStatus(attendanceStatus);
|
save(stuStudent);
|
return new Result(true);
|
}
|
|
return new Result(false);
|
}
|
|
@Override
|
public int findAttendanceListCount(String keyword, String subjectId) {
|
StringBuffer hql=new StringBuffer("from StuStudent where name like ? and subjectId = ? and deleteFlag is false");
|
|
List<Object> args = CollectionUtils.newList(keyword + "%",subjectId);
|
|
return findCount(hql.toString(),args);
|
}
|
}
|