修改
diff --git a/src/main/java/com/supwisdom/dlpay/atte/controller/CustAtteController.java b/src/main/java/com/supwisdom/dlpay/atte/controller/CustAtteController.java
index 32d1fef..152087f 100644
--- a/src/main/java/com/supwisdom/dlpay/atte/controller/CustAtteController.java
+++ b/src/main/java/com/supwisdom/dlpay/atte/controller/CustAtteController.java
@@ -35,10 +35,7 @@
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Controller
 @RequestMapping("/atte")
@@ -1249,6 +1246,8 @@
             ExportParams params = new ExportParams("考勤报表", "考勤报表", ExcelType.XSSF);
 //		params.setFreezeCol(2);
             List<ExcelReport> data=new ArrayList<>();
+            Date startdates=DateUtil.getSpecifyDate(searchBean.getStartdate(),"yyyyMMdd");
+            Integer days=getDaysOfMonth(startdates);
             for(AtteReport at:list){
                 ExcelReport er=new ExcelReport();
                 er.setCustname(at.getCustname());
@@ -1319,12 +1318,18 @@
                 er.setP27(getState(at.getP27()));
                 er.setA28(getState(at.getA28()));
                 er.setP28(getState(at.getP28()));
-                er.setA29(getState(at.getA29()));
-                er.setP29(getState(at.getP29()));
-                er.setA30(getState(at.getA30()));
-                er.setP30(getState(at.getP30()));
-                er.setA31(getState(at.getA31()));
-                er.setP31(getState(at.getP31()));
+                if(days>=28){
+                    er.setA29(getState(at.getA29()));
+                    er.setP29(getState(at.getP29()));
+                }
+                if(days>=30){
+                    er.setA30(getState(at.getA30()));
+                    er.setP30(getState(at.getP30()));
+                }
+                if(days>=31){
+                    er.setA31(getState(at.getA31()));
+                    er.setP31(getState(at.getP31()));
+                }
                 data.add(er);
             }
 
@@ -1339,7 +1344,11 @@
             map.put("result", "导出excel文件失败");
         }
     }
-
+    public static int getDaysOfMonth(Date date) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
+    }
     public String getState(Integer num){
         if(num==null) {
             return "未排班";
diff --git a/src/main/resources/templates/atte/newreport/index.html b/src/main/resources/templates/atte/newreport/index.html
index d489ac1..1d845e4 100644
--- a/src/main/resources/templates/atte/newreport/index.html
+++ b/src/main/resources/templates/atte/newreport/index.html
@@ -511,37 +511,37 @@
                     <el-table-column
                             prop="a29"
                             label="29(上午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform29">
 
                     </el-table-column>
                     <el-table-column
                             prop="p29"
                             label="29(下午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform29">
 
                     </el-table-column>
                     <el-table-column
                             prop="a30"
                             label="30(上午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform30">
 
                     </el-table-column>
                     <el-table-column
                             prop="p30"
                             label="30(下午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform30">
 
                     </el-table-column>
                     <el-table-column
                             prop="a31"
                             label="31(上午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform31">
 
                     </el-table-column>
                     <el-table-column
                             prop="p31"
                             label="31(下午)"
-                            :formatter="stateTypeform">
+                            :formatter="stateTypeform31">
 
                     </el-table-column>
 
@@ -647,31 +647,28 @@
                 this.dialogFormVisible = false
             },sumdays:function (row,column, cellValue){
                 return row.cnt1+row.cnt3+row.cnt7+row.cnt8+row.cnt9;
+            },stateTypeform29:function(row,column,cellValue){
+                var days=getdays(this);
+                if(29>days){
+                    return '';
+                }
+               return  formatstat(row,column,cellValue);
+            },stateTypeform30:function(row,column,cellValue){
+                var days=getdays(this);
+                if(30>days){
+                    return '';
+                }
+                return  formatstat(row,column,cellValue);
+            },stateTypeform31:function(row,column,cellValue){
+                var days=getdays(this);
+                if(31>days){
+                    return '';
+                }
+                return  formatstat(row,column,cellValue);
             },
             stateTypeform:function(row, column, cellValue){
               //  alert(cellValue)
-                if(cellValue == 0){
-                    return '未打卡';
-                }else if(cellValue == 1){
-                    return '正常';
-                }else if(cellValue == 2){
-                    return '异常';
-                }else if(cellValue == 3){
-                    return '正常';
-                }else if(cellValue == 4){
-                    return '未打卡';
-                }else if(cellValue == 5){
-                    return '异常';
-                }else if(cellValue == 7){
-                    return '正常';
-                }else if(cellValue == 8){
-                    return '正常';
-                }else if(cellValue == 9){
-                    return '正常';
-                }else {
-                    return '未排班';
-                }
-
+              return  formatstat(row,column,cellValue);
             },
         },
         created:function(){
@@ -720,9 +717,37 @@
 
     })
 
+    function getdays(that){
+        var sel=that.preportform.startdate;
 
+        var d = new Date(sel.getFullYear(),sel.getMonth()+1,0);
+        var days=d.getDate();
+        return days;
+    }
 
-
+    function formatstat(row,column,cellValue) {
+        if(cellValue == 0){
+            return '未打卡';
+        }else if(cellValue == 1){
+            return '正常';
+        }else if(cellValue == 2){
+            return '异常';
+        }else if(cellValue == 3){
+            return '正常';
+        }else if(cellValue == 4){
+            return '未打卡';
+        }else if(cellValue == 5){
+            return '异常';
+        }else if(cellValue == 7){
+            return '正常';
+        }else if(cellValue == 8){
+            return '正常';
+        }else if(cellValue == 9){
+            return '正常';
+        }else {
+            return '未排班';
+        }
+    }
 
 
     function class_Formatdate(date){