考勤流水处理,报表修改
diff --git a/src/main/java/com/supwisdom/dlpay/atte/dao/impl/AtteClassDaoImpl.java b/src/main/java/com/supwisdom/dlpay/atte/dao/impl/AtteClassDaoImpl.java
index 39d6658..45faee3 100644
--- a/src/main/java/com/supwisdom/dlpay/atte/dao/impl/AtteClassDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/atte/dao/impl/AtteClassDaoImpl.java
@@ -578,7 +578,7 @@
if(!StringUtil.isEmpty(searchBean.getCardno())){
sql+=" and v.cardno like :cno ";
}
- sql+=" order by v.doorseqno ";
+ sql+=" order by v.transtime asc ,v.transdate asc ";
Query query=entityManager.createNativeQuery(sql, AtteDtl.class);
if(!StringUtil.isEmpty(searchBean.getStartdate())&&!StringUtil.isEmpty(searchBean.getEnddate())){
query.setParameter("sdate",searchBean.getStartdate());
diff --git a/src/main/java/com/supwisdom/dlpay/atte/domain/TAtteDtl.java b/src/main/java/com/supwisdom/dlpay/atte/domain/TAtteDtl.java
index f186935..ef21b52 100644
--- a/src/main/java/com/supwisdom/dlpay/atte/domain/TAtteDtl.java
+++ b/src/main/java/com/supwisdom/dlpay/atte/domain/TAtteDtl.java
@@ -19,6 +19,7 @@
private String operid;
private String updatetime;
private Integer apflag; //1-上午 2-下午;
+ private String atime;//时间
@Id
@@ -112,4 +113,12 @@
public void setApflag(Integer apflag) {
this.apflag = apflag;
}
+ @Column(name = "atime",length = 6)
+ public String getAtime() {
+ return atime;
+ }
+
+ public void setAtime(String atime) {
+ this.atime = atime;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/atte/service/impl/AtteClassServiceImpl.java b/src/main/java/com/supwisdom/dlpay/atte/service/impl/AtteClassServiceImpl.java
index 5f66c91..6eefff5 100644
--- a/src/main/java/com/supwisdom/dlpay/atte/service/impl/AtteClassServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/atte/service/impl/AtteClassServiceImpl.java
@@ -298,12 +298,6 @@
return min;
}
- public static void main(String[] args) {
- String t1=DateUtil.getNow("yyyyMMdd")+"135000";
- String t2=DateUtil.getNow("yyyyMMdd")+"134700";
- long diff=DateUtil.getInterval(t2,t1);
- System.out.println("时差"+diff/(1000*60));
- }
@Override
public Pagination getAtteDtlInfoWithPage(AttedtlSearchBean searchBean, int pageNo, int pageSize) {
@@ -353,7 +347,7 @@
for(AtteDtl dtl:list){
List<TAtteDtl> details=atteClassDao.getDetailList(dtl.getCustid(),attedate) ;
if(details!=null){
- String refno="";
+ String atime="";
for(int i=0;i<details.size();i++){
TAtteDtl detail=details.get(i);
Integer nextid=null;
@@ -361,8 +355,11 @@
nextid=details.get(i+1).getTimeid();//考离时间段
}else if((i==1 || i==3)&&details.size()==4){
nextid=details.get(i-1).getTimeid();
+ atime=details.get(i-1).getAtime();
}
-
+ if(atime!=null&&atime.equals(dtl.getAttetime())){
+ continue;
+ }
int state= 0;
try {
state = getState(detail.getTimeid(),dtl.getAttetime(),nextid);
@@ -373,25 +370,19 @@
//e.printStackTrace();
continue;
}
- if(attedate.equals("20200528")||detail.getCustid().equals("2c9780826e1c635f016e1c9eea8a3d36")){
- System.out.println(state);
- System.out.println(detail.getTimeid()+"=="+nextid+"---"+dtl.getAttetime());
- }
if(detail.getState()==0&&state!=0){
- if(!refno.equals(dtl.getRefno())){
detail.setState(state);
detail.setUpdatetime(DateUtil.getNow());
+ detail.setAtime(dtl.getAttetime());
atteClassDao.updateAtteDtl(detail);
- refno=dtl.getRefno();
- }
+
}else if(detail.getState()==2&&state==1){
- if(!refno.equals(dtl.getRefno())) {
detail.setState(state);
detail.setUpdatetime(DateUtil.getNow());
- refno = dtl.getRefno();
+ detail.setAtime(dtl.getAttetime());
atteClassDao.updateAtteDtl(detail);
- }
+
}
}
@@ -416,14 +407,15 @@
//考离
TNcTime nexttime=ncTimeDao.findByTimeId(nextid);
String lasttime=nexttime.getEtime().replace(":","")+"00";
-
- d_min=getDiffMin(etime,lasttime);
- if(bmin>0){ //
+ String s_time=nexttime.getBtime().replace(":","")+"00";
+ d_min=getDiffMin(etime,lasttime);
+ int n_emin=getDiffMin(s_time,attetime);
+ if(bmin>0||n_emin>0){ //
flag=0;
}else {
if(emin>0){
flag=1;
- }else if(emin>-d_min){
+ }else if(emin<0&&n_emin<0){
flag=2;
}else{
flag=0;
@@ -434,11 +426,13 @@
TNcTime lasttime=ncTimeDao.findByTimeId(nextid);
String endtime=lasttime.getEtime().replace(":","")+"00";
d_min=getDiffMin(endtime,attetime);
- if(d_min>0&&bmin>0){
+ if(emin<0||d_min<0){
+ flag=0;
+ }else if(d_min>0&&bmin>0){
flag=2;
- }else if(bmin<=0&&emin>=0){
+ }else if(bmin<0&&emin>0){
flag=1;
- }else {
+ }else{
flag=0;
}
}else{
diff --git a/src/main/resources/templates/atte/report/p_index.html b/src/main/resources/templates/atte/report/p_index.html
index 18ac05f..ec3a056 100644
--- a/src/main/resources/templates/atte/report/p_index.html
+++ b/src/main/resources/templates/atte/report/p_index.html
@@ -261,7 +261,7 @@
success:function(ret){
// //console.log(ret);
_self.totSize=ret.PageResult.totalCount;
- _self.tableData=ret.PageResult.list;
+ // _self.tableData=ret.PageResult.list;
var custtypelist = [];
var types=ret.custtypelist;
for (var i = 0; i < types.length; i++) {
@@ -310,7 +310,7 @@
return formated;
}
function report_commonQuery(_self,pageno,pagesize) {
-
+ layer.msg("正在生成报表,请稍等!", {icon: 1, time: 1000});
var token=$("meta[name='_csrf_token']").attr("value");
var startdate=class_Formatdate(_self.preportform.startdate);
var enddate=class_Formatdate(_self.preportform.enddate);
@@ -385,6 +385,7 @@
};
var LODOP;
function print(that){
+ layer.msg("正在打印,请稍等!", {icon: 1, time: 1000});
var startdate=class_Formatdate(that.preportform.startdate);
var enddate=class_Formatdate(that.preportform.enddate);
var custtypeid=that.preportform.custtypeid;