diff --git a/attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue b/attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue
index 3afaf8b0ef287613c56e4e2b5df71b5c89512eb6..1d09b78c84dd5529e8a7dfd81fda398ca13f92fa 100644
--- a/attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue
+++ b/attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue
@@ -154,10 +154,11 @@ export default {
         ],
         approverId: [
           { required: true, message: "璇烽€夋嫨瀹℃壒浜�", trigger: "change" },
-        ],
+        ]
+/*        ,
         attachmentPath: [
           { required: true, message: "璇蜂笂浼犻檮浠舵枃浠�", trigger: "change" },
-        ],
+        ],*/
       },
       attachmentPath: "",
     };
diff --git a/attendance-performance-manager-ui/admin/src/views/attendance/record/list.vue b/attendance-performance-manager-ui/admin/src/views/attendance/record/list.vue
index 5fdd8004f89690a5a485778cabc8bf07c2b3cb90..9b6b7f15ae1d4930bc85777a1bb8dda03db36327 100644
--- a/attendance-performance-manager-ui/admin/src/views/attendance/record/list.vue
+++ b/attendance-performance-manager-ui/admin/src/views/attendance/record/list.vue
@@ -458,6 +458,7 @@ export default {
             label: "鑰冨嫟缁撴潫鏃堕棿",
             fuzzy: false,
           },
+
         ],
         columns: [
           { type: "selection", width: 60 },
@@ -476,6 +477,10 @@ export default {
           { label: "閮ㄩ棬", prop: "deptName", formatter: this.formatters },
           { label: "鑱屼綅", prop: "positionName", formatter: this.formatters },
           { label: "鐝", prop: "shiftsName", formatter: this.formatters },
+          { label: "绛惧埌缁撴灉", prop: "signInResult", formatter: this.formatters },
+          { label: "绛鹃€€缁撴灉", prop: "signOutResult", formatter: this.formatters },
+          { label: "鎵撳崱缁撴灉", prop: "punchResult", formatter: this.formatters },
+
           // {label: "鑰冨嫟鎵撳崱璁板綍璇︾粏淇℃伅",
           //   width: 120,
           //   prop: "subColumns",
diff --git a/attendance-performance-manager-ui/admin/src/views/staff/perform/stat/dialogshow.vue b/attendance-performance-manager-ui/admin/src/views/staff/perform/stat/dialogshow.vue
index 626d987b43e3061ee8100a3d3d621d26f2f9954f..8bdef396eef23711a20672241f10a4a590ae8ed4 100644
--- a/attendance-performance-manager-ui/admin/src/views/staff/perform/stat/dialogshow.vue
+++ b/attendance-performance-manager-ui/admin/src/views/staff/perform/stat/dialogshow.vue
@@ -27,7 +27,13 @@
         </el-col>
         <el-col :span="6">
           <Field label="鍛ㄦ湡绫诲瀷" :span="24" prop="periodType" v-model="form.periodType" type="select"
-            :enumData="dict.periodType" placeholder="璇烽€夋嫨鍛ㄦ湡绫诲瀷" />
+            :enumData="dict.periodType" @change="periodTypeChange" placeholder="璇烽€夋嫨鍛ㄦ湡绫诲瀷" />
+        </el-col>
+        <el-col :span="6">
+          <Field v-if="form.periodType == 2" label="鍗婂勾绫诲瀷" :span="24" prop="halfYear" v-model="form.halfYear" type="select"
+            :enumData="dict.halfYear" placeholder="璇烽€夋嫨鍗婂勾绫诲瀷" />
+          <Field v-if="form.periodType == 3" label="瀛e害绫诲瀷" :span="24" prop="quarter" v-model="form.quarter" type="select"
+            :enumData="dict.quarter" placeholder="璇烽€夋嫨瀛e害绫诲瀷" />
         </el-col>
       </el-row>
       <!-- <el-row>
@@ -158,6 +164,10 @@ export default {
     this.staffList()
   },
   methods: {
+    periodTypeChange(){
+      this.form.quarter = ""
+      this.form.halfYear = ""
+    },
     beforeSubmit(form) {
       // 涓汉/閮ㄩ棬
       const perposeStaffList = []//閫変腑浜哄憳
@@ -247,25 +257,25 @@ export default {
         // 鏂板
         this.reset()
         this.form.assessmentScope = this.$parent.query.assessmentScope + ''
-      }else{
+      } else {
         // 缂栬緫
-        this.form.year = this.form.year+''
+        this.form.year = this.form.year + ''
         const leaderMobiles = this.form.leaderMobiles.split(',')
         // 鍥炴樉璐熻矗浜�
         const ownerList = []
-        this.form.leaders.split(',').forEach((v,i)=>{
+        this.form.leaders.split(',').forEach((v, i) => {
           ownerList.push({ ownerId: "", ownerName: v, leaderMobiles: leaderMobiles[i] || '' })
         })
         this.ownerList = ownerList
         // 鍥炴樉閫変腑浜哄憳
         const staffId = []
-        this.form.perposeStaffList &&  this.form.perposeStaffList.forEach(v=>{
+        this.form.perposeStaffList && this.form.perposeStaffList.forEach(v => {
           staffId.push(v.staffId)
         })
         this.staffId = staffId
         // 鍥炴樉閫変腑閮ㄩ棬
         const deptId = []
-        this.form.perposeDeptList && this.form.perposeDeptList.forEach(v=>{
+        this.form.perposeDeptList && this.form.perposeDeptList.forEach(v => {
           deptId.push(v.deptId)
         })
         this.deptId = deptId
@@ -290,8 +300,8 @@ export default {
         periodType: '1',
         year: "",
         // month: null,
-        // halfYear: 1,
-        // quarter: 1,
+        halfYear: "",
+        quarter: "",
         leaders: "",
         leaderMobiles: "",
         remark: "",
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/PerformApiController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/PerformApiController.java
index ccb6c7cd78637a87c4de00fff8c639a508f114c9..bd79025dd4ae9da7b1d1200b0d69ad11e21ac8b7 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/PerformApiController.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/PerformApiController.java
@@ -335,13 +335,17 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
             Boolean bool = entity.newEntity();
             if (bool) {
                 performInfo.setAppealStatus(AppealStatusEnum.鏈敵璇�.getValue());
-            }else {
-                if (AppealResultEnum.閫氳繃.getValue() == entity.getAppealResult()) {
-                    performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔閫氳繃.getValue());
-                } else if (AppealResultEnum.涓嶉€氳繃.getValue() == entity.getAppealResult()) {
-                    performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔鎷掔粷.getValue());
-                } else {
+            } else {
+                if(ObjectUtils.isEmpty(entity.getAppealResult())){
                     performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔涓�.getValue());
+                }else{
+                    if (AppealResultEnum.閫氳繃.getValue() == entity.getAppealResult()) {
+                        performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔閫氳繃.getValue());
+                    } else if (AppealResultEnum.涓嶉€氳繃.getValue() == entity.getAppealResult()) {
+                        performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔鎷掔粷.getValue());
+                    } else {
+                        performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔涓�.getValue());
+                    }
                 }
             }
         } else {
@@ -349,23 +353,6 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
         }
     }
 
-    private void updateAppealStatus(PerformInfo performInfo, Boolean bool, Integer processStatus, Integer appealResult) {
-        if (!bool) {
-            performInfo.setAppealStatus(AppealStatusEnum.鏈敵璇�.getValue());
-        } else {
-            if (ProcessStatusEnum.鏈鐞�.getValue() == processStatus) {
-                performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔涓�.getValue());
-            } else {
-                if (AppealResultEnum.閫氳繃.getValue() == appealResult) {
-                    performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔閫氳繃.getValue());
-                } else if (AppealResultEnum.涓嶉€氳繃.getValue() == appealResult) {
-                    performInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔鎷掔粷.getValue());
-                }
-            }
-        }
-    }
-
-
     /**
      * 璇︾粏
      */
@@ -404,22 +391,25 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
                 throw new AppException("涓嶆敮鎸佸綋鍓嶇哗鏁堢被鍨�");
             }
 
-            PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(performDetailInfo.getId()));
-
-           // updateAppealResult(performInfo, entity);
+            PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(performDetailInfo.getId()).performType(performReq.getPerformType()));
 
+            log.info("entity:{}", JSONObject.toJSONString(entity));
 
             if (!ObjectUtils.isEmpty(entity)) {
                 Boolean bool = entity.newEntity();
                 if (bool) {
                     performDetailInfo.setAppealStatus(AppealStatusEnum.鏈敵璇�.getValue());
-                }else {
-                    if (AppealResultEnum.閫氳繃.getValue() == entity.getAppealResult()) {
-                        performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔閫氳繃.getValue());
-                    } else if (AppealResultEnum.涓嶉€氳繃.getValue() == entity.getAppealResult()) {
-                        performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔鎷掔粷.getValue());
-                    } else {
+                } else {
+                    if (ObjectUtils.isEmpty(entity.getAppealResult())) {
                         performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔涓�.getValue());
+                    } else {
+                        if (AppealResultEnum.閫氳繃.getValue() == entity.getAppealResult()) {
+                            performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔閫氳繃.getValue());
+                        } else if (AppealResultEnum.涓嶉€氳繃.getValue() == entity.getAppealResult()) {
+                            performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔鎷掔粷.getValue());
+                        } else {
+                            performDetailInfo.setAppealStatus(AppealStatusEnum.鐢宠瘔涓�.getValue());
+                        }
                     }
                 }
             } else {
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceLeaveRecordEntity.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceLeaveRecordEntity.java
index 95d44b3ac9b43714e9d8bcdc27eda93845130054..187af56e49020363c801b75558cea1e298772bbc 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceLeaveRecordEntity.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceLeaveRecordEntity.java
@@ -116,27 +116,27 @@ public class AttendanceLeaveRecordEntity extends AttendanceLeaveRecordVo {
 
     public void initAttrValue(){
 
-        this.leavePersonId = -1L;
+        this.leavePersonId = null;
 
         this.leavePerson = "";
 
-        this.deptId = -1L;
+        this.deptId = null;
 
         this.deptName = "";
 
         this.phoneNumber = "";
 
-        this.leaveType = -1;
+        this.leaveType = null;
 
         this.startTime = null;
 
         this.endTime = null;
 
-        this.duration = -1;
+        this.duration = 0;
 
         this.reason = "";
 
-        this.approverId = -1L;
+        this.approverId = null;
 
         this.approver = "";
 
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordEntity.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordEntity.java
index 02fcf65bce9af47f5cb06f1d134f00385b05830a..2bdbea09b58818c73e29df8e237cd2dc25868bc1 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordEntity.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordEntity.java
@@ -1,5 +1,4 @@
 package com.mortals.xhx.module.attendance.model;
-import java.util.List;
 import java.util.Date;
 import java.util.List;
 import java.util.ArrayList;
@@ -7,273 +6,88 @@ import com.fasterxml.jackson.annotation.JsonFormat;
 import com.mortals.framework.annotation.Excel;
 import com.mortals.framework.model.BaseEntityLong;
 import com.mortals.xhx.module.attendance.model.vo.AttendanceRecordVo;
-import com.mortals.xhx.module.attendance.model.AttendanceRecordDetailEntity;
+import lombok.Data;
 /**
-* 鑰冨嫟鎵撳崱璁板綍淇℃伅瀹炰綋瀵硅薄
-*
-* @author zxfei
-* @date 2023-04-07
-*/
-
+ * 鑰冨嫟鎵撳崱璁板綍淇℃伅瀹炰綋瀵硅薄
+ *
+ * @author zxfei
+ * @date 2023-07-18
+ */
+@Data
 public class AttendanceRecordEntity extends AttendanceRecordVo {
     private static final long serialVersionUID = 1L;
 
     /**
-    * 鍛樺伐ID
-    */
+     * 鍛樺伐ID
+     */
     private Long staffId;
     /**
-    * 鍛樺伐濮撳悕
-    */
+     * 鍛樺伐濮撳悕
+     */
     private String staffName;
     /**
-    * 宸ュ彿
-    */
+     * 宸ュ彿
+     */
     private String workNum;
     /**
-    * 鎵€灞為儴闂�
-    */
+     * 鎵€灞為儴闂�
+     */
     private Long deptId;
     /**
-    * 鎵€灞為儴闂ㄥ悕绉�
-    */
+     * 鎵€灞為儴闂ㄥ悕绉�
+     */
     private String deptName;
     /**
-    * 鑱屼綅ID
-    */
+     * 鑱屼綅ID
+     */
     private Long positionId;
     /**
-    * 鑱屼綅鍚嶇О
-    */
+     * 鑱屼綅鍚嶇О
+     */
     private String positionName;
     /**
-    * 鎵€灞炶€冨嫟缁処D
-    */
+     * 鎵€灞炶€冨嫟缁処D
+     */
     private Long attendanceGroupId;
     /**
-    * 鎵€灞炶€冨嫟缁勫悕绉�
-    */
+     * 鎵€灞炶€冨嫟缁勫悕绉�
+     */
     private String attendanceGroupName;
     /**
-    * 鐝ID
-    */
+     * 鐝ID
+     */
     private Long shiftsId;
     /**
-    * 鐝鍚嶇О
-    */
+     * 鐝鍚嶇О
+     */
     private String shiftsName;
     /**
-    * 鎵撳崱鏃ユ湡
-    */
+     * 鎵撳崱鏃ユ湡
+     */
     private Date attendanceDate;
     /**
-    * 澶囨敞
-    */
+     * 澶囨敞
+     */
     private String remark;
-
-    /**
-    * 鑰冨嫟鎵撳崱璁板綍璇︾粏淇℃伅淇℃伅
-    */
-    private List<AttendanceRecordDetailEntity> attendanceRecordDetailList=new ArrayList<>();;
-
-
-    public AttendanceRecordEntity(){}
-    /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return Long
-    */
-    public Long getStaffId(){
-        return staffId;
-    }
-    /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffId
-    */
-    public void setStaffId(Long staffId){
-        this.staffId = staffId;
-    }
-    /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return String
-    */
-    public String getStaffName(){
-        return staffName;
-    }
-    /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffName
-    */
-    public void setStaffName(String staffName){
-        this.staffName = staffName;
-    }
-    /**
-    * 鑾峰彇 宸ュ彿
-    * @return String
-    */
-    public String getWorkNum(){
-        return workNum;
-    }
-    /**
-    * 璁剧疆 宸ュ彿
-    * @param workNum
-    */
-    public void setWorkNum(String workNum){
-        this.workNum = workNum;
-    }
     /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return Long
-    */
-    public Long getDeptId(){
-        return deptId;
-    }
+     * 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer signInResult;
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptId
-    */
-    public void setDeptId(Long deptId){
-        this.deptId = deptId;
-    }
+     * 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer signOutResult;
     /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return String
-    */
-    public String getDeptName(){
-        return deptName;
-    }
+     * 鑰冨嫟绫诲瀷
+     */
+    private String attendType;
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptName
-    */
-    public void setDeptName(String deptName){
-        this.deptName = deptName;
-    }
-    /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return Long
-    */
-    public Long getPositionId(){
-        return positionId;
-    }
-    /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionId
-    */
-    public void setPositionId(Long positionId){
-        this.positionId = positionId;
-    }
-    /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return String
-    */
-    public String getPositionName(){
-        return positionName;
-    }
-    /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionName
-    */
-    public void setPositionName(String positionName){
-        this.positionName = positionName;
-    }
-    /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return Long
-    */
-    public Long getAttendanceGroupId(){
-        return attendanceGroupId;
-    }
-    /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupId
-    */
-    public void setAttendanceGroupId(Long attendanceGroupId){
-        this.attendanceGroupId = attendanceGroupId;
-    }
-    /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return String
-    */
-    public String getAttendanceGroupName(){
-        return attendanceGroupName;
-    }
-    /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupName
-    */
-    public void setAttendanceGroupName(String attendanceGroupName){
-        this.attendanceGroupName = attendanceGroupName;
-    }
-    /**
-    * 鑾峰彇 鐝ID
-    * @return Long
-    */
-    public Long getShiftsId(){
-        return shiftsId;
-    }
-    /**
-    * 璁剧疆 鐝ID
-    * @param shiftsId
-    */
-    public void setShiftsId(Long shiftsId){
-        this.shiftsId = shiftsId;
-    }
-    /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return String
-    */
-    public String getShiftsName(){
-        return shiftsName;
-    }
-    /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsName
-    */
-    public void setShiftsName(String shiftsName){
-        this.shiftsName = shiftsName;
-    }
-    /**
-    * 鑾峰彇 鎵撳崱鏃ユ湡
-    * @return Date
-    */
-    public Date getAttendanceDate(){
-        return attendanceDate;
-    }
-    /**
-    * 璁剧疆 鎵撳崱鏃ユ湡
-    * @param attendanceDate
-    */
-    public void setAttendanceDate(Date attendanceDate){
-        this.attendanceDate = attendanceDate;
-    }
-    /**
-    * 鑾峰彇 澶囨敞
-    * @return String
-    */
-    public String getRemark(){
-        return remark;
-    }
-    /**
-    * 璁剧疆 澶囨敞
-    * @param remark
-    */
-    public void setRemark(String remark){
-        this.remark = remark;
-    }
-
-
-    public List<AttendanceRecordDetailEntity> getAttendanceRecordDetailList(){
-      return attendanceRecordDetailList;
-    }
-
-    public void setAttendanceRecordDetailList(List<AttendanceRecordDetailEntity> attendanceRecordDetailList){
-        this.attendanceRecordDetailList = attendanceRecordDetailList;
-    }
-
-
+     * 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer punchResult;
     @Override
     public int hashCode() {
-         return this.getId().hashCode();
+        return this.getId().hashCode();
     }
     @Override
     public boolean equals(Object obj) {
@@ -281,56 +95,46 @@ public class AttendanceRecordEntity extends AttendanceRecordVo {
         if (obj instanceof AttendanceRecordEntity) {
             AttendanceRecordEntity tmp = (AttendanceRecordEntity) obj;
             if (this.getId() == tmp.getId()) {
-                 return true;
+                return true;
             }
         }
         return false;
     }
 
-    public String toString(){
-        StringBuilder sb = new StringBuilder("");
-        sb.append(",staffId:").append(getStaffId());
-        sb.append(",staffName:").append(getStaffName());
-        sb.append(",workNum:").append(getWorkNum());
-        sb.append(",deptId:").append(getDeptId());
-        sb.append(",deptName:").append(getDeptName());
-        sb.append(",positionId:").append(getPositionId());
-        sb.append(",positionName:").append(getPositionName());
-        sb.append(",attendanceGroupId:").append(getAttendanceGroupId());
-        sb.append(",attendanceGroupName:").append(getAttendanceGroupName());
-        sb.append(",shiftsId:").append(getShiftsId());
-        sb.append(",shiftsName:").append(getShiftsName());
-        sb.append(",attendanceDate:").append(getAttendanceDate());
-        sb.append(",remark:").append(getRemark());
-        return sb.toString();
-    }
-
     public void initAttrValue(){
 
-            this.staffId = null;
+        this.staffId = -1L;
+
+        this.staffName = "";
+
+        this.workNum = "";
+
+        this.deptId = -1L;
+
+        this.deptName = "";
 
-            this.staffName = "";
+        this.positionId = -1L;
 
-            this.workNum = "";
+        this.positionName = "";
 
-            this.deptId = null;
+        this.attendanceGroupId = -1L;
 
-            this.deptName = "";
+        this.attendanceGroupName = "";
 
-            this.positionId = null;
+        this.shiftsId = -1L;
 
-            this.positionName = "";
+        this.shiftsName = "";
 
-            this.attendanceGroupId = null;
+        this.attendanceDate = null;
 
-            this.attendanceGroupName = "";
+        this.remark = "";
 
-            this.shiftsId = null;
+        this.signInResult = 0;
 
-            this.shiftsName = "";
+        this.signOutResult = 0;
 
-            this.attendanceDate = null;
+        this.attendType = "0";
 
-            this.remark = "";
+        this.punchResult = 0;
     }
 }
\ No newline at end of file
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikEntity.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikEntity.java
index df14244d47d94baa9ef5cde1c37e811c16ba917d..68a7c91e6bc23921d9239885572f3b3d0ecd8844 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikEntity.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikEntity.java
@@ -1,5 +1,4 @@
 package com.mortals.xhx.module.attendance.model;
-
 import java.util.Date;
 import java.util.List;
 import java.util.ArrayList;
@@ -7,306 +6,105 @@ import com.fasterxml.jackson.annotation.JsonFormat;
 import com.mortals.framework.annotation.Excel;
 import com.mortals.framework.model.BaseEntityLong;
 import com.mortals.xhx.module.attendance.model.vo.AttendanceRecordHikVo;
+import lombok.Data;
 /**
-* 娴峰悍鑰冨嫟鎵撳崱璁板綍姹囨€讳俊鎭疄浣撳璞�
-*
-* @author zxfei
-* @date 2023-04-08
-*/
-
+ * 鍩虹鑰冨嫟鎵撳崱璁板綍姹囨€讳俊鎭疄浣撳璞�
+ *
+ * @author zxfei
+ * @date 2023-07-18
+ */
+@Data
 public class AttendanceRecordHikEntity extends AttendanceRecordHikVo {
     private static final long serialVersionUID = 1L;
 
     /**
-    * 鍛樺伐ID
-    */
+     * 鍛樺伐ID
+     */
     private Long staffId;
     /**
-    * 鍛樺伐濮撳悕
-    */
-    @Excel(name = "濮撳悕")
+     * 鍛樺伐濮撳悕
+     */
+    @Excel(name = "鍛樺伐濮撳悕")
     private String staffName;
     /**
-    * 宸ュ彿
-    */
+     * 宸ュ彿
+     */
     @Excel(name = "宸ュ彿")
     private String workNum;
     /**
-    * 鎵€灞為儴闂�
-    */
+     * 鎵€灞為儴闂�
+     */
     private Long deptId;
     /**
-    * 鎵€灞為儴闂ㄥ悕绉�
-    */
+     * 鎵€灞為儴闂ㄥ悕绉�
+     */
     @Excel(name = "鎵€灞為儴闂ㄥ悕绉�")
     private String deptName;
     /**
-    * 鑱屼綅ID
-    */
+     * 鑱屼綅ID
+     */
     private Long positionId;
     /**
-    * 鑱屼綅鍚嶇О
-    */
+     * 鑱屼綅鍚嶇О
+     */
     @Excel(name = "鑱屼綅鍚嶇О")
     private String positionName;
     /**
-    * 鎵€灞炶€冨嫟缁処D
-    */
+     * 鎵€灞炶€冨嫟缁処D
+     */
     private Long attendanceGroupId;
     /**
-    * 鎵€灞炶€冨嫟缁勫悕绉�
-    */
+     * 鎵€灞炶€冨嫟缁勫悕绉�
+     */
     @Excel(name = "鎵€灞炶€冨嫟缁勫悕绉�")
     private String attendanceGroupName;
     /**
-    * 鐝ID
-    */
+     * 鐝ID
+     */
     private Long shiftsId;
     /**
-    * 鐝鍚嶇О
-    */
+     * 鐝鍚嶇О
+     */
     @Excel(name = "鐝鍚嶇О")
     private String shiftsName;
     /**
-    * 鑰冨嫟鏃ユ湡
-    */
-    @Excel(name = "鑰冨嫟鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+     * 鑰冨嫟鏃ユ湡
+     */
+    @Excel(name = "鑰冨嫟鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
     private Date attendanceDate;
     /**
-    * 鑰冨嫟鐐瑰悕绉�
-    */
+     * 鑰冨嫟鐐瑰悕绉�
+     */
     @Excel(name = "鑰冨嫟鐐瑰悕绉�")
     private String attendanceAddress;
     /**
-    * 浜嬩欢婧�
-    */
+     * 浜嬩欢婧�
+     */
     @Excel(name = "浜嬩欢婧�")
     private String eventSource;
     /**
-    * 澶囨敞
-    */
+     * 澶囨敞
+     */
     private String remark;
-
-
-
-    public AttendanceRecordHikEntity(){}
-    /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return Long
-    */
-    public Long getStaffId(){
-        return staffId;
-    }
-    /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffId
-    */
-    public void setStaffId(Long staffId){
-        this.staffId = staffId;
-    }
-    /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return String
-    */
-    public String getStaffName(){
-        return staffName;
-    }
-    /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffName
-    */
-    public void setStaffName(String staffName){
-        this.staffName = staffName;
-    }
-    /**
-    * 鑾峰彇 宸ュ彿
-    * @return String
-    */
-    public String getWorkNum(){
-        return workNum;
-    }
-    /**
-    * 璁剧疆 宸ュ彿
-    * @param workNum
-    */
-    public void setWorkNum(String workNum){
-        this.workNum = workNum;
-    }
-    /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return Long
-    */
-    public Long getDeptId(){
-        return deptId;
-    }
-    /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptId
-    */
-    public void setDeptId(Long deptId){
-        this.deptId = deptId;
-    }
-    /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return String
-    */
-    public String getDeptName(){
-        return deptName;
-    }
-    /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptName
-    */
-    public void setDeptName(String deptName){
-        this.deptName = deptName;
-    }
-    /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return Long
-    */
-    public Long getPositionId(){
-        return positionId;
-    }
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionId
-    */
-    public void setPositionId(Long positionId){
-        this.positionId = positionId;
-    }
+     * 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer signInResult;
     /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return String
-    */
-    public String getPositionName(){
-        return positionName;
-    }
+     * 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer signOutResult;
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionName
-    */
-    public void setPositionName(String positionName){
-        this.positionName = positionName;
-    }
-    /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return Long
-    */
-    public Long getAttendanceGroupId(){
-        return attendanceGroupId;
-    }
-    /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupId
-    */
-    public void setAttendanceGroupId(Long attendanceGroupId){
-        this.attendanceGroupId = attendanceGroupId;
-    }
-    /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return String
-    */
-    public String getAttendanceGroupName(){
-        return attendanceGroupName;
-    }
+     * 鑰冨嫟绫诲瀷
+     */
+    private String attendType;
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupName
-    */
-    public void setAttendanceGroupName(String attendanceGroupName){
-        this.attendanceGroupName = attendanceGroupName;
-    }
-    /**
-    * 鑾峰彇 鐝ID
-    * @return Long
-    */
-    public Long getShiftsId(){
-        return shiftsId;
-    }
-    /**
-    * 璁剧疆 鐝ID
-    * @param shiftsId
-    */
-    public void setShiftsId(Long shiftsId){
-        this.shiftsId = shiftsId;
-    }
-    /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return String
-    */
-    public String getShiftsName(){
-        return shiftsName;
-    }
-    /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsName
-    */
-    public void setShiftsName(String shiftsName){
-        this.shiftsName = shiftsName;
-    }
-    /**
-    * 鑾峰彇 鑰冨嫟鏃ユ湡
-    * @return Date
-    */
-    public Date getAttendanceDate(){
-        return attendanceDate;
-    }
-    /**
-    * 璁剧疆 鑰冨嫟鏃ユ湡
-    * @param attendanceDate
-    */
-    public void setAttendanceDate(Date attendanceDate){
-        this.attendanceDate = attendanceDate;
-    }
-    /**
-    * 鑾峰彇 鑰冨嫟鐐瑰悕绉�
-    * @return String
-    */
-    public String getAttendanceAddress(){
-        return attendanceAddress;
-    }
-    /**
-    * 璁剧疆 鑰冨嫟鐐瑰悕绉�
-    * @param attendanceAddress
-    */
-    public void setAttendanceAddress(String attendanceAddress){
-        this.attendanceAddress = attendanceAddress;
-    }
-    /**
-    * 鑾峰彇 浜嬩欢婧�
-    * @return String
-    */
-    public String getEventSource(){
-        return eventSource;
-    }
-    /**
-    * 璁剧疆 浜嬩欢婧�
-    * @param eventSource
-    */
-    public void setEventSource(String eventSource){
-        this.eventSource = eventSource;
-    }
-    /**
-    * 鑾峰彇 澶囨敞
-    * @return String
-    */
-    public String getRemark(){
-        return remark;
-    }
-    /**
-    * 璁剧疆 澶囨敞
-    * @param remark
-    */
-    public void setRemark(String remark){
-        this.remark = remark;
-    }
-
-
-
-
+     * 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     */
+    private Integer punchResult;
     @Override
     public int hashCode() {
-         return this.getId().hashCode();
+        return this.getId().hashCode();
     }
     @Override
     public boolean equals(Object obj) {
@@ -314,62 +112,50 @@ public class AttendanceRecordHikEntity extends AttendanceRecordHikVo {
         if (obj instanceof AttendanceRecordHikEntity) {
             AttendanceRecordHikEntity tmp = (AttendanceRecordHikEntity) obj;
             if (this.getId() == tmp.getId()) {
-                 return true;
+                return true;
             }
         }
         return false;
     }
 
-    public String toString(){
-        StringBuilder sb = new StringBuilder("");
-        sb.append(",staffId:").append(getStaffId());
-        sb.append(",staffName:").append(getStaffName());
-        sb.append(",workNum:").append(getWorkNum());
-        sb.append(",deptId:").append(getDeptId());
-        sb.append(",deptName:").append(getDeptName());
-        sb.append(",positionId:").append(getPositionId());
-        sb.append(",positionName:").append(getPositionName());
-        sb.append(",attendanceGroupId:").append(getAttendanceGroupId());
-        sb.append(",attendanceGroupName:").append(getAttendanceGroupName());
-        sb.append(",shiftsId:").append(getShiftsId());
-        sb.append(",shiftsName:").append(getShiftsName());
-        sb.append(",attendanceDate:").append(getAttendanceDate());
-        sb.append(",attendanceAddress:").append(getAttendanceAddress());
-        sb.append(",eventSource:").append(getEventSource());
-        sb.append(",remark:").append(getRemark());
-        return sb.toString();
-    }
-
     public void initAttrValue(){
 
-            this.staffId = null;
+        this.staffId = -1L;
+
+        this.staffName = "";
+
+        this.workNum = "";
+
+        this.deptId = -1L;
+
+        this.deptName = "";
 
-            this.staffName = "";
+        this.positionId = -1L;
 
-            this.workNum = "";
+        this.positionName = "";
 
-            this.deptId = null;
+        this.attendanceGroupId = -1L;
 
-            this.deptName = "";
+        this.attendanceGroupName = "";
 
-            this.positionId = null;
+        this.shiftsId = -1L;
 
-            this.positionName = "";
+        this.shiftsName = "";
 
-            this.attendanceGroupId = null;
+        this.attendanceDate = null;
 
-            this.attendanceGroupName = "";
+        this.attendanceAddress = "";
 
-            this.shiftsId = null;
+        this.eventSource = "";
 
-            this.shiftsName = "";
+        this.remark = "";
 
-            this.attendanceDate = null;
+        this.signInResult = 0;
 
-            this.attendanceAddress = "";
+        this.signOutResult = 0;
 
-            this.eventSource = "";
+        this.attendType = "";
 
-            this.remark = "";
+        this.punchResult = 0;
     }
-}
+}
\ No newline at end of file
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikQuery.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikQuery.java
index 226d55a105d1c7aa536842e1c2de9679ccfc10de..69b4d24f250f51261acbd25d6ea09f6f26864a71 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikQuery.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordHikQuery.java
@@ -4,11 +4,11 @@ import java.util.Date;
 import java.util.List;
 import com.mortals.xhx.module.attendance.model.AttendanceRecordHikEntity;
 /**
-* 娴峰悍鑰冨嫟鎵撳崱璁板綍姹囨€讳俊鎭煡璇㈠璞�
-*
-* @author zxfei
-* @date 2023-04-08
-*/
+ * 鍩虹鑰冨嫟鎵撳崱璁板綍姹囨€讳俊鎭煡璇㈠璞�
+ *
+ * @author zxfei
+ * @date 2023-07-18
+ */
 public class AttendanceRecordHikQuery extends AttendanceRecordHikEntity {
     /** 寮€濮� 搴忓彿锛屼富閿紝鑷闀� */
     private Long idStart;
@@ -193,6 +193,56 @@ public class AttendanceRecordHikQuery extends AttendanceRecordHikEntity {
     /** 缁撴潫 鏇存柊鏃堕棿 */
     private String updateTimeEnd;
 
+    /** 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultStart;
+
+    /** 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultEnd;
+
+    /** 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultIncrement;
+
+    /** 绛惧埌缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> signInResultList;
+
+    /** 绛惧埌缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> signInResultNotList;
+
+    /** 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultStart;
+
+    /** 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultEnd;
+
+    /** 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultIncrement;
+
+    /** 绛鹃€€缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> signOutResultList;
+
+    /** 绛鹃€€缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> signOutResultNotList;
+
+    /** 鑰冨嫟绫诲瀷 */
+    private List<String> attendTypeList;
+
+    /** 鑰冨嫟绫诲瀷鎺掗櫎鍒楄〃 */
+    private List <String> attendTypeNotList;
+    /** 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultStart;
+
+    /** 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultEnd;
+
+    /** 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultIncrement;
+
+    /** 鎵撳崱缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> punchResultList;
+
+    /** 鎵撳崱缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> punchResultNotList;
+
     /** OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
     private List<AttendanceRecordHikQuery> orConditionList;
 
@@ -202,1671 +252,2127 @@ public class AttendanceRecordHikQuery extends AttendanceRecordHikEntity {
     public AttendanceRecordHikQuery(){}
 
     /**
-    * 鑾峰彇 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @return idStart
-    */
+     * 鑾峰彇 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @return idStart
+     */
     public Long getIdStart(){
         return this.idStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @param idStart
-    */
+     * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @param idStart
+     */
     public void setIdStart(Long idStart){
         this.idStart = idStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @return $idEnd
-    */
+     * 鑾峰彇 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @return $idEnd
+     */
     public Long getIdEnd(){
         return this.idEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @param idEnd
-    */
+     * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @param idEnd
+     */
     public void setIdEnd(Long idEnd){
         this.idEnd = idEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @return idIncrement
-    */
+     * 鑾峰彇 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @return idIncrement
+     */
     public Long getIdIncrement(){
         return this.idIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @param idIncrement
-    */
+     * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @param idIncrement
+     */
     public void setIdIncrement(Long idIncrement){
         this.idIncrement = idIncrement;
     }
 
     /**
-    * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
-    * @return idList
-    */
+     * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
+     * @return idList
+     */
     public List<Long> getIdList(){
         return this.idList;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idList
+     */
     public void setIdList(List<Long> idList){
         this.idList = idList;
     }
 
     /**
-    * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
-    * @return idNotList
-    */
+     * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
+     * @return idNotList
+     */
     public List<Long> getIdNotList(){
         return this.idNotList;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idNotList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idNotList
+     */
     public void setIdNotList(List<Long> idNotList){
         this.idNotList = idNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鍛樺伐ID
-    * @return staffIdStart
-    */
+     * 鑾峰彇 寮€濮� 鍛樺伐ID
+     * @return staffIdStart
+     */
     public Long getStaffIdStart(){
         return this.staffIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍛樺伐ID
-    * @param staffIdStart
-    */
+     * 璁剧疆 寮€濮� 鍛樺伐ID
+     * @param staffIdStart
+     */
     public void setStaffIdStart(Long staffIdStart){
         this.staffIdStart = staffIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍛樺伐ID
-    * @return $staffIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鍛樺伐ID
+     * @return $staffIdEnd
+     */
     public Long getStaffIdEnd(){
         return this.staffIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍛樺伐ID
-    * @param staffIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍛樺伐ID
+     * @param staffIdEnd
+     */
     public void setStaffIdEnd(Long staffIdEnd){
         this.staffIdEnd = staffIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鍛樺伐ID
-    * @return staffIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鍛樺伐ID
+     * @return staffIdIncrement
+     */
     public Long getStaffIdIncrement(){
         return this.staffIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍛樺伐ID
-    * @param staffIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍛樺伐ID
+     * @param staffIdIncrement
+     */
     public void setStaffIdIncrement(Long staffIdIncrement){
         this.staffIdIncrement = staffIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return staffIdList
-    */
+     * 鑾峰彇 鍛樺伐ID
+     * @return staffIdList
+     */
     public List<Long> getStaffIdList(){
         return this.staffIdList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdList
+     */
     public void setStaffIdList(List<Long> staffIdList){
         this.staffIdList = staffIdList;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return staffIdNotList
-    */
+     * 鑾峰彇 鍛樺伐ID
+     * @return staffIdNotList
+     */
     public List<Long> getStaffIdNotList(){
         return this.staffIdNotList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdNotList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdNotList
+     */
     public void setStaffIdNotList(List<Long> staffIdNotList){
         this.staffIdNotList = staffIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return staffNameList
-    */
+     * 鑾峰彇 鍛樺伐濮撳悕
+     * @return staffNameList
+     */
     public List<String> getStaffNameList(){
         return this.staffNameList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameList
+     */
     public void setStaffNameList(List<String> staffNameList){
         this.staffNameList = staffNameList;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return staffNameNotList
-    */
+     * 鑾峰彇 鍛樺伐濮撳悕
+     * @return staffNameNotList
+     */
     public List<String> getStaffNameNotList(){
         return this.staffNameNotList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameNotList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameNotList
+     */
     public void setStaffNameNotList(List<String> staffNameNotList){
         this.staffNameNotList = staffNameNotList;
     }
 
     /**
-    * 鑾峰彇 宸ュ彿
-    * @return workNumList
-    */
+     * 鑾峰彇 宸ュ彿
+     * @return workNumList
+     */
     public List<String> getWorkNumList(){
         return this.workNumList;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumList
+     */
     public void setWorkNumList(List<String> workNumList){
         this.workNumList = workNumList;
     }
 
     /**
-    * 鑾峰彇 宸ュ彿
-    * @return workNumNotList
-    */
+     * 鑾峰彇 宸ュ彿
+     * @return workNumNotList
+     */
     public List<String> getWorkNumNotList(){
         return this.workNumNotList;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumNotList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumNotList
+     */
     public void setWorkNumNotList(List<String> workNumNotList){
         this.workNumNotList = workNumNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鎵€灞為儴闂�
-    * @return deptIdStart
-    */
+     * 鑾峰彇 寮€濮� 鎵€灞為儴闂�
+     * @return deptIdStart
+     */
     public Long getDeptIdStart(){
         return this.deptIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鎵€灞為儴闂�
-    * @param deptIdStart
-    */
+     * 璁剧疆 寮€濮� 鎵€灞為儴闂�
+     * @param deptIdStart
+     */
     public void setDeptIdStart(Long deptIdStart){
         this.deptIdStart = deptIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鎵€灞為儴闂�
-    * @return $deptIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鎵€灞為儴闂�
+     * @return $deptIdEnd
+     */
     public Long getDeptIdEnd(){
         return this.deptIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞為儴闂�
-    * @param deptIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞為儴闂�
+     * @param deptIdEnd
+     */
     public void setDeptIdEnd(Long deptIdEnd){
         this.deptIdEnd = deptIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鎵€灞為儴闂�
-    * @return deptIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鎵€灞為儴闂�
+     * @return deptIdIncrement
+     */
     public Long getDeptIdIncrement(){
         return this.deptIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞為儴闂�
-    * @param deptIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞為儴闂�
+     * @param deptIdIncrement
+     */
     public void setDeptIdIncrement(Long deptIdIncrement){
         this.deptIdIncrement = deptIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return deptIdList
-    */
+     * 鑾峰彇 鎵€灞為儴闂�
+     * @return deptIdList
+     */
     public List<Long> getDeptIdList(){
         return this.deptIdList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdList
+     */
     public void setDeptIdList(List<Long> deptIdList){
         this.deptIdList = deptIdList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return deptIdNotList
-    */
+     * 鑾峰彇 鎵€灞為儴闂�
+     * @return deptIdNotList
+     */
     public List<Long> getDeptIdNotList(){
         return this.deptIdNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdNotList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdNotList
+     */
     public void setDeptIdNotList(List<Long> deptIdNotList){
         this.deptIdNotList = deptIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return deptNameList
-    */
+     * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
+     * @return deptNameList
+     */
     public List<String> getDeptNameList(){
         return this.deptNameList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameList
+     */
     public void setDeptNameList(List<String> deptNameList){
         this.deptNameList = deptNameList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return deptNameNotList
-    */
+     * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
+     * @return deptNameNotList
+     */
     public List<String> getDeptNameNotList(){
         return this.deptNameNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameNotList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameNotList
+     */
     public void setDeptNameNotList(List<String> deptNameNotList){
         this.deptNameNotList = deptNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鑱屼綅ID
-    * @return positionIdStart
-    */
+     * 鑾峰彇 寮€濮� 鑱屼綅ID
+     * @return positionIdStart
+     */
     public Long getPositionIdStart(){
         return this.positionIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鑱屼綅ID
-    * @param positionIdStart
-    */
+     * 璁剧疆 寮€濮� 鑱屼綅ID
+     * @param positionIdStart
+     */
     public void setPositionIdStart(Long positionIdStart){
         this.positionIdStart = positionIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鑱屼綅ID
-    * @return $positionIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鑱屼綅ID
+     * @return $positionIdEnd
+     */
     public Long getPositionIdEnd(){
         return this.positionIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鑱屼綅ID
-    * @param positionIdEnd
-    */
+     * 璁剧疆 缁撴潫 鑱屼綅ID
+     * @param positionIdEnd
+     */
     public void setPositionIdEnd(Long positionIdEnd){
         this.positionIdEnd = positionIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鑱屼綅ID
-    * @return positionIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鑱屼綅ID
+     * @return positionIdIncrement
+     */
     public Long getPositionIdIncrement(){
         return this.positionIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鑱屼綅ID
-    * @param positionIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鑱屼綅ID
+     * @param positionIdIncrement
+     */
     public void setPositionIdIncrement(Long positionIdIncrement){
         this.positionIdIncrement = positionIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return positionIdList
-    */
+     * 鑾峰彇 鑱屼綅ID
+     * @return positionIdList
+     */
     public List<Long> getPositionIdList(){
         return this.positionIdList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdList
+     */
     public void setPositionIdList(List<Long> positionIdList){
         this.positionIdList = positionIdList;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return positionIdNotList
-    */
+     * 鑾峰彇 鑱屼綅ID
+     * @return positionIdNotList
+     */
     public List<Long> getPositionIdNotList(){
         return this.positionIdNotList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdNotList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdNotList
+     */
     public void setPositionIdNotList(List<Long> positionIdNotList){
         this.positionIdNotList = positionIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return positionNameList
-    */
+     * 鑾峰彇 鑱屼綅鍚嶇О
+     * @return positionNameList
+     */
     public List<String> getPositionNameList(){
         return this.positionNameList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameList
+     */
     public void setPositionNameList(List<String> positionNameList){
         this.positionNameList = positionNameList;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return positionNameNotList
-    */
+     * 鑾峰彇 鑱屼綅鍚嶇О
+     * @return positionNameNotList
+     */
     public List<String> getPositionNameNotList(){
         return this.positionNameNotList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameNotList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameNotList
+     */
     public void setPositionNameNotList(List<String> positionNameNotList){
         this.positionNameNotList = positionNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdStart
-    */
+     * 鑾峰彇 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdStart
+     */
     public Long getAttendanceGroupIdStart(){
         return this.attendanceGroupIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdStart
-    */
+     * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdStart
+     */
     public void setAttendanceGroupIdStart(Long attendanceGroupIdStart){
         this.attendanceGroupIdStart = attendanceGroupIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @return $attendanceGroupIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @return $attendanceGroupIdEnd
+     */
     public Long getAttendanceGroupIdEnd(){
         return this.attendanceGroupIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdEnd
+     */
     public void setAttendanceGroupIdEnd(Long attendanceGroupIdEnd){
         this.attendanceGroupIdEnd = attendanceGroupIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdIncrement
+     */
     public Long getAttendanceGroupIdIncrement(){
         return this.attendanceGroupIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdIncrement
+     */
     public void setAttendanceGroupIdIncrement(Long attendanceGroupIdIncrement){
         this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdList
+     */
     public List<Long> getAttendanceGroupIdList(){
         return this.attendanceGroupIdList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdList
+     */
     public void setAttendanceGroupIdList(List<Long> attendanceGroupIdList){
         this.attendanceGroupIdList = attendanceGroupIdList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdNotList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdNotList
+     */
     public List<Long> getAttendanceGroupIdNotList(){
         return this.attendanceGroupIdNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdNotList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdNotList
+     */
     public void setAttendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
         this.attendanceGroupIdNotList = attendanceGroupIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return attendanceGroupNameList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
+     * @return attendanceGroupNameList
+     */
     public List<String> getAttendanceGroupNameList(){
         return this.attendanceGroupNameList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameList
+     */
     public void setAttendanceGroupNameList(List<String> attendanceGroupNameList){
         this.attendanceGroupNameList = attendanceGroupNameList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return attendanceGroupNameNotList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
+     * @return attendanceGroupNameNotList
+     */
     public List<String> getAttendanceGroupNameNotList(){
         return this.attendanceGroupNameNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameNotList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameNotList
+     */
     public void setAttendanceGroupNameNotList(List<String> attendanceGroupNameNotList){
         this.attendanceGroupNameNotList = attendanceGroupNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鐝ID
-    * @return shiftsIdStart
-    */
+     * 鑾峰彇 寮€濮� 鐝ID
+     * @return shiftsIdStart
+     */
     public Long getShiftsIdStart(){
         return this.shiftsIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鐝ID
-    * @param shiftsIdStart
-    */
+     * 璁剧疆 寮€濮� 鐝ID
+     * @param shiftsIdStart
+     */
     public void setShiftsIdStart(Long shiftsIdStart){
         this.shiftsIdStart = shiftsIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鐝ID
-    * @return $shiftsIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鐝ID
+     * @return $shiftsIdEnd
+     */
     public Long getShiftsIdEnd(){
         return this.shiftsIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鐝ID
-    * @param shiftsIdEnd
-    */
+     * 璁剧疆 缁撴潫 鐝ID
+     * @param shiftsIdEnd
+     */
     public void setShiftsIdEnd(Long shiftsIdEnd){
         this.shiftsIdEnd = shiftsIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鐝ID
-    * @return shiftsIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鐝ID
+     * @return shiftsIdIncrement
+     */
     public Long getShiftsIdIncrement(){
         return this.shiftsIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鐝ID
-    * @param shiftsIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鐝ID
+     * @param shiftsIdIncrement
+     */
     public void setShiftsIdIncrement(Long shiftsIdIncrement){
         this.shiftsIdIncrement = shiftsIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鐝ID
-    * @return shiftsIdList
-    */
+     * 鑾峰彇 鐝ID
+     * @return shiftsIdList
+     */
     public List<Long> getShiftsIdList(){
         return this.shiftsIdList;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdList
+     */
     public void setShiftsIdList(List<Long> shiftsIdList){
         this.shiftsIdList = shiftsIdList;
     }
 
     /**
-    * 鑾峰彇 鐝ID
-    * @return shiftsIdNotList
-    */
+     * 鑾峰彇 鐝ID
+     * @return shiftsIdNotList
+     */
     public List<Long> getShiftsIdNotList(){
         return this.shiftsIdNotList;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdNotList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdNotList
+     */
     public void setShiftsIdNotList(List<Long> shiftsIdNotList){
         this.shiftsIdNotList = shiftsIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return shiftsNameList
-    */
+     * 鑾峰彇 鐝鍚嶇О
+     * @return shiftsNameList
+     */
     public List<String> getShiftsNameList(){
         return this.shiftsNameList;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameList
+     */
     public void setShiftsNameList(List<String> shiftsNameList){
         this.shiftsNameList = shiftsNameList;
     }
 
     /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return shiftsNameNotList
-    */
+     * 鑾峰彇 鐝鍚嶇О
+     * @return shiftsNameNotList
+     */
     public List<String> getShiftsNameNotList(){
         return this.shiftsNameNotList;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameNotList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameNotList
+     */
     public void setShiftsNameNotList(List<String> shiftsNameNotList){
         this.shiftsNameNotList = shiftsNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鑰冨嫟鏃ユ湡
-    * @return attendanceDateStart
-    */
+     * 鑾峰彇 寮€濮� 鑰冨嫟鏃ユ湡
+     * @return attendanceDateStart
+     */
     public String getAttendanceDateStart(){
         return this.attendanceDateStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鑰冨嫟鏃ユ湡
-    * @param attendanceDateStart
-    */
+     * 璁剧疆 寮€濮� 鑰冨嫟鏃ユ湡
+     * @param attendanceDateStart
+     */
     public void setAttendanceDateStart(String attendanceDateStart){
         this.attendanceDateStart = attendanceDateStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鑰冨嫟鏃ユ湡
-    * @return attendanceDateEnd
-    */
+     * 鑾峰彇 缁撴潫 鑰冨嫟鏃ユ湡
+     * @return attendanceDateEnd
+     */
     public String getAttendanceDateEnd(){
         return this.attendanceDateEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鑰冨嫟鏃ユ湡
-    * @param attendanceDateEnd
-    */
+     * 璁剧疆 缁撴潫 鑰冨嫟鏃ユ湡
+     * @param attendanceDateEnd
+     */
     public void setAttendanceDateEnd(String attendanceDateEnd){
         this.attendanceDateEnd = attendanceDateEnd;
     }
 
     /**
-    * 鑾峰彇 鑰冨嫟鐐瑰悕绉�
-    * @return attendanceAddressList
-    */
+     * 鑾峰彇 鑰冨嫟鐐瑰悕绉�
+     * @return attendanceAddressList
+     */
     public List<String> getAttendanceAddressList(){
         return this.attendanceAddressList;
     }
 
     /**
-    * 璁剧疆 鑰冨嫟鐐瑰悕绉�
-    * @param attendanceAddressList
-    */
+     * 璁剧疆 鑰冨嫟鐐瑰悕绉�
+     * @param attendanceAddressList
+     */
     public void setAttendanceAddressList(List<String> attendanceAddressList){
         this.attendanceAddressList = attendanceAddressList;
     }
 
     /**
-    * 鑾峰彇 鑰冨嫟鐐瑰悕绉�
-    * @return attendanceAddressNotList
-    */
+     * 鑾峰彇 鑰冨嫟鐐瑰悕绉�
+     * @return attendanceAddressNotList
+     */
     public List<String> getAttendanceAddressNotList(){
         return this.attendanceAddressNotList;
     }
 
     /**
-    * 璁剧疆 鑰冨嫟鐐瑰悕绉�
-    * @param attendanceAddressNotList
-    */
+     * 璁剧疆 鑰冨嫟鐐瑰悕绉�
+     * @param attendanceAddressNotList
+     */
     public void setAttendanceAddressNotList(List<String> attendanceAddressNotList){
         this.attendanceAddressNotList = attendanceAddressNotList;
     }
 
     /**
-    * 鑾峰彇 浜嬩欢婧�
-    * @return eventSourceList
-    */
+     * 鑾峰彇 浜嬩欢婧�
+     * @return eventSourceList
+     */
     public List<String> getEventSourceList(){
         return this.eventSourceList;
     }
 
     /**
-    * 璁剧疆 浜嬩欢婧�
-    * @param eventSourceList
-    */
+     * 璁剧疆 浜嬩欢婧�
+     * @param eventSourceList
+     */
     public void setEventSourceList(List<String> eventSourceList){
         this.eventSourceList = eventSourceList;
     }
 
     /**
-    * 鑾峰彇 浜嬩欢婧�
-    * @return eventSourceNotList
-    */
+     * 鑾峰彇 浜嬩欢婧�
+     * @return eventSourceNotList
+     */
     public List<String> getEventSourceNotList(){
         return this.eventSourceNotList;
     }
 
     /**
-    * 璁剧疆 浜嬩欢婧�
-    * @param eventSourceNotList
-    */
+     * 璁剧疆 浜嬩欢婧�
+     * @param eventSourceNotList
+     */
     public void setEventSourceNotList(List<String> eventSourceNotList){
         this.eventSourceNotList = eventSourceNotList;
     }
 
     /**
-    * 鑾峰彇 澶囨敞
-    * @return remarkList
-    */
+     * 鑾峰彇 澶囨敞
+     * @return remarkList
+     */
     public List<String> getRemarkList(){
         return this.remarkList;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkList
+     */
     public void setRemarkList(List<String> remarkList){
         this.remarkList = remarkList;
     }
 
     /**
-    * 鑾峰彇 澶囨敞
-    * @return remarkNotList
-    */
+     * 鑾峰彇 澶囨敞
+     * @return remarkNotList
+     */
     public List<String> getRemarkNotList(){
         return this.remarkNotList;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkNotList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkNotList
+     */
     public void setRemarkNotList(List<String> remarkNotList){
         this.remarkNotList = remarkNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @return createUserIdStart
-    */
+     * 鑾峰彇 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @return createUserIdStart
+     */
     public Long getCreateUserIdStart(){
         return this.createUserIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @param createUserIdStart
-    */
+     * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @param createUserIdStart
+     */
     public void setCreateUserIdStart(Long createUserIdStart){
         this.createUserIdStart = createUserIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @return $createUserIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @return $createUserIdEnd
+     */
     public Long getCreateUserIdEnd(){
         return this.createUserIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @param createUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @param createUserIdEnd
+     */
     public void setCreateUserIdEnd(Long createUserIdEnd){
         this.createUserIdEnd = createUserIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @return createUserIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @return createUserIdIncrement
+     */
     public Long getCreateUserIdIncrement(){
         return this.createUserIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @param createUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @param createUserIdIncrement
+     */
     public void setCreateUserIdIncrement(Long createUserIdIncrement){
         this.createUserIdIncrement = createUserIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鍒涘缓鐢ㄦ埛
-    * @return createUserIdList
-    */
+     * 鑾峰彇 鍒涘缓鐢ㄦ埛
+     * @return createUserIdList
+     */
     public List<Long> getCreateUserIdList(){
         return this.createUserIdList;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdList
+     */
     public void setCreateUserIdList(List<Long> createUserIdList){
         this.createUserIdList = createUserIdList;
     }
 
     /**
-    * 鑾峰彇 鍒涘缓鐢ㄦ埛
-    * @return createUserIdNotList
-    */
+     * 鑾峰彇 鍒涘缓鐢ㄦ埛
+     * @return createUserIdNotList
+     */
     public List<Long> getCreateUserIdNotList(){
         return this.createUserIdNotList;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdNotList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdNotList
+     */
     public void setCreateUserIdNotList(List<Long> createUserIdNotList){
         this.createUserIdNotList = createUserIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鍒涘缓鏃堕棿
-    * @return createTimeStart
-    */
+     * 鑾峰彇 寮€濮� 鍒涘缓鏃堕棿
+     * @return createTimeStart
+     */
     public String getCreateTimeStart(){
         return this.createTimeStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍒涘缓鏃堕棿
-    * @param createTimeStart
-    */
+     * 璁剧疆 寮€濮� 鍒涘缓鏃堕棿
+     * @param createTimeStart
+     */
     public void setCreateTimeStart(String createTimeStart){
         this.createTimeStart = createTimeStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍒涘缓鏃堕棿
-    * @return createTimeEnd
-    */
+     * 鑾峰彇 缁撴潫 鍒涘缓鏃堕棿
+     * @return createTimeEnd
+     */
     public String getCreateTimeEnd(){
         return this.createTimeEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鏃堕棿
-    * @param createTimeEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鏃堕棿
+     * @param createTimeEnd
+     */
     public void setCreateTimeEnd(String createTimeEnd){
         this.createTimeEnd = createTimeEnd;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鏇存柊鐢ㄦ埛
-    * @return updateUserIdStart
-    */
+     * 鑾峰彇 寮€濮� 鏇存柊鐢ㄦ埛
+     * @return updateUserIdStart
+     */
     public Long getUpdateUserIdStart(){
         return this.updateUserIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
-    * @param updateUserIdStart
-    */
+     * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
+     * @param updateUserIdStart
+     */
     public void setUpdateUserIdStart(Long updateUserIdStart){
         this.updateUserIdStart = updateUserIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鏇存柊鐢ㄦ埛
-    * @return $updateUserIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鏇存柊鐢ㄦ埛
+     * @return $updateUserIdEnd
+     */
     public Long getUpdateUserIdEnd(){
         return this.updateUserIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
-    * @param updateUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
+     * @param updateUserIdEnd
+     */
     public void setUpdateUserIdEnd(Long updateUserIdEnd){
         this.updateUserIdEnd = updateUserIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鏇存柊鐢ㄦ埛
-    * @return updateUserIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鏇存柊鐢ㄦ埛
+     * @return updateUserIdIncrement
+     */
     public Long getUpdateUserIdIncrement(){
         return this.updateUserIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
-    * @param updateUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
+     * @param updateUserIdIncrement
+     */
     public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
         this.updateUserIdIncrement = updateUserIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鏇存柊鐢ㄦ埛
-    * @return updateUserIdList
-    */
+     * 鑾峰彇 鏇存柊鐢ㄦ埛
+     * @return updateUserIdList
+     */
     public List<Long> getUpdateUserIdList(){
         return this.updateUserIdList;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdList
+     */
     public void setUpdateUserIdList(List<Long> updateUserIdList){
         this.updateUserIdList = updateUserIdList;
     }
 
     /**
-    * 鑾峰彇 鏇存柊鐢ㄦ埛
-    * @return updateUserIdNotList
-    */
+     * 鑾峰彇 鏇存柊鐢ㄦ埛
+     * @return updateUserIdNotList
+     */
     public List<Long> getUpdateUserIdNotList(){
         return this.updateUserIdNotList;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdNotList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdNotList
+     */
     public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
         this.updateUserIdNotList = updateUserIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鏇存柊鏃堕棿
-    * @return updateTimeStart
-    */
+     * 鑾峰彇 寮€濮� 鏇存柊鏃堕棿
+     * @return updateTimeStart
+     */
     public String getUpdateTimeStart(){
         return this.updateTimeStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鏇存柊鏃堕棿
-    * @param updateTimeStart
-    */
+     * 璁剧疆 寮€濮� 鏇存柊鏃堕棿
+     * @param updateTimeStart
+     */
     public void setUpdateTimeStart(String updateTimeStart){
         this.updateTimeStart = updateTimeStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鏇存柊鏃堕棿
-    * @return updateTimeEnd
-    */
+     * 鑾峰彇 缁撴潫 鏇存柊鏃堕棿
+     * @return updateTimeEnd
+     */
     public String getUpdateTimeEnd(){
         return this.updateTimeEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鏃堕棿
-    * @param updateTimeEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鏃堕棿
+     * @param updateTimeEnd
+     */
     public void setUpdateTimeEnd(String updateTimeEnd){
         this.updateTimeEnd = updateTimeEnd;
     }
 
     /**
-    * 璁剧疆  搴忓彿锛屼富閿紝鑷闀�
-    * @param id
-    */
+     * 鑾峰彇 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultStart
+     */
+    public Integer getSignInResultStart(){
+        return this.signInResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultStart
+     */
+    public void setSignInResultStart(Integer signInResultStart){
+        this.signInResultStart = signInResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return $signInResultEnd
+     */
+    public Integer getSignInResultEnd(){
+        return this.signInResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultEnd
+     */
+    public void setSignInResultEnd(Integer signInResultEnd){
+        this.signInResultEnd = signInResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultIncrement
+     */
+    public Integer getSignInResultIncrement(){
+        return this.signInResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultIncrement
+     */
+    public void setSignInResultIncrement(Integer signInResultIncrement){
+        this.signInResultIncrement = signInResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultList
+     */
+    public List<Integer> getSignInResultList(){
+        return this.signInResultList;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultList
+     */
+    public void setSignInResultList(List<Integer> signInResultList){
+        this.signInResultList = signInResultList;
+    }
+
+    /**
+     * 鑾峰彇 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultNotList
+     */
+    public List<Integer> getSignInResultNotList(){
+        return this.signInResultNotList;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultNotList
+     */
+    public void setSignInResultNotList(List<Integer> signInResultNotList){
+        this.signInResultNotList = signInResultNotList;
+    }
+
+
+    /**
+     * 鑾峰彇 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultStart
+     */
+    public Integer getSignOutResultStart(){
+        return this.signOutResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultStart
+     */
+    public void setSignOutResultStart(Integer signOutResultStart){
+        this.signOutResultStart = signOutResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return $signOutResultEnd
+     */
+    public Integer getSignOutResultEnd(){
+        return this.signOutResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultEnd
+     */
+    public void setSignOutResultEnd(Integer signOutResultEnd){
+        this.signOutResultEnd = signOutResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultIncrement
+     */
+    public Integer getSignOutResultIncrement(){
+        return this.signOutResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultIncrement
+     */
+    public void setSignOutResultIncrement(Integer signOutResultIncrement){
+        this.signOutResultIncrement = signOutResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultList
+     */
+    public List<Integer> getSignOutResultList(){
+        return this.signOutResultList;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultList
+     */
+    public void setSignOutResultList(List<Integer> signOutResultList){
+        this.signOutResultList = signOutResultList;
+    }
+
+    /**
+     * 鑾峰彇 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultNotList
+     */
+    public List<Integer> getSignOutResultNotList(){
+        return this.signOutResultNotList;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultNotList
+     */
+    public void setSignOutResultNotList(List<Integer> signOutResultNotList){
+        this.signOutResultNotList = signOutResultNotList;
+    }
+
+
+    /**
+     * 鑾峰彇 鑰冨嫟绫诲瀷
+     * @return attendTypeList
+     */
+    public List<String> getAttendTypeList(){
+        return this.attendTypeList;
+    }
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeList
+     */
+    public void setAttendTypeList(List<String> attendTypeList){
+        this.attendTypeList = attendTypeList;
+    }
+
+    /**
+     * 鑾峰彇 鑰冨嫟绫诲瀷
+     * @return attendTypeNotList
+     */
+    public List<String> getAttendTypeNotList(){
+        return this.attendTypeNotList;
+    }
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeNotList
+     */
+    public void setAttendTypeNotList(List<String> attendTypeNotList){
+        this.attendTypeNotList = attendTypeNotList;
+    }
+
+    /**
+     * 鑾峰彇 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultStart
+     */
+    public Integer getPunchResultStart(){
+        return this.punchResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultStart
+     */
+    public void setPunchResultStart(Integer punchResultStart){
+        this.punchResultStart = punchResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return $punchResultEnd
+     */
+    public Integer getPunchResultEnd(){
+        return this.punchResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultEnd
+     */
+    public void setPunchResultEnd(Integer punchResultEnd){
+        this.punchResultEnd = punchResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultIncrement
+     */
+    public Integer getPunchResultIncrement(){
+        return this.punchResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultIncrement
+     */
+    public void setPunchResultIncrement(Integer punchResultIncrement){
+        this.punchResultIncrement = punchResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultList
+     */
+    public List<Integer> getPunchResultList(){
+        return this.punchResultList;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultList
+     */
+    public void setPunchResultList(List<Integer> punchResultList){
+        this.punchResultList = punchResultList;
+    }
+
+    /**
+     * 鑾峰彇 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultNotList
+     */
+    public List<Integer> getPunchResultNotList(){
+        return this.punchResultNotList;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultNotList
+     */
+    public void setPunchResultNotList(List<Integer> punchResultNotList){
+        this.punchResultNotList = punchResultNotList;
+    }
+
+
+    /**
+     * 璁剧疆  搴忓彿锛屼富閿紝鑷闀�
+     * @param id
+     */
     public AttendanceRecordHikQuery id(Long id){
-	    setId(id);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @param idStart
-    */
+        setId(id);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @param idStart
+     */
     public AttendanceRecordHikQuery idStart(Long idStart){
-		this.idStart = idStart;
-		return this;
+        this.idStart = idStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @param idEnd
-    */
+     * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @param idEnd
+     */
     public AttendanceRecordHikQuery idEnd(Long idEnd){
-		this.idEnd = idEnd;
-		return this;
+        this.idEnd = idEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @param idIncrement
-    */
+     * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @param idIncrement
+     */
     public AttendanceRecordHikQuery idIncrement(Long idIncrement){
-		this.idIncrement = idIncrement;
-		return this;
+        this.idIncrement = idIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idList
+     */
     public AttendanceRecordHikQuery idList(List<Long> idList){
         this.idList = idList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-        * @param idNotList
-        */
-        public AttendanceRecordHikQuery idNotList(List<Long> idNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idNotList
+     */
+    public AttendanceRecordHikQuery idNotList(List<Long> idNotList){
         this.idNotList = idNotList;
         return this;
-        }
+    }
 
     /**
-    * 璁剧疆  鍛樺伐ID
-    * @param staffId
-    */
+     * 璁剧疆  鍛樺伐ID
+     * @param staffId
+     */
     public AttendanceRecordHikQuery staffId(Long staffId){
-	    setStaffId(staffId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鍛樺伐ID
-    * @param staffIdStart
-    */
+        setStaffId(staffId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鍛樺伐ID
+     * @param staffIdStart
+     */
     public AttendanceRecordHikQuery staffIdStart(Long staffIdStart){
-		this.staffIdStart = staffIdStart;
-		return this;
+        this.staffIdStart = staffIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍛樺伐ID
-    * @param staffIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍛樺伐ID
+     * @param staffIdEnd
+     */
     public AttendanceRecordHikQuery staffIdEnd(Long staffIdEnd){
-		this.staffIdEnd = staffIdEnd;
-		return this;
+        this.staffIdEnd = staffIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍛樺伐ID
-    * @param staffIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍛樺伐ID
+     * @param staffIdIncrement
+     */
     public AttendanceRecordHikQuery staffIdIncrement(Long staffIdIncrement){
-		this.staffIdIncrement = staffIdIncrement;
-		return this;
+        this.staffIdIncrement = staffIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdList
+     */
     public AttendanceRecordHikQuery staffIdList(List<Long> staffIdList){
         this.staffIdList = staffIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鍛樺伐ID
-        * @param staffIdNotList
-        */
-        public AttendanceRecordHikQuery staffIdNotList(List<Long> staffIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdNotList
+     */
+    public AttendanceRecordHikQuery staffIdNotList(List<Long> staffIdNotList){
         this.staffIdNotList = staffIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffName
-    */
+    /**
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffName
+     */
     public AttendanceRecordHikQuery staffName(String staffName){
         setStaffName(staffName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameList
+     */
     public AttendanceRecordHikQuery staffNameList(List<String> staffNameList){
         this.staffNameList = staffNameList;
-		return this;
+        return this;
     }
 
 
-	/**
-    * 璁剧疆 宸ュ彿
-    * @param workNum
-    */
+    /**
+     * 璁剧疆 宸ュ彿
+     * @param workNum
+     */
     public AttendanceRecordHikQuery workNum(String workNum){
         setWorkNum(workNum);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumList
+     */
     public AttendanceRecordHikQuery workNumList(List<String> workNumList){
         this.workNumList = workNumList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鎵€灞為儴闂�
-    * @param deptId
-    */
+     * 璁剧疆  鎵€灞為儴闂�
+     * @param deptId
+     */
     public AttendanceRecordHikQuery deptId(Long deptId){
-	    setDeptId(deptId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鎵€灞為儴闂�
-    * @param deptIdStart
-    */
+        setDeptId(deptId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵€灞為儴闂�
+     * @param deptIdStart
+     */
     public AttendanceRecordHikQuery deptIdStart(Long deptIdStart){
-		this.deptIdStart = deptIdStart;
-		return this;
+        this.deptIdStart = deptIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞為儴闂�
-    * @param deptIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞為儴闂�
+     * @param deptIdEnd
+     */
     public AttendanceRecordHikQuery deptIdEnd(Long deptIdEnd){
-		this.deptIdEnd = deptIdEnd;
-		return this;
+        this.deptIdEnd = deptIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞為儴闂�
-    * @param deptIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞為儴闂�
+     * @param deptIdIncrement
+     */
     public AttendanceRecordHikQuery deptIdIncrement(Long deptIdIncrement){
-		this.deptIdIncrement = deptIdIncrement;
-		return this;
+        this.deptIdIncrement = deptIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdList
+     */
     public AttendanceRecordHikQuery deptIdList(List<Long> deptIdList){
         this.deptIdList = deptIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鎵€灞為儴闂�
-        * @param deptIdNotList
-        */
-        public AttendanceRecordHikQuery deptIdNotList(List<Long> deptIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdNotList
+     */
+    public AttendanceRecordHikQuery deptIdNotList(List<Long> deptIdNotList){
         this.deptIdNotList = deptIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptName
-    */
+    /**
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptName
+     */
     public AttendanceRecordHikQuery deptName(String deptName){
         setDeptName(deptName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameList
+     */
     public AttendanceRecordHikQuery deptNameList(List<String> deptNameList){
         this.deptNameList = deptNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鑱屼綅ID
-    * @param positionId
-    */
+     * 璁剧疆  鑱屼綅ID
+     * @param positionId
+     */
     public AttendanceRecordHikQuery positionId(Long positionId){
-	    setPositionId(positionId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鑱屼綅ID
-    * @param positionIdStart
-    */
+        setPositionId(positionId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鑱屼綅ID
+     * @param positionIdStart
+     */
     public AttendanceRecordHikQuery positionIdStart(Long positionIdStart){
-		this.positionIdStart = positionIdStart;
-		return this;
+        this.positionIdStart = positionIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鑱屼綅ID
-    * @param positionIdEnd
-    */
+     * 璁剧疆 缁撴潫 鑱屼綅ID
+     * @param positionIdEnd
+     */
     public AttendanceRecordHikQuery positionIdEnd(Long positionIdEnd){
-		this.positionIdEnd = positionIdEnd;
-		return this;
+        this.positionIdEnd = positionIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鑱屼綅ID
-    * @param positionIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鑱屼綅ID
+     * @param positionIdIncrement
+     */
     public AttendanceRecordHikQuery positionIdIncrement(Long positionIdIncrement){
-		this.positionIdIncrement = positionIdIncrement;
-		return this;
+        this.positionIdIncrement = positionIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdList
+     */
     public AttendanceRecordHikQuery positionIdList(List<Long> positionIdList){
         this.positionIdList = positionIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鑱屼綅ID
-        * @param positionIdNotList
-        */
-        public AttendanceRecordHikQuery positionIdNotList(List<Long> positionIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdNotList
+     */
+    public AttendanceRecordHikQuery positionIdNotList(List<Long> positionIdNotList){
         this.positionIdNotList = positionIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionName
-    */
+    /**
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionName
+     */
     public AttendanceRecordHikQuery positionName(String positionName){
         setPositionName(positionName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameList
+     */
     public AttendanceRecordHikQuery positionNameList(List<String> positionNameList){
         this.positionNameList = positionNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupId
-    */
+     * 璁剧疆  鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupId
+     */
     public AttendanceRecordHikQuery attendanceGroupId(Long attendanceGroupId){
-	    setAttendanceGroupId(attendanceGroupId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdStart
-    */
+        setAttendanceGroupId(attendanceGroupId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdStart
+     */
     public AttendanceRecordHikQuery attendanceGroupIdStart(Long attendanceGroupIdStart){
-		this.attendanceGroupIdStart = attendanceGroupIdStart;
-		return this;
+        this.attendanceGroupIdStart = attendanceGroupIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdEnd
+     */
     public AttendanceRecordHikQuery attendanceGroupIdEnd(Long attendanceGroupIdEnd){
-		this.attendanceGroupIdEnd = attendanceGroupIdEnd;
-		return this;
+        this.attendanceGroupIdEnd = attendanceGroupIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdIncrement
+     */
     public AttendanceRecordHikQuery attendanceGroupIdIncrement(Long attendanceGroupIdIncrement){
-		this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
-		return this;
+        this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdList
+     */
     public AttendanceRecordHikQuery attendanceGroupIdList(List<Long> attendanceGroupIdList){
         this.attendanceGroupIdList = attendanceGroupIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鎵€灞炶€冨嫟缁処D
-        * @param attendanceGroupIdNotList
-        */
-        public AttendanceRecordHikQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdNotList
+     */
+    public AttendanceRecordHikQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
         this.attendanceGroupIdNotList = attendanceGroupIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupName
-    */
+    /**
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupName
+     */
     public AttendanceRecordHikQuery attendanceGroupName(String attendanceGroupName){
         setAttendanceGroupName(attendanceGroupName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameList
+     */
     public AttendanceRecordHikQuery attendanceGroupNameList(List<String> attendanceGroupNameList){
         this.attendanceGroupNameList = attendanceGroupNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鐝ID
-    * @param shiftsId
-    */
+     * 璁剧疆  鐝ID
+     * @param shiftsId
+     */
     public AttendanceRecordHikQuery shiftsId(Long shiftsId){
-	    setShiftsId(shiftsId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鐝ID
-    * @param shiftsIdStart
-    */
+        setShiftsId(shiftsId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鐝ID
+     * @param shiftsIdStart
+     */
     public AttendanceRecordHikQuery shiftsIdStart(Long shiftsIdStart){
-		this.shiftsIdStart = shiftsIdStart;
-		return this;
+        this.shiftsIdStart = shiftsIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鐝ID
-    * @param shiftsIdEnd
-    */
+     * 璁剧疆 缁撴潫 鐝ID
+     * @param shiftsIdEnd
+     */
     public AttendanceRecordHikQuery shiftsIdEnd(Long shiftsIdEnd){
-		this.shiftsIdEnd = shiftsIdEnd;
-		return this;
+        this.shiftsIdEnd = shiftsIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鐝ID
-    * @param shiftsIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鐝ID
+     * @param shiftsIdIncrement
+     */
     public AttendanceRecordHikQuery shiftsIdIncrement(Long shiftsIdIncrement){
-		this.shiftsIdIncrement = shiftsIdIncrement;
-		return this;
+        this.shiftsIdIncrement = shiftsIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdList
+     */
     public AttendanceRecordHikQuery shiftsIdList(List<Long> shiftsIdList){
         this.shiftsIdList = shiftsIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鐝ID
-        * @param shiftsIdNotList
-        */
-        public AttendanceRecordHikQuery shiftsIdNotList(List<Long> shiftsIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鐝ID
+     * @param shiftsIdNotList
+     */
+    public AttendanceRecordHikQuery shiftsIdNotList(List<Long> shiftsIdNotList){
         this.shiftsIdNotList = shiftsIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsName
-    */
+    /**
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsName
+     */
     public AttendanceRecordHikQuery shiftsName(String shiftsName){
         setShiftsName(shiftsName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameList
+     */
     public AttendanceRecordHikQuery shiftsNameList(List<String> shiftsNameList){
         this.shiftsNameList = shiftsNameList;
-		return this;
+        return this;
     }
 
 
 
-	/**
-    * 璁剧疆 鑰冨嫟鐐瑰悕绉�
-    * @param attendanceAddress
-    */
+    /**
+     * 璁剧疆 鑰冨嫟鐐瑰悕绉�
+     * @param attendanceAddress
+     */
     public AttendanceRecordHikQuery attendanceAddress(String attendanceAddress){
         setAttendanceAddress(attendanceAddress);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鑰冨嫟鐐瑰悕绉�
-    * @param attendanceAddressList
-    */
+     * 璁剧疆 鑰冨嫟鐐瑰悕绉�
+     * @param attendanceAddressList
+     */
     public AttendanceRecordHikQuery attendanceAddressList(List<String> attendanceAddressList){
         this.attendanceAddressList = attendanceAddressList;
-		return this;
+        return this;
     }
 
 
-	/**
-    * 璁剧疆 浜嬩欢婧�
-    * @param eventSource
-    */
+    /**
+     * 璁剧疆 浜嬩欢婧�
+     * @param eventSource
+     */
     public AttendanceRecordHikQuery eventSource(String eventSource){
         setEventSource(eventSource);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 浜嬩欢婧�
-    * @param eventSourceList
-    */
+     * 璁剧疆 浜嬩欢婧�
+     * @param eventSourceList
+     */
     public AttendanceRecordHikQuery eventSourceList(List<String> eventSourceList){
         this.eventSourceList = eventSourceList;
-		return this;
+        return this;
     }
 
 
-	/**
-    * 璁剧疆 澶囨敞
-    * @param remark
-    */
+    /**
+     * 璁剧疆 澶囨敞
+     * @param remark
+     */
     public AttendanceRecordHikQuery remark(String remark){
         setRemark(remark);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkList
+     */
     public AttendanceRecordHikQuery remarkList(List<String> remarkList){
         this.remarkList = remarkList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鍒涘缓鐢ㄦ埛
-    * @param createUserId
-    */
+     * 璁剧疆  鍒涘缓鐢ㄦ埛
+     * @param createUserId
+     */
     public AttendanceRecordHikQuery createUserId(Long createUserId){
-	    setCreateUserId(createUserId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @param createUserIdStart
-    */
+        setCreateUserId(createUserId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @param createUserIdStart
+     */
     public AttendanceRecordHikQuery createUserIdStart(Long createUserIdStart){
-		this.createUserIdStart = createUserIdStart;
-		return this;
+        this.createUserIdStart = createUserIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @param createUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @param createUserIdEnd
+     */
     public AttendanceRecordHikQuery createUserIdEnd(Long createUserIdEnd){
-		this.createUserIdEnd = createUserIdEnd;
-		return this;
+        this.createUserIdEnd = createUserIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @param createUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @param createUserIdIncrement
+     */
     public AttendanceRecordHikQuery createUserIdIncrement(Long createUserIdIncrement){
-		this.createUserIdIncrement = createUserIdIncrement;
-		return this;
+        this.createUserIdIncrement = createUserIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdList
+     */
     public AttendanceRecordHikQuery createUserIdList(List<Long> createUserIdList){
         this.createUserIdList = createUserIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鍒涘缓鐢ㄦ埛
-        * @param createUserIdNotList
-        */
-        public AttendanceRecordHikQuery createUserIdNotList(List<Long> createUserIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdNotList
+     */
+    public AttendanceRecordHikQuery createUserIdNotList(List<Long> createUserIdNotList){
         this.createUserIdNotList = createUserIdNotList;
         return this;
-        }
+    }
 
 
     /**
-    * 璁剧疆  鏇存柊鐢ㄦ埛
-    * @param updateUserId
-    */
+     * 璁剧疆  鏇存柊鐢ㄦ埛
+     * @param updateUserId
+     */
     public AttendanceRecordHikQuery updateUserId(Long updateUserId){
-	    setUpdateUserId(updateUserId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
-    * @param updateUserIdStart
-    */
+        setUpdateUserId(updateUserId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
+     * @param updateUserIdStart
+     */
     public AttendanceRecordHikQuery updateUserIdStart(Long updateUserIdStart){
-		this.updateUserIdStart = updateUserIdStart;
-		return this;
+        this.updateUserIdStart = updateUserIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
-    * @param updateUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
+     * @param updateUserIdEnd
+     */
     public AttendanceRecordHikQuery updateUserIdEnd(Long updateUserIdEnd){
-		this.updateUserIdEnd = updateUserIdEnd;
-		return this;
+        this.updateUserIdEnd = updateUserIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
-    * @param updateUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
+     * @param updateUserIdIncrement
+     */
     public AttendanceRecordHikQuery updateUserIdIncrement(Long updateUserIdIncrement){
-		this.updateUserIdIncrement = updateUserIdIncrement;
-		return this;
+        this.updateUserIdIncrement = updateUserIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdList
+     */
     public AttendanceRecordHikQuery updateUserIdList(List<Long> updateUserIdList){
         this.updateUserIdList = updateUserIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鏇存柊鐢ㄦ埛
-        * @param updateUserIdNotList
-        */
-        public AttendanceRecordHikQuery updateUserIdNotList(List<Long> updateUserIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdNotList
+     */
+    public AttendanceRecordHikQuery updateUserIdNotList(List<Long> updateUserIdNotList){
         this.updateUserIdNotList = updateUserIdNotList;
         return this;
-        }
+    }
+
+
+    /**
+     * 璁剧疆  绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResult
+     */
+    public AttendanceRecordHikQuery signInResult(Integer signInResult){
+        setSignInResult(signInResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultStart
+     */
+    public AttendanceRecordHikQuery signInResultStart(Integer signInResultStart){
+        this.signInResultStart = signInResultStart;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultEnd
+     */
+    public AttendanceRecordHikQuery signInResultEnd(Integer signInResultEnd){
+        this.signInResultEnd = signInResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultIncrement
+     */
+    public AttendanceRecordHikQuery signInResultIncrement(Integer signInResultIncrement){
+        this.signInResultIncrement = signInResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultList
+     */
+    public AttendanceRecordHikQuery signInResultList(List<Integer> signInResultList){
+        this.signInResultList = signInResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultNotList
+     */
+    public AttendanceRecordHikQuery signInResultNotList(List<Integer> signInResultNotList){
+        this.signInResultNotList = signInResultNotList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆  绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResult
+     */
+    public AttendanceRecordHikQuery signOutResult(Integer signOutResult){
+        setSignOutResult(signOutResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultStart
+     */
+    public AttendanceRecordHikQuery signOutResultStart(Integer signOutResultStart){
+        this.signOutResultStart = signOutResultStart;
+        return this;
+    }
 
+    /**
+     * 璁剧疆 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultEnd
+     */
+    public AttendanceRecordHikQuery signOutResultEnd(Integer signOutResultEnd){
+        this.signOutResultEnd = signOutResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultIncrement
+     */
+    public AttendanceRecordHikQuery signOutResultIncrement(Integer signOutResultIncrement){
+        this.signOutResultIncrement = signOutResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultList
+     */
+    public AttendanceRecordHikQuery signOutResultList(List<Integer> signOutResultList){
+        this.signOutResultList = signOutResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultNotList
+     */
+    public AttendanceRecordHikQuery signOutResultNotList(List<Integer> signOutResultNotList){
+        this.signOutResultNotList = signOutResultNotList;
+        return this;
+    }
+
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendType
+     */
+    public AttendanceRecordHikQuery attendType(String attendType){
+        setAttendType(attendType);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeList
+     */
+    public AttendanceRecordHikQuery attendTypeList(List<String> attendTypeList){
+        this.attendTypeList = attendTypeList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆  鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResult
+     */
+    public AttendanceRecordHikQuery punchResult(Integer punchResult){
+        setPunchResult(punchResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultStart
+     */
+    public AttendanceRecordHikQuery punchResultStart(Integer punchResultStart){
+        this.punchResultStart = punchResultStart;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultEnd
+     */
+    public AttendanceRecordHikQuery punchResultEnd(Integer punchResultEnd){
+        this.punchResultEnd = punchResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultIncrement
+     */
+    public AttendanceRecordHikQuery punchResultIncrement(Integer punchResultIncrement){
+        this.punchResultIncrement = punchResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultList
+     */
+    public AttendanceRecordHikQuery punchResultList(List<Integer> punchResultList){
+        this.punchResultList = punchResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultNotList
+     */
+    public AttendanceRecordHikQuery punchResultNotList(List<Integer> punchResultNotList){
+        this.punchResultNotList = punchResultNotList;
+        return this;
+    }
 
     /**
-    * 鑾峰彇 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
-    * @return orConditionList
-    */
+     * 鑾峰彇 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
+     * @return orConditionList
+     */
     public List<AttendanceRecordHikQuery> getOrConditionList(){
-    return this.orConditionList;
+        return this.orConditionList;
     }
 
     /**
-    * 璁剧疆 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
-    * @param orConditionList
-    */
+     * 璁剧疆 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
+     * @param orConditionList
+     */
     public void setOrConditionList(List<AttendanceRecordHikQuery> orConditionList){
         this.orConditionList = orConditionList;
     }
 
     /**
-    * 鑾峰彇 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
-    * @return andConditionList
-    */
+     * 鑾峰彇 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
+     * @return andConditionList
+     */
     public List<AttendanceRecordHikQuery> getAndConditionList(){
         return this.andConditionList;
     }
 
     /**
-    * 璁剧疆 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
-    * @param andConditionList
-    */
+     * 璁剧疆 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
+     * @param andConditionList
+     */
     public void setAndConditionList(List<AttendanceRecordHikQuery> andConditionList){
         this.andConditionList = andConditionList;
     }
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordQuery.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordQuery.java
index 2910ceb301359e146dbfd0ea0a63fc0533b09130..dc377539bab429a47cca1187f411e7139041dcf8 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordQuery.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordQuery.java
@@ -1,15 +1,14 @@
 package com.mortals.xhx.module.attendance.model;
 
-import java.util.List;
 import java.util.Date;
 import java.util.List;
 import com.mortals.xhx.module.attendance.model.AttendanceRecordEntity;
 /**
-* 鑰冨嫟鎵撳崱璁板綍淇℃伅鏌ヨ瀵硅薄
-*
-* @author zxfei
-* @date 2023-04-07
-*/
+ * 鑰冨嫟鎵撳崱璁板綍淇℃伅鏌ヨ瀵硅薄
+ *
+ * @author zxfei
+ * @date 2023-07-18
+ */
 public class AttendanceRecordQuery extends AttendanceRecordEntity {
     /** 寮€濮� 搴忓彿锛屼富閿紝鑷闀� */
     private Long idStart;
@@ -184,6 +183,56 @@ public class AttendanceRecordQuery extends AttendanceRecordEntity {
     /** 缁撴潫 鏇存柊鏃堕棿 */
     private String updateTimeEnd;
 
+    /** 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultStart;
+
+    /** 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultEnd;
+
+    /** 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signInResultIncrement;
+
+    /** 绛惧埌缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> signInResultList;
+
+    /** 绛惧埌缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> signInResultNotList;
+
+    /** 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultStart;
+
+    /** 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultEnd;
+
+    /** 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�) */
+    private Integer signOutResultIncrement;
+
+    /** 绛鹃€€缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> signOutResultList;
+
+    /** 绛鹃€€缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> signOutResultNotList;
+
+    /** 鑰冨嫟绫诲瀷 */
+    private List<String> attendTypeList;
+
+    /** 鑰冨嫟绫诲瀷鎺掗櫎鍒楄〃 */
+    private List <String> attendTypeNotList;
+    /** 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultStart;
+
+    /** 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultEnd;
+
+    /** 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�) */
+    private Integer punchResultIncrement;
+
+    /** 鎵撳崱缁撴灉(0.鍚�,1.鏄�)鍒楄〃 */
+    private List <Integer> punchResultList;
+
+    /** 鎵撳崱缁撴灉(0.鍚�,1.鏄�)鎺掗櫎鍒楄〃 */
+    private List <Integer> punchResultNotList;
+
     /** OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
     private List<AttendanceRecordQuery> orConditionList;
 
@@ -193,1569 +242,2025 @@ public class AttendanceRecordQuery extends AttendanceRecordEntity {
     public AttendanceRecordQuery(){}
 
     /**
-    * 鑾峰彇 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @return idStart
-    */
+     * 鑾峰彇 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @return idStart
+     */
     public Long getIdStart(){
         return this.idStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @param idStart
-    */
+     * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @param idStart
+     */
     public void setIdStart(Long idStart){
         this.idStart = idStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @return $idEnd
-    */
+     * 鑾峰彇 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @return $idEnd
+     */
     public Long getIdEnd(){
         return this.idEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @param idEnd
-    */
+     * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @param idEnd
+     */
     public void setIdEnd(Long idEnd){
         this.idEnd = idEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @return idIncrement
-    */
+     * 鑾峰彇 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @return idIncrement
+     */
     public Long getIdIncrement(){
         return this.idIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @param idIncrement
-    */
+     * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @param idIncrement
+     */
     public void setIdIncrement(Long idIncrement){
         this.idIncrement = idIncrement;
     }
 
     /**
-    * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
-    * @return idList
-    */
+     * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
+     * @return idList
+     */
     public List<Long> getIdList(){
         return this.idList;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idList
+     */
     public void setIdList(List<Long> idList){
         this.idList = idList;
     }
 
     /**
-    * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
-    * @return idNotList
-    */
+     * 鑾峰彇 搴忓彿锛屼富閿紝鑷闀�
+     * @return idNotList
+     */
     public List<Long> getIdNotList(){
         return this.idNotList;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idNotList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idNotList
+     */
     public void setIdNotList(List<Long> idNotList){
         this.idNotList = idNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鍛樺伐ID
-    * @return staffIdStart
-    */
+     * 鑾峰彇 寮€濮� 鍛樺伐ID
+     * @return staffIdStart
+     */
     public Long getStaffIdStart(){
         return this.staffIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍛樺伐ID
-    * @param staffIdStart
-    */
+     * 璁剧疆 寮€濮� 鍛樺伐ID
+     * @param staffIdStart
+     */
     public void setStaffIdStart(Long staffIdStart){
         this.staffIdStart = staffIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍛樺伐ID
-    * @return $staffIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鍛樺伐ID
+     * @return $staffIdEnd
+     */
     public Long getStaffIdEnd(){
         return this.staffIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍛樺伐ID
-    * @param staffIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍛樺伐ID
+     * @param staffIdEnd
+     */
     public void setStaffIdEnd(Long staffIdEnd){
         this.staffIdEnd = staffIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鍛樺伐ID
-    * @return staffIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鍛樺伐ID
+     * @return staffIdIncrement
+     */
     public Long getStaffIdIncrement(){
         return this.staffIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍛樺伐ID
-    * @param staffIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍛樺伐ID
+     * @param staffIdIncrement
+     */
     public void setStaffIdIncrement(Long staffIdIncrement){
         this.staffIdIncrement = staffIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return staffIdList
-    */
+     * 鑾峰彇 鍛樺伐ID
+     * @return staffIdList
+     */
     public List<Long> getStaffIdList(){
         return this.staffIdList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdList
+     */
     public void setStaffIdList(List<Long> staffIdList){
         this.staffIdList = staffIdList;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐ID
-    * @return staffIdNotList
-    */
+     * 鑾峰彇 鍛樺伐ID
+     * @return staffIdNotList
+     */
     public List<Long> getStaffIdNotList(){
         return this.staffIdNotList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdNotList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdNotList
+     */
     public void setStaffIdNotList(List<Long> staffIdNotList){
         this.staffIdNotList = staffIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return staffNameList
-    */
+     * 鑾峰彇 鍛樺伐濮撳悕
+     * @return staffNameList
+     */
     public List<String> getStaffNameList(){
         return this.staffNameList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameList
+     */
     public void setStaffNameList(List<String> staffNameList){
         this.staffNameList = staffNameList;
     }
 
     /**
-    * 鑾峰彇 鍛樺伐濮撳悕
-    * @return staffNameNotList
-    */
+     * 鑾峰彇 鍛樺伐濮撳悕
+     * @return staffNameNotList
+     */
     public List<String> getStaffNameNotList(){
         return this.staffNameNotList;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameNotList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameNotList
+     */
     public void setStaffNameNotList(List<String> staffNameNotList){
         this.staffNameNotList = staffNameNotList;
     }
 
     /**
-    * 鑾峰彇 宸ュ彿
-    * @return workNumList
-    */
+     * 鑾峰彇 宸ュ彿
+     * @return workNumList
+     */
     public List<String> getWorkNumList(){
         return this.workNumList;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumList
+     */
     public void setWorkNumList(List<String> workNumList){
         this.workNumList = workNumList;
     }
 
     /**
-    * 鑾峰彇 宸ュ彿
-    * @return workNumNotList
-    */
+     * 鑾峰彇 宸ュ彿
+     * @return workNumNotList
+     */
     public List<String> getWorkNumNotList(){
         return this.workNumNotList;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumNotList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumNotList
+     */
     public void setWorkNumNotList(List<String> workNumNotList){
         this.workNumNotList = workNumNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鎵€灞為儴闂�
-    * @return deptIdStart
-    */
+     * 鑾峰彇 寮€濮� 鎵€灞為儴闂�
+     * @return deptIdStart
+     */
     public Long getDeptIdStart(){
         return this.deptIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鎵€灞為儴闂�
-    * @param deptIdStart
-    */
+     * 璁剧疆 寮€濮� 鎵€灞為儴闂�
+     * @param deptIdStart
+     */
     public void setDeptIdStart(Long deptIdStart){
         this.deptIdStart = deptIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鎵€灞為儴闂�
-    * @return $deptIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鎵€灞為儴闂�
+     * @return $deptIdEnd
+     */
     public Long getDeptIdEnd(){
         return this.deptIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞為儴闂�
-    * @param deptIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞為儴闂�
+     * @param deptIdEnd
+     */
     public void setDeptIdEnd(Long deptIdEnd){
         this.deptIdEnd = deptIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鎵€灞為儴闂�
-    * @return deptIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鎵€灞為儴闂�
+     * @return deptIdIncrement
+     */
     public Long getDeptIdIncrement(){
         return this.deptIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞為儴闂�
-    * @param deptIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞為儴闂�
+     * @param deptIdIncrement
+     */
     public void setDeptIdIncrement(Long deptIdIncrement){
         this.deptIdIncrement = deptIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return deptIdList
-    */
+     * 鑾峰彇 鎵€灞為儴闂�
+     * @return deptIdList
+     */
     public List<Long> getDeptIdList(){
         return this.deptIdList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdList
+     */
     public void setDeptIdList(List<Long> deptIdList){
         this.deptIdList = deptIdList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂�
-    * @return deptIdNotList
-    */
+     * 鑾峰彇 鎵€灞為儴闂�
+     * @return deptIdNotList
+     */
     public List<Long> getDeptIdNotList(){
         return this.deptIdNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdNotList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdNotList
+     */
     public void setDeptIdNotList(List<Long> deptIdNotList){
         this.deptIdNotList = deptIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return deptNameList
-    */
+     * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
+     * @return deptNameList
+     */
     public List<String> getDeptNameList(){
         return this.deptNameList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameList
+     */
     public void setDeptNameList(List<String> deptNameList){
         this.deptNameList = deptNameList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
-    * @return deptNameNotList
-    */
+     * 鑾峰彇 鎵€灞為儴闂ㄥ悕绉�
+     * @return deptNameNotList
+     */
     public List<String> getDeptNameNotList(){
         return this.deptNameNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameNotList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameNotList
+     */
     public void setDeptNameNotList(List<String> deptNameNotList){
         this.deptNameNotList = deptNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鑱屼綅ID
-    * @return positionIdStart
-    */
+     * 鑾峰彇 寮€濮� 鑱屼綅ID
+     * @return positionIdStart
+     */
     public Long getPositionIdStart(){
         return this.positionIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鑱屼綅ID
-    * @param positionIdStart
-    */
+     * 璁剧疆 寮€濮� 鑱屼綅ID
+     * @param positionIdStart
+     */
     public void setPositionIdStart(Long positionIdStart){
         this.positionIdStart = positionIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鑱屼綅ID
-    * @return $positionIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鑱屼綅ID
+     * @return $positionIdEnd
+     */
     public Long getPositionIdEnd(){
         return this.positionIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鑱屼綅ID
-    * @param positionIdEnd
-    */
+     * 璁剧疆 缁撴潫 鑱屼綅ID
+     * @param positionIdEnd
+     */
     public void setPositionIdEnd(Long positionIdEnd){
         this.positionIdEnd = positionIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鑱屼綅ID
-    * @return positionIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鑱屼綅ID
+     * @return positionIdIncrement
+     */
     public Long getPositionIdIncrement(){
         return this.positionIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鑱屼綅ID
-    * @param positionIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鑱屼綅ID
+     * @param positionIdIncrement
+     */
     public void setPositionIdIncrement(Long positionIdIncrement){
         this.positionIdIncrement = positionIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return positionIdList
-    */
+     * 鑾峰彇 鑱屼綅ID
+     * @return positionIdList
+     */
     public List<Long> getPositionIdList(){
         return this.positionIdList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdList
+     */
     public void setPositionIdList(List<Long> positionIdList){
         this.positionIdList = positionIdList;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅ID
-    * @return positionIdNotList
-    */
+     * 鑾峰彇 鑱屼綅ID
+     * @return positionIdNotList
+     */
     public List<Long> getPositionIdNotList(){
         return this.positionIdNotList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdNotList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdNotList
+     */
     public void setPositionIdNotList(List<Long> positionIdNotList){
         this.positionIdNotList = positionIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return positionNameList
-    */
+     * 鑾峰彇 鑱屼綅鍚嶇О
+     * @return positionNameList
+     */
     public List<String> getPositionNameList(){
         return this.positionNameList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameList
+     */
     public void setPositionNameList(List<String> positionNameList){
         this.positionNameList = positionNameList;
     }
 
     /**
-    * 鑾峰彇 鑱屼綅鍚嶇О
-    * @return positionNameNotList
-    */
+     * 鑾峰彇 鑱屼綅鍚嶇О
+     * @return positionNameNotList
+     */
     public List<String> getPositionNameNotList(){
         return this.positionNameNotList;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameNotList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameNotList
+     */
     public void setPositionNameNotList(List<String> positionNameNotList){
         this.positionNameNotList = positionNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdStart
-    */
+     * 鑾峰彇 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdStart
+     */
     public Long getAttendanceGroupIdStart(){
         return this.attendanceGroupIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdStart
-    */
+     * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdStart
+     */
     public void setAttendanceGroupIdStart(Long attendanceGroupIdStart){
         this.attendanceGroupIdStart = attendanceGroupIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @return $attendanceGroupIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @return $attendanceGroupIdEnd
+     */
     public Long getAttendanceGroupIdEnd(){
         return this.attendanceGroupIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdEnd
+     */
     public void setAttendanceGroupIdEnd(Long attendanceGroupIdEnd){
         this.attendanceGroupIdEnd = attendanceGroupIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdIncrement
+     */
     public Long getAttendanceGroupIdIncrement(){
         return this.attendanceGroupIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdIncrement
+     */
     public void setAttendanceGroupIdIncrement(Long attendanceGroupIdIncrement){
         this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdList
+     */
     public List<Long> getAttendanceGroupIdList(){
         return this.attendanceGroupIdList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdList
+     */
     public void setAttendanceGroupIdList(List<Long> attendanceGroupIdList){
         this.attendanceGroupIdList = attendanceGroupIdList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁処D
-    * @return attendanceGroupIdNotList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁処D
+     * @return attendanceGroupIdNotList
+     */
     public List<Long> getAttendanceGroupIdNotList(){
         return this.attendanceGroupIdNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdNotList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdNotList
+     */
     public void setAttendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
         this.attendanceGroupIdNotList = attendanceGroupIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return attendanceGroupNameList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
+     * @return attendanceGroupNameList
+     */
     public List<String> getAttendanceGroupNameList(){
         return this.attendanceGroupNameList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameList
+     */
     public void setAttendanceGroupNameList(List<String> attendanceGroupNameList){
         this.attendanceGroupNameList = attendanceGroupNameList;
     }
 
     /**
-    * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
-    * @return attendanceGroupNameNotList
-    */
+     * 鑾峰彇 鎵€灞炶€冨嫟缁勫悕绉�
+     * @return attendanceGroupNameNotList
+     */
     public List<String> getAttendanceGroupNameNotList(){
         return this.attendanceGroupNameNotList;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameNotList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameNotList
+     */
     public void setAttendanceGroupNameNotList(List<String> attendanceGroupNameNotList){
         this.attendanceGroupNameNotList = attendanceGroupNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鐝ID
-    * @return shiftsIdStart
-    */
+     * 鑾峰彇 寮€濮� 鐝ID
+     * @return shiftsIdStart
+     */
     public Long getShiftsIdStart(){
         return this.shiftsIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鐝ID
-    * @param shiftsIdStart
-    */
+     * 璁剧疆 寮€濮� 鐝ID
+     * @param shiftsIdStart
+     */
     public void setShiftsIdStart(Long shiftsIdStart){
         this.shiftsIdStart = shiftsIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鐝ID
-    * @return $shiftsIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鐝ID
+     * @return $shiftsIdEnd
+     */
     public Long getShiftsIdEnd(){
         return this.shiftsIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鐝ID
-    * @param shiftsIdEnd
-    */
+     * 璁剧疆 缁撴潫 鐝ID
+     * @param shiftsIdEnd
+     */
     public void setShiftsIdEnd(Long shiftsIdEnd){
         this.shiftsIdEnd = shiftsIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鐝ID
-    * @return shiftsIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鐝ID
+     * @return shiftsIdIncrement
+     */
     public Long getShiftsIdIncrement(){
         return this.shiftsIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鐝ID
-    * @param shiftsIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鐝ID
+     * @param shiftsIdIncrement
+     */
     public void setShiftsIdIncrement(Long shiftsIdIncrement){
         this.shiftsIdIncrement = shiftsIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鐝ID
-    * @return shiftsIdList
-    */
+     * 鑾峰彇 鐝ID
+     * @return shiftsIdList
+     */
     public List<Long> getShiftsIdList(){
         return this.shiftsIdList;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdList
+     */
     public void setShiftsIdList(List<Long> shiftsIdList){
         this.shiftsIdList = shiftsIdList;
     }
 
     /**
-    * 鑾峰彇 鐝ID
-    * @return shiftsIdNotList
-    */
+     * 鑾峰彇 鐝ID
+     * @return shiftsIdNotList
+     */
     public List<Long> getShiftsIdNotList(){
         return this.shiftsIdNotList;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdNotList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdNotList
+     */
     public void setShiftsIdNotList(List<Long> shiftsIdNotList){
         this.shiftsIdNotList = shiftsIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return shiftsNameList
-    */
+     * 鑾峰彇 鐝鍚嶇О
+     * @return shiftsNameList
+     */
     public List<String> getShiftsNameList(){
         return this.shiftsNameList;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameList
+     */
     public void setShiftsNameList(List<String> shiftsNameList){
         this.shiftsNameList = shiftsNameList;
     }
 
     /**
-    * 鑾峰彇 鐝鍚嶇О
-    * @return shiftsNameNotList
-    */
+     * 鑾峰彇 鐝鍚嶇О
+     * @return shiftsNameNotList
+     */
     public List<String> getShiftsNameNotList(){
         return this.shiftsNameNotList;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameNotList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameNotList
+     */
     public void setShiftsNameNotList(List<String> shiftsNameNotList){
         this.shiftsNameNotList = shiftsNameNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鎵撳崱鏃ユ湡
-    * @return attendanceDateStart
-    */
+     * 鑾峰彇 寮€濮� 鎵撳崱鏃ユ湡
+     * @return attendanceDateStart
+     */
     public String getAttendanceDateStart(){
         return this.attendanceDateStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鎵撳崱鏃ユ湡
-    * @param attendanceDateStart
-    */
+     * 璁剧疆 寮€濮� 鎵撳崱鏃ユ湡
+     * @param attendanceDateStart
+     */
     public void setAttendanceDateStart(String attendanceDateStart){
         this.attendanceDateStart = attendanceDateStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鎵撳崱鏃ユ湡
-    * @return attendanceDateEnd
-    */
+     * 鑾峰彇 缁撴潫 鎵撳崱鏃ユ湡
+     * @return attendanceDateEnd
+     */
     public String getAttendanceDateEnd(){
         return this.attendanceDateEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵撳崱鏃ユ湡
-    * @param attendanceDateEnd
-    */
+     * 璁剧疆 缁撴潫 鎵撳崱鏃ユ湡
+     * @param attendanceDateEnd
+     */
     public void setAttendanceDateEnd(String attendanceDateEnd){
         this.attendanceDateEnd = attendanceDateEnd;
     }
 
     /**
-    * 鑾峰彇 澶囨敞
-    * @return remarkList
-    */
+     * 鑾峰彇 澶囨敞
+     * @return remarkList
+     */
     public List<String> getRemarkList(){
         return this.remarkList;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkList
+     */
     public void setRemarkList(List<String> remarkList){
         this.remarkList = remarkList;
     }
 
     /**
-    * 鑾峰彇 澶囨敞
-    * @return remarkNotList
-    */
+     * 鑾峰彇 澶囨敞
+     * @return remarkNotList
+     */
     public List<String> getRemarkNotList(){
         return this.remarkNotList;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkNotList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkNotList
+     */
     public void setRemarkNotList(List<String> remarkNotList){
         this.remarkNotList = remarkNotList;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @return createUserIdStart
-    */
+     * 鑾峰彇 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @return createUserIdStart
+     */
     public Long getCreateUserIdStart(){
         return this.createUserIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @param createUserIdStart
-    */
+     * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @param createUserIdStart
+     */
     public void setCreateUserIdStart(Long createUserIdStart){
         this.createUserIdStart = createUserIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @return $createUserIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @return $createUserIdEnd
+     */
     public Long getCreateUserIdEnd(){
         return this.createUserIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @param createUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @param createUserIdEnd
+     */
     public void setCreateUserIdEnd(Long createUserIdEnd){
         this.createUserIdEnd = createUserIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @return createUserIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @return createUserIdIncrement
+     */
     public Long getCreateUserIdIncrement(){
         return this.createUserIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @param createUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @param createUserIdIncrement
+     */
     public void setCreateUserIdIncrement(Long createUserIdIncrement){
         this.createUserIdIncrement = createUserIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鍒涘缓鐢ㄦ埛
-    * @return createUserIdList
-    */
+     * 鑾峰彇 鍒涘缓鐢ㄦ埛
+     * @return createUserIdList
+     */
     public List<Long> getCreateUserIdList(){
         return this.createUserIdList;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdList
+     */
     public void setCreateUserIdList(List<Long> createUserIdList){
         this.createUserIdList = createUserIdList;
     }
 
     /**
-    * 鑾峰彇 鍒涘缓鐢ㄦ埛
-    * @return createUserIdNotList
-    */
+     * 鑾峰彇 鍒涘缓鐢ㄦ埛
+     * @return createUserIdNotList
+     */
     public List<Long> getCreateUserIdNotList(){
         return this.createUserIdNotList;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdNotList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdNotList
+     */
     public void setCreateUserIdNotList(List<Long> createUserIdNotList){
         this.createUserIdNotList = createUserIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鍒涘缓鏃堕棿
-    * @return createTimeStart
-    */
+     * 鑾峰彇 寮€濮� 鍒涘缓鏃堕棿
+     * @return createTimeStart
+     */
     public String getCreateTimeStart(){
         return this.createTimeStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鍒涘缓鏃堕棿
-    * @param createTimeStart
-    */
+     * 璁剧疆 寮€濮� 鍒涘缓鏃堕棿
+     * @param createTimeStart
+     */
     public void setCreateTimeStart(String createTimeStart){
         this.createTimeStart = createTimeStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鍒涘缓鏃堕棿
-    * @return createTimeEnd
-    */
+     * 鑾峰彇 缁撴潫 鍒涘缓鏃堕棿
+     * @return createTimeEnd
+     */
     public String getCreateTimeEnd(){
         return this.createTimeEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鏃堕棿
-    * @param createTimeEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鏃堕棿
+     * @param createTimeEnd
+     */
     public void setCreateTimeEnd(String createTimeEnd){
         this.createTimeEnd = createTimeEnd;
     }
 
     /**
-    * 鑾峰彇 寮€濮� 鏇存柊鐢ㄦ埛
-    * @return updateUserIdStart
-    */
+     * 鑾峰彇 寮€濮� 鏇存柊鐢ㄦ埛
+     * @return updateUserIdStart
+     */
     public Long getUpdateUserIdStart(){
         return this.updateUserIdStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
-    * @param updateUserIdStart
-    */
+     * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
+     * @param updateUserIdStart
+     */
     public void setUpdateUserIdStart(Long updateUserIdStart){
         this.updateUserIdStart = updateUserIdStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鏇存柊鐢ㄦ埛
-    * @return $updateUserIdEnd
-    */
+     * 鑾峰彇 缁撴潫 鏇存柊鐢ㄦ埛
+     * @return $updateUserIdEnd
+     */
     public Long getUpdateUserIdEnd(){
         return this.updateUserIdEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
-    * @param updateUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
+     * @param updateUserIdEnd
+     */
     public void setUpdateUserIdEnd(Long updateUserIdEnd){
         this.updateUserIdEnd = updateUserIdEnd;
     }
 
     /**
-    * 鑾峰彇 澧炲姞 鏇存柊鐢ㄦ埛
-    * @return updateUserIdIncrement
-    */
+     * 鑾峰彇 澧炲姞 鏇存柊鐢ㄦ埛
+     * @return updateUserIdIncrement
+     */
     public Long getUpdateUserIdIncrement(){
         return this.updateUserIdIncrement;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
-    * @param updateUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
+     * @param updateUserIdIncrement
+     */
     public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
         this.updateUserIdIncrement = updateUserIdIncrement;
     }
 
     /**
-    * 鑾峰彇 鏇存柊鐢ㄦ埛
-    * @return updateUserIdList
-    */
+     * 鑾峰彇 鏇存柊鐢ㄦ埛
+     * @return updateUserIdList
+     */
     public List<Long> getUpdateUserIdList(){
         return this.updateUserIdList;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdList
+     */
     public void setUpdateUserIdList(List<Long> updateUserIdList){
         this.updateUserIdList = updateUserIdList;
     }
 
     /**
-    * 鑾峰彇 鏇存柊鐢ㄦ埛
-    * @return updateUserIdNotList
-    */
+     * 鑾峰彇 鏇存柊鐢ㄦ埛
+     * @return updateUserIdNotList
+     */
     public List<Long> getUpdateUserIdNotList(){
         return this.updateUserIdNotList;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdNotList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdNotList
+     */
     public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
         this.updateUserIdNotList = updateUserIdNotList;
     }
 
 
     /**
-    * 鑾峰彇 寮€濮� 鏇存柊鏃堕棿
-    * @return updateTimeStart
-    */
+     * 鑾峰彇 寮€濮� 鏇存柊鏃堕棿
+     * @return updateTimeStart
+     */
     public String getUpdateTimeStart(){
         return this.updateTimeStart;
     }
 
     /**
-    * 璁剧疆 寮€濮� 鏇存柊鏃堕棿
-    * @param updateTimeStart
-    */
+     * 璁剧疆 寮€濮� 鏇存柊鏃堕棿
+     * @param updateTimeStart
+     */
     public void setUpdateTimeStart(String updateTimeStart){
         this.updateTimeStart = updateTimeStart;
     }
 
     /**
-    * 鑾峰彇 缁撴潫 鏇存柊鏃堕棿
-    * @return updateTimeEnd
-    */
+     * 鑾峰彇 缁撴潫 鏇存柊鏃堕棿
+     * @return updateTimeEnd
+     */
     public String getUpdateTimeEnd(){
         return this.updateTimeEnd;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鏃堕棿
-    * @param updateTimeEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鏃堕棿
+     * @param updateTimeEnd
+     */
     public void setUpdateTimeEnd(String updateTimeEnd){
         this.updateTimeEnd = updateTimeEnd;
     }
 
     /**
-    * 璁剧疆  搴忓彿锛屼富閿紝鑷闀�
-    * @param id
-    */
+     * 鑾峰彇 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultStart
+     */
+    public Integer getSignInResultStart(){
+        return this.signInResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultStart
+     */
+    public void setSignInResultStart(Integer signInResultStart){
+        this.signInResultStart = signInResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return $signInResultEnd
+     */
+    public Integer getSignInResultEnd(){
+        return this.signInResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultEnd
+     */
+    public void setSignInResultEnd(Integer signInResultEnd){
+        this.signInResultEnd = signInResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultIncrement
+     */
+    public Integer getSignInResultIncrement(){
+        return this.signInResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultIncrement
+     */
+    public void setSignInResultIncrement(Integer signInResultIncrement){
+        this.signInResultIncrement = signInResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultList
+     */
+    public List<Integer> getSignInResultList(){
+        return this.signInResultList;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultList
+     */
+    public void setSignInResultList(List<Integer> signInResultList){
+        this.signInResultList = signInResultList;
+    }
+
+    /**
+     * 鑾峰彇 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @return signInResultNotList
+     */
+    public List<Integer> getSignInResultNotList(){
+        return this.signInResultNotList;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultNotList
+     */
+    public void setSignInResultNotList(List<Integer> signInResultNotList){
+        this.signInResultNotList = signInResultNotList;
+    }
+
+
+    /**
+     * 鑾峰彇 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultStart
+     */
+    public Integer getSignOutResultStart(){
+        return this.signOutResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultStart
+     */
+    public void setSignOutResultStart(Integer signOutResultStart){
+        this.signOutResultStart = signOutResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return $signOutResultEnd
+     */
+    public Integer getSignOutResultEnd(){
+        return this.signOutResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultEnd
+     */
+    public void setSignOutResultEnd(Integer signOutResultEnd){
+        this.signOutResultEnd = signOutResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultIncrement
+     */
+    public Integer getSignOutResultIncrement(){
+        return this.signOutResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultIncrement
+     */
+    public void setSignOutResultIncrement(Integer signOutResultIncrement){
+        this.signOutResultIncrement = signOutResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultList
+     */
+    public List<Integer> getSignOutResultList(){
+        return this.signOutResultList;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultList
+     */
+    public void setSignOutResultList(List<Integer> signOutResultList){
+        this.signOutResultList = signOutResultList;
+    }
+
+    /**
+     * 鑾峰彇 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @return signOutResultNotList
+     */
+    public List<Integer> getSignOutResultNotList(){
+        return this.signOutResultNotList;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultNotList
+     */
+    public void setSignOutResultNotList(List<Integer> signOutResultNotList){
+        this.signOutResultNotList = signOutResultNotList;
+    }
+
+
+    /**
+     * 鑾峰彇 鑰冨嫟绫诲瀷
+     * @return attendTypeList
+     */
+    public List<String> getAttendTypeList(){
+        return this.attendTypeList;
+    }
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeList
+     */
+    public void setAttendTypeList(List<String> attendTypeList){
+        this.attendTypeList = attendTypeList;
+    }
+
+    /**
+     * 鑾峰彇 鑰冨嫟绫诲瀷
+     * @return attendTypeNotList
+     */
+    public List<String> getAttendTypeNotList(){
+        return this.attendTypeNotList;
+    }
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeNotList
+     */
+    public void setAttendTypeNotList(List<String> attendTypeNotList){
+        this.attendTypeNotList = attendTypeNotList;
+    }
+
+    /**
+     * 鑾峰彇 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultStart
+     */
+    public Integer getPunchResultStart(){
+        return this.punchResultStart;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultStart
+     */
+    public void setPunchResultStart(Integer punchResultStart){
+        this.punchResultStart = punchResultStart;
+    }
+
+    /**
+     * 鑾峰彇 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return $punchResultEnd
+     */
+    public Integer getPunchResultEnd(){
+        return this.punchResultEnd;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultEnd
+     */
+    public void setPunchResultEnd(Integer punchResultEnd){
+        this.punchResultEnd = punchResultEnd;
+    }
+
+    /**
+     * 鑾峰彇 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultIncrement
+     */
+    public Integer getPunchResultIncrement(){
+        return this.punchResultIncrement;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultIncrement
+     */
+    public void setPunchResultIncrement(Integer punchResultIncrement){
+        this.punchResultIncrement = punchResultIncrement;
+    }
+
+    /**
+     * 鑾峰彇 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultList
+     */
+    public List<Integer> getPunchResultList(){
+        return this.punchResultList;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultList
+     */
+    public void setPunchResultList(List<Integer> punchResultList){
+        this.punchResultList = punchResultList;
+    }
+
+    /**
+     * 鑾峰彇 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @return punchResultNotList
+     */
+    public List<Integer> getPunchResultNotList(){
+        return this.punchResultNotList;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultNotList
+     */
+    public void setPunchResultNotList(List<Integer> punchResultNotList){
+        this.punchResultNotList = punchResultNotList;
+    }
+
+
+    /**
+     * 璁剧疆  搴忓彿锛屼富閿紝鑷闀�
+     * @param id
+     */
     public AttendanceRecordQuery id(Long id){
-	    setId(id);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
-    * @param idStart
-    */
+        setId(id);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 搴忓彿锛屼富閿紝鑷闀�
+     * @param idStart
+     */
     public AttendanceRecordQuery idStart(Long idStart){
-		this.idStart = idStart;
-		return this;
+        this.idStart = idStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
-    * @param idEnd
-    */
+     * 璁剧疆 缁撴潫 搴忓彿锛屼富閿紝鑷闀�
+     * @param idEnd
+     */
     public AttendanceRecordQuery idEnd(Long idEnd){
-		this.idEnd = idEnd;
-		return this;
+        this.idEnd = idEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
-    * @param idIncrement
-    */
+     * 璁剧疆 澧炲姞 搴忓彿锛屼富閿紝鑷闀�
+     * @param idIncrement
+     */
     public AttendanceRecordQuery idIncrement(Long idIncrement){
-		this.idIncrement = idIncrement;
-		return this;
+        this.idIncrement = idIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-    * @param idList
-    */
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idList
+     */
     public AttendanceRecordQuery idList(List<Long> idList){
         this.idList = idList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
-        * @param idNotList
-        */
-        public AttendanceRecordQuery idNotList(List<Long> idNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 搴忓彿锛屼富閿紝鑷闀�
+     * @param idNotList
+     */
+    public AttendanceRecordQuery idNotList(List<Long> idNotList){
         this.idNotList = idNotList;
         return this;
-        }
+    }
 
     /**
-    * 璁剧疆  鍛樺伐ID
-    * @param staffId
-    */
+     * 璁剧疆  鍛樺伐ID
+     * @param staffId
+     */
     public AttendanceRecordQuery staffId(Long staffId){
-	    setStaffId(staffId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鍛樺伐ID
-    * @param staffIdStart
-    */
+        setStaffId(staffId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鍛樺伐ID
+     * @param staffIdStart
+     */
     public AttendanceRecordQuery staffIdStart(Long staffIdStart){
-		this.staffIdStart = staffIdStart;
-		return this;
+        this.staffIdStart = staffIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍛樺伐ID
-    * @param staffIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍛樺伐ID
+     * @param staffIdEnd
+     */
     public AttendanceRecordQuery staffIdEnd(Long staffIdEnd){
-		this.staffIdEnd = staffIdEnd;
-		return this;
+        this.staffIdEnd = staffIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍛樺伐ID
-    * @param staffIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍛樺伐ID
+     * @param staffIdIncrement
+     */
     public AttendanceRecordQuery staffIdIncrement(Long staffIdIncrement){
-		this.staffIdIncrement = staffIdIncrement;
-		return this;
+        this.staffIdIncrement = staffIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍛樺伐ID
-    * @param staffIdList
-    */
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdList
+     */
     public AttendanceRecordQuery staffIdList(List<Long> staffIdList){
         this.staffIdList = staffIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鍛樺伐ID
-        * @param staffIdNotList
-        */
-        public AttendanceRecordQuery staffIdNotList(List<Long> staffIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鍛樺伐ID
+     * @param staffIdNotList
+     */
+    public AttendanceRecordQuery staffIdNotList(List<Long> staffIdNotList){
         this.staffIdNotList = staffIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffName
-    */
+    /**
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffName
+     */
     public AttendanceRecordQuery staffName(String staffName){
         setStaffName(staffName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍛樺伐濮撳悕
-    * @param staffNameList
-    */
+     * 璁剧疆 鍛樺伐濮撳悕
+     * @param staffNameList
+     */
     public AttendanceRecordQuery staffNameList(List<String> staffNameList){
         this.staffNameList = staffNameList;
-		return this;
+        return this;
     }
 
 
-	/**
-    * 璁剧疆 宸ュ彿
-    * @param workNum
-    */
+    /**
+     * 璁剧疆 宸ュ彿
+     * @param workNum
+     */
     public AttendanceRecordQuery workNum(String workNum){
         setWorkNum(workNum);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 宸ュ彿
-    * @param workNumList
-    */
+     * 璁剧疆 宸ュ彿
+     * @param workNumList
+     */
     public AttendanceRecordQuery workNumList(List<String> workNumList){
         this.workNumList = workNumList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鎵€灞為儴闂�
-    * @param deptId
-    */
+     * 璁剧疆  鎵€灞為儴闂�
+     * @param deptId
+     */
     public AttendanceRecordQuery deptId(Long deptId){
-	    setDeptId(deptId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鎵€灞為儴闂�
-    * @param deptIdStart
-    */
+        setDeptId(deptId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵€灞為儴闂�
+     * @param deptIdStart
+     */
     public AttendanceRecordQuery deptIdStart(Long deptIdStart){
-		this.deptIdStart = deptIdStart;
-		return this;
+        this.deptIdStart = deptIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞為儴闂�
-    * @param deptIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞為儴闂�
+     * @param deptIdEnd
+     */
     public AttendanceRecordQuery deptIdEnd(Long deptIdEnd){
-		this.deptIdEnd = deptIdEnd;
-		return this;
+        this.deptIdEnd = deptIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞為儴闂�
-    * @param deptIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞為儴闂�
+     * @param deptIdIncrement
+     */
     public AttendanceRecordQuery deptIdIncrement(Long deptIdIncrement){
-		this.deptIdIncrement = deptIdIncrement;
-		return this;
+        this.deptIdIncrement = deptIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂�
-    * @param deptIdList
-    */
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdList
+     */
     public AttendanceRecordQuery deptIdList(List<Long> deptIdList){
         this.deptIdList = deptIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鎵€灞為儴闂�
-        * @param deptIdNotList
-        */
-        public AttendanceRecordQuery deptIdNotList(List<Long> deptIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵€灞為儴闂�
+     * @param deptIdNotList
+     */
+    public AttendanceRecordQuery deptIdNotList(List<Long> deptIdNotList){
         this.deptIdNotList = deptIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptName
-    */
+    /**
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptName
+     */
     public AttendanceRecordQuery deptName(String deptName){
         setDeptName(deptName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
-    * @param deptNameList
-    */
+     * 璁剧疆 鎵€灞為儴闂ㄥ悕绉�
+     * @param deptNameList
+     */
     public AttendanceRecordQuery deptNameList(List<String> deptNameList){
         this.deptNameList = deptNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鑱屼綅ID
-    * @param positionId
-    */
+     * 璁剧疆  鑱屼綅ID
+     * @param positionId
+     */
     public AttendanceRecordQuery positionId(Long positionId){
-	    setPositionId(positionId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鑱屼綅ID
-    * @param positionIdStart
-    */
+        setPositionId(positionId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鑱屼綅ID
+     * @param positionIdStart
+     */
     public AttendanceRecordQuery positionIdStart(Long positionIdStart){
-		this.positionIdStart = positionIdStart;
-		return this;
+        this.positionIdStart = positionIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鑱屼綅ID
-    * @param positionIdEnd
-    */
+     * 璁剧疆 缁撴潫 鑱屼綅ID
+     * @param positionIdEnd
+     */
     public AttendanceRecordQuery positionIdEnd(Long positionIdEnd){
-		this.positionIdEnd = positionIdEnd;
-		return this;
+        this.positionIdEnd = positionIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鑱屼綅ID
-    * @param positionIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鑱屼綅ID
+     * @param positionIdIncrement
+     */
     public AttendanceRecordQuery positionIdIncrement(Long positionIdIncrement){
-		this.positionIdIncrement = positionIdIncrement;
-		return this;
+        this.positionIdIncrement = positionIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鑱屼綅ID
-    * @param positionIdList
-    */
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdList
+     */
     public AttendanceRecordQuery positionIdList(List<Long> positionIdList){
         this.positionIdList = positionIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鑱屼綅ID
-        * @param positionIdNotList
-        */
-        public AttendanceRecordQuery positionIdNotList(List<Long> positionIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鑱屼綅ID
+     * @param positionIdNotList
+     */
+    public AttendanceRecordQuery positionIdNotList(List<Long> positionIdNotList){
         this.positionIdNotList = positionIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionName
-    */
+    /**
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionName
+     */
     public AttendanceRecordQuery positionName(String positionName){
         setPositionName(positionName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鑱屼綅鍚嶇О
-    * @param positionNameList
-    */
+     * 璁剧疆 鑱屼綅鍚嶇О
+     * @param positionNameList
+     */
     public AttendanceRecordQuery positionNameList(List<String> positionNameList){
         this.positionNameList = positionNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupId
-    */
+     * 璁剧疆  鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupId
+     */
     public AttendanceRecordQuery attendanceGroupId(Long attendanceGroupId){
-	    setAttendanceGroupId(attendanceGroupId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdStart
-    */
+        setAttendanceGroupId(attendanceGroupId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdStart
+     */
     public AttendanceRecordQuery attendanceGroupIdStart(Long attendanceGroupIdStart){
-		this.attendanceGroupIdStart = attendanceGroupIdStart;
-		return this;
+        this.attendanceGroupIdStart = attendanceGroupIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdEnd
-    */
+     * 璁剧疆 缁撴潫 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdEnd
+     */
     public AttendanceRecordQuery attendanceGroupIdEnd(Long attendanceGroupIdEnd){
-		this.attendanceGroupIdEnd = attendanceGroupIdEnd;
-		return this;
+        this.attendanceGroupIdEnd = attendanceGroupIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdIncrement
+     */
     public AttendanceRecordQuery attendanceGroupIdIncrement(Long attendanceGroupIdIncrement){
-		this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
-		return this;
+        this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁処D
-    * @param attendanceGroupIdList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdList
+     */
     public AttendanceRecordQuery attendanceGroupIdList(List<Long> attendanceGroupIdList){
         this.attendanceGroupIdList = attendanceGroupIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鎵€灞炶€冨嫟缁処D
-        * @param attendanceGroupIdNotList
-        */
-        public AttendanceRecordQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵€灞炶€冨嫟缁処D
+     * @param attendanceGroupIdNotList
+     */
+    public AttendanceRecordQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
         this.attendanceGroupIdNotList = attendanceGroupIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupName
-    */
+    /**
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupName
+     */
     public AttendanceRecordQuery attendanceGroupName(String attendanceGroupName){
         setAttendanceGroupName(attendanceGroupName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
-    * @param attendanceGroupNameList
-    */
+     * 璁剧疆 鎵€灞炶€冨嫟缁勫悕绉�
+     * @param attendanceGroupNameList
+     */
     public AttendanceRecordQuery attendanceGroupNameList(List<String> attendanceGroupNameList){
         this.attendanceGroupNameList = attendanceGroupNameList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鐝ID
-    * @param shiftsId
-    */
+     * 璁剧疆  鐝ID
+     * @param shiftsId
+     */
     public AttendanceRecordQuery shiftsId(Long shiftsId){
-	    setShiftsId(shiftsId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鐝ID
-    * @param shiftsIdStart
-    */
+        setShiftsId(shiftsId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鐝ID
+     * @param shiftsIdStart
+     */
     public AttendanceRecordQuery shiftsIdStart(Long shiftsIdStart){
-		this.shiftsIdStart = shiftsIdStart;
-		return this;
+        this.shiftsIdStart = shiftsIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鐝ID
-    * @param shiftsIdEnd
-    */
+     * 璁剧疆 缁撴潫 鐝ID
+     * @param shiftsIdEnd
+     */
     public AttendanceRecordQuery shiftsIdEnd(Long shiftsIdEnd){
-		this.shiftsIdEnd = shiftsIdEnd;
-		return this;
+        this.shiftsIdEnd = shiftsIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鐝ID
-    * @param shiftsIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鐝ID
+     * @param shiftsIdIncrement
+     */
     public AttendanceRecordQuery shiftsIdIncrement(Long shiftsIdIncrement){
-		this.shiftsIdIncrement = shiftsIdIncrement;
-		return this;
+        this.shiftsIdIncrement = shiftsIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鐝ID
-    * @param shiftsIdList
-    */
+     * 璁剧疆 鐝ID
+     * @param shiftsIdList
+     */
     public AttendanceRecordQuery shiftsIdList(List<Long> shiftsIdList){
         this.shiftsIdList = shiftsIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鐝ID
-        * @param shiftsIdNotList
-        */
-        public AttendanceRecordQuery shiftsIdNotList(List<Long> shiftsIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鐝ID
+     * @param shiftsIdNotList
+     */
+    public AttendanceRecordQuery shiftsIdNotList(List<Long> shiftsIdNotList){
         this.shiftsIdNotList = shiftsIdNotList;
         return this;
-        }
+    }
 
 
-	/**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsName
-    */
+    /**
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsName
+     */
     public AttendanceRecordQuery shiftsName(String shiftsName){
         setShiftsName(shiftsName);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 鐝鍚嶇О
-    * @param shiftsNameList
-    */
+     * 璁剧疆 鐝鍚嶇О
+     * @param shiftsNameList
+     */
     public AttendanceRecordQuery shiftsNameList(List<String> shiftsNameList){
         this.shiftsNameList = shiftsNameList;
-		return this;
+        return this;
     }
 
 
 
-	/**
-    * 璁剧疆 澶囨敞
-    * @param remark
-    */
+    /**
+     * 璁剧疆 澶囨敞
+     * @param remark
+     */
     public AttendanceRecordQuery remark(String remark){
         setRemark(remark);
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆 澶囨敞
-    * @param remarkList
-    */
+     * 璁剧疆 澶囨敞
+     * @param remarkList
+     */
     public AttendanceRecordQuery remarkList(List<String> remarkList){
         this.remarkList = remarkList;
-		return this;
+        return this;
     }
 
     /**
-    * 璁剧疆  鍒涘缓鐢ㄦ埛
-    * @param createUserId
-    */
+     * 璁剧疆  鍒涘缓鐢ㄦ埛
+     * @param createUserId
+     */
     public AttendanceRecordQuery createUserId(Long createUserId){
-	    setCreateUserId(createUserId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
-    * @param createUserIdStart
-    */
+        setCreateUserId(createUserId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鍒涘缓鐢ㄦ埛
+     * @param createUserIdStart
+     */
     public AttendanceRecordQuery createUserIdStart(Long createUserIdStart){
-		this.createUserIdStart = createUserIdStart;
-		return this;
+        this.createUserIdStart = createUserIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
-    * @param createUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鍒涘缓鐢ㄦ埛
+     * @param createUserIdEnd
+     */
     public AttendanceRecordQuery createUserIdEnd(Long createUserIdEnd){
-		this.createUserIdEnd = createUserIdEnd;
-		return this;
+        this.createUserIdEnd = createUserIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
-    * @param createUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鍒涘缓鐢ㄦ埛
+     * @param createUserIdIncrement
+     */
     public AttendanceRecordQuery createUserIdIncrement(Long createUserIdIncrement){
-		this.createUserIdIncrement = createUserIdIncrement;
-		return this;
+        this.createUserIdIncrement = createUserIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鍒涘缓鐢ㄦ埛
-    * @param createUserIdList
-    */
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdList
+     */
     public AttendanceRecordQuery createUserIdList(List<Long> createUserIdList){
         this.createUserIdList = createUserIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鍒涘缓鐢ㄦ埛
-        * @param createUserIdNotList
-        */
-        public AttendanceRecordQuery createUserIdNotList(List<Long> createUserIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鍒涘缓鐢ㄦ埛
+     * @param createUserIdNotList
+     */
+    public AttendanceRecordQuery createUserIdNotList(List<Long> createUserIdNotList){
         this.createUserIdNotList = createUserIdNotList;
         return this;
-        }
+    }
 
 
     /**
-    * 璁剧疆  鏇存柊鐢ㄦ埛
-    * @param updateUserId
-    */
+     * 璁剧疆  鏇存柊鐢ㄦ埛
+     * @param updateUserId
+     */
     public AttendanceRecordQuery updateUserId(Long updateUserId){
-	    setUpdateUserId(updateUserId);
-		return this;
-    }
-	
-	 /**
-    * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
-    * @param updateUserIdStart
-    */
+        setUpdateUserId(updateUserId);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鏇存柊鐢ㄦ埛
+     * @param updateUserIdStart
+     */
     public AttendanceRecordQuery updateUserIdStart(Long updateUserIdStart){
-		this.updateUserIdStart = updateUserIdStart;
-		return this;
+        this.updateUserIdStart = updateUserIdStart;
+        return this;
     }
 
     /**
-    * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
-    * @param updateUserIdEnd
-    */
+     * 璁剧疆 缁撴潫 鏇存柊鐢ㄦ埛
+     * @param updateUserIdEnd
+     */
     public AttendanceRecordQuery updateUserIdEnd(Long updateUserIdEnd){
-		this.updateUserIdEnd = updateUserIdEnd;
-		return this;
+        this.updateUserIdEnd = updateUserIdEnd;
+        return this;
     }
 
     /**
-    * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
-    * @param updateUserIdIncrement
-    */
+     * 璁剧疆 澧炲姞 鏇存柊鐢ㄦ埛
+     * @param updateUserIdIncrement
+     */
     public AttendanceRecordQuery updateUserIdIncrement(Long updateUserIdIncrement){
-		this.updateUserIdIncrement = updateUserIdIncrement;
-		return this;
+        this.updateUserIdIncrement = updateUserIdIncrement;
+        return this;
     }
 
     /**
-    * 璁剧疆 鏇存柊鐢ㄦ埛
-    * @param updateUserIdList
-    */
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdList
+     */
     public AttendanceRecordQuery updateUserIdList(List<Long> updateUserIdList){
         this.updateUserIdList = updateUserIdList;
-		return this;
-        }
-
-        /**
-        * 璁剧疆 鏇存柊鐢ㄦ埛
-        * @param updateUserIdNotList
-        */
-        public AttendanceRecordQuery updateUserIdNotList(List<Long> updateUserIdNotList){
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鏇存柊鐢ㄦ埛
+     * @param updateUserIdNotList
+     */
+    public AttendanceRecordQuery updateUserIdNotList(List<Long> updateUserIdNotList){
         this.updateUserIdNotList = updateUserIdNotList;
         return this;
-        }
+    }
+
+
+    /**
+     * 璁剧疆  绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResult
+     */
+    public AttendanceRecordQuery signInResult(Integer signInResult){
+        setSignInResult(signInResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultStart
+     */
+    public AttendanceRecordQuery signInResultStart(Integer signInResultStart){
+        this.signInResultStart = signInResultStart;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultEnd
+     */
+    public AttendanceRecordQuery signInResultEnd(Integer signInResultEnd){
+        this.signInResultEnd = signInResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultIncrement
+     */
+    public AttendanceRecordQuery signInResultIncrement(Integer signInResultIncrement){
+        this.signInResultIncrement = signInResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultList
+     */
+    public AttendanceRecordQuery signInResultList(List<Integer> signInResultList){
+        this.signInResultList = signInResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛惧埌缁撴灉(0.鍚�,1.鏄�)
+     * @param signInResultNotList
+     */
+    public AttendanceRecordQuery signInResultNotList(List<Integer> signInResultNotList){
+        this.signInResultNotList = signInResultNotList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆  绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResult
+     */
+    public AttendanceRecordQuery signOutResult(Integer signOutResult){
+        setSignOutResult(signOutResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultStart
+     */
+    public AttendanceRecordQuery signOutResultStart(Integer signOutResultStart){
+        this.signOutResultStart = signOutResultStart;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultEnd
+     */
+    public AttendanceRecordQuery signOutResultEnd(Integer signOutResultEnd){
+        this.signOutResultEnd = signOutResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultIncrement
+     */
+    public AttendanceRecordQuery signOutResultIncrement(Integer signOutResultIncrement){
+        this.signOutResultIncrement = signOutResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultList
+     */
+    public AttendanceRecordQuery signOutResultList(List<Integer> signOutResultList){
+        this.signOutResultList = signOutResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 绛鹃€€缁撴灉(0.鍚�,1.鏄�)
+     * @param signOutResultNotList
+     */
+    public AttendanceRecordQuery signOutResultNotList(List<Integer> signOutResultNotList){
+        this.signOutResultNotList = signOutResultNotList;
+        return this;
+    }
+
+
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendType
+     */
+    public AttendanceRecordQuery attendType(String attendType){
+        setAttendType(attendType);
+        return this;
+    }
 
+    /**
+     * 璁剧疆 鑰冨嫟绫诲瀷
+     * @param attendTypeList
+     */
+    public AttendanceRecordQuery attendTypeList(List<String> attendTypeList){
+        this.attendTypeList = attendTypeList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆  鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResult
+     */
+    public AttendanceRecordQuery punchResult(Integer punchResult){
+        setPunchResult(punchResult);
+        return this;
+    }
+
+    /**
+     * 璁剧疆 寮€濮� 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultStart
+     */
+    public AttendanceRecordQuery punchResultStart(Integer punchResultStart){
+        this.punchResultStart = punchResultStart;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 缁撴潫 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultEnd
+     */
+    public AttendanceRecordQuery punchResultEnd(Integer punchResultEnd){
+        this.punchResultEnd = punchResultEnd;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 澧炲姞 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultIncrement
+     */
+    public AttendanceRecordQuery punchResultIncrement(Integer punchResultIncrement){
+        this.punchResultIncrement = punchResultIncrement;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultList
+     */
+    public AttendanceRecordQuery punchResultList(List<Integer> punchResultList){
+        this.punchResultList = punchResultList;
+        return this;
+    }
+
+    /**
+     * 璁剧疆 鎵撳崱缁撴灉(0.鍚�,1.鏄�)
+     * @param punchResultNotList
+     */
+    public AttendanceRecordQuery punchResultNotList(List<Integer> punchResultNotList){
+        this.punchResultNotList = punchResultNotList;
+        return this;
+    }
 
     /**
-    * 鑾峰彇 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
-    * @return orConditionList
-    */
+     * 鑾峰彇 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
+     * @return orConditionList
+     */
     public List<AttendanceRecordQuery> getOrConditionList(){
-    return this.orConditionList;
+        return this.orConditionList;
     }
 
     /**
-    * 璁剧疆 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
-    * @param orConditionList
-    */
+     * 璁剧疆 OR鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疧R锛岄」鍐呭涔嬮棿鏄疉ND锛屽锛�(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
+     * @param orConditionList
+     */
     public void setOrConditionList(List<AttendanceRecordQuery> orConditionList){
         this.orConditionList = orConditionList;
     }
 
     /**
-    * 鑾峰彇 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
-    * @return andConditionList
-    */
+     * 鑾峰彇 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
+     * @return andConditionList
+     */
     public List<AttendanceRecordQuery> getAndConditionList(){
         return this.andConditionList;
     }
 
     /**
-    * 璁剧疆 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
-    * @param andConditionList
-    */
+     * 璁剧疆 AND鏉′欢闆嗗悎锛屽垪琛ㄩ」涔嬮棿鏄疉ND锛岄」鍐呭涔嬮棿鏄疧R锛屽锛�(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
+     * @param andConditionList
+     */
     public void setAndConditionList(List<AttendanceRecordQuery> andConditionList){
         this.andConditionList = andConditionList;
     }
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceStatEntity.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceStatEntity.java
index 48d40fed40e39a1e78426cdc73d7b2300733bba8..a3af6b0c39a6ea3dec0a462adebe5dad38b13229 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceStatEntity.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceStatEntity.java
@@ -332,10 +332,10 @@ public class AttendanceStatEntity extends AttendanceStatVo {
 
         this.phoneNumer = "";
 
-        this.goTimes = -1;
+        this.goTimes = 0;
 
-        this.morningTimes = -1;
+        this.morningTimes = 0;
 
-        this.afternoonTimes = -1;
+        this.afternoonTimes = 0;
     }
 }
\ No newline at end of file
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordVo.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordVo.java
index e440ef1a6a74cfd16c4b0752dc75ffc702a1973f..23754d448c9cac76bc41431f2c3f8b9d57198ee8 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordVo.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordVo.java
@@ -19,6 +19,12 @@ public class AttendanceRecordVo extends BaseEntityLong {
 
     private AttendanceRecordDetailEntity attendanceRecordDetailEntity;
 
+    /**
+     * 鑰冨嫟鎵撳崱璁板綍璇︾粏淇℃伅淇℃伅
+     */
+    private List<AttendanceRecordDetailEntity> attendanceRecordDetailList=new ArrayList<>();;
+
+
     /** 寮€濮� 鎵撳崱鏃ユ湡 */
     private String attendanceDateStart;
 
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordController.java
index 311dbad67a195889e79047ce6250bb8f90934e14..79b11466ce0d2945c39ea60fce202e4553d5ac4f 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordController.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordController.java
@@ -6,6 +6,7 @@ import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
 import com.mortals.xhx.base.system.param.service.ParamService;
 import com.mortals.xhx.common.code.GoWorkResultEnum;
 import com.mortals.xhx.common.code.OffWorkResultEnum;
+import com.mortals.xhx.common.code.YesNoEnum;
 import com.mortals.xhx.module.attendance.model.*;
 import com.mortals.xhx.module.attendance.service.AttendanceClassService;
 import com.mortals.xhx.module.attendance.service.AttendanceGroupService;
@@ -56,6 +57,9 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
         this.addDict(model, "classId", attendanceClassService.find(new AttendanceClassQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getClassName())));
         this.addDict(model, "goWorkResult", GoWorkResultEnum.getEnumMap());
         this.addDict(model, "offWorkResult", OffWorkResultEnum.getEnumMap());
+        this.addDict(model, "signInResult", YesNoEnum.getEnumMap());
+        this.addDict(model, "signOutResult", YesNoEnum.getEnumMap());
+        this.addDict(model, "punchResult", YesNoEnum.getEnumMap());
 
         //璁剧疆
 
@@ -122,6 +126,7 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
         Iterator<AttendanceRecordEntity> iterator = list.iterator();
         while (iterator.hasNext()) {
             AttendanceRecordEntity recordEntity = iterator.next();
+
             Set<Integer> existSet = recordEntity.getAttendanceRecordDetailList().stream().map(i -> i.getOrderNum()).collect(Collectors.toSet());
             //鍒ゆ柇璇︾粏鍒楄〃涓槸鍚﹀瓨鍦ㄩ『搴� 娌℃湁鑷姩濉厖绌哄璞℃暟鎹�
             List<AttendanceRecordDetailEntity> addDetailList = dsyncSet.stream().map(i -> {
diff --git a/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordHikMapper.xml b/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordHikMapper.xml
index bb64ae5ac1911032fbddd3bf59e523389c0f3027..e7caa5abe3179608f15adc0b40fcef3d25c6642b 100644
--- a/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordHikMapper.xml
+++ b/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordHikMapper.xml
@@ -1,114 +1,130 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"mybatis-3-mapper.dtd">
+        "mybatis-3-mapper.dtd">
 <mapper namespace="com.mortals.xhx.module.attendance.dao.ibatis.AttendanceRecordHikDaoImpl">
 
     <!-- 瀛楁鍜屽睘鎬ф槧灏� -->
     <resultMap type="AttendanceRecordHikEntity" id="AttendanceRecordHikEntity-Map">
-            <id  property="id" column="id" />
-            <result property="staffId" column="staffId" />
-            <result property="staffName" column="staffName" />
-            <result property="workNum" column="workNum" />
-            <result property="deptId" column="deptId" />
-            <result property="deptName" column="deptName" />
-            <result property="positionId" column="positionId" />
-            <result property="positionName" column="positionName" />
-            <result property="attendanceGroupId" column="attendanceGroupId" />
-            <result property="attendanceGroupName" column="attendanceGroupName" />
-            <result property="shiftsId" column="shiftsId" />
-            <result property="shiftsName" column="shiftsName" />
-            <result property="attendanceDate" column="attendanceDate" />
-            <result property="attendanceAddress" column="attendanceAddress" />
-            <result property="eventSource" column="eventSource" />
-            <result property="remark" column="remark" />
-            <result property="createUserId" column="createUserId" />
-            <result property="createTime" column="createTime" />
-            <result property="updateUserId" column="updateUserId" />
-            <result property="updateTime" column="updateTime" />
-            
+        <id  property="id" column="id" />
+        <result property="staffId" column="staffId" />
+        <result property="staffName" column="staffName" />
+        <result property="workNum" column="workNum" />
+        <result property="deptId" column="deptId" />
+        <result property="deptName" column="deptName" />
+        <result property="positionId" column="positionId" />
+        <result property="positionName" column="positionName" />
+        <result property="attendanceGroupId" column="attendanceGroupId" />
+        <result property="attendanceGroupName" column="attendanceGroupName" />
+        <result property="shiftsId" column="shiftsId" />
+        <result property="shiftsName" column="shiftsName" />
+        <result property="attendanceDate" column="attendanceDate" />
+        <result property="attendanceAddress" column="attendanceAddress" />
+        <result property="eventSource" column="eventSource" />
+        <result property="remark" column="remark" />
+        <result property="createUserId" column="createUserId" />
+        <result property="createTime" column="createTime" />
+        <result property="updateUserId" column="updateUserId" />
+        <result property="updateTime" column="updateTime" />
+        <result property="signInResult" column="signInResult" />
+        <result property="signOutResult" column="signOutResult" />
+        <result property="attendType" column="attendType" />
+        <result property="punchResult" column="punchResult" />
+
     </resultMap>
 
 
     <!-- 琛ㄦ墍鏈夊垪 -->
     <sql id="_columns">
         <trim suffixOverrides="," suffix="">
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
-                    a.id,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('staffId') or colPickMode == 1 and data.containsKey('staffId')))">
-                    a.staffId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('staffName') or colPickMode == 1 and data.containsKey('staffName')))">
-                    a.staffName,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('workNum') or colPickMode == 1 and data.containsKey('workNum')))">
-                    a.workNum,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('deptId') or colPickMode == 1 and data.containsKey('deptId')))">
-                    a.deptId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('deptName') or colPickMode == 1 and data.containsKey('deptName')))">
-                    a.deptName,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('positionId') or colPickMode == 1 and data.containsKey('positionId')))">
-                    a.positionId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('positionName') or colPickMode == 1 and data.containsKey('positionName')))">
-                    a.positionName,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceGroupId') or colPickMode == 1 and data.containsKey('attendanceGroupId')))">
-                    a.attendanceGroupId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceGroupName') or colPickMode == 1 and data.containsKey('attendanceGroupName')))">
-                    a.attendanceGroupName,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('shiftsId') or colPickMode == 1 and data.containsKey('shiftsId')))">
-                    a.shiftsId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('shiftsName') or colPickMode == 1 and data.containsKey('shiftsName')))">
-                    a.shiftsName,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceDate') or colPickMode == 1 and data.containsKey('attendanceDate')))">
-                    a.attendanceDate,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceAddress') or colPickMode == 1 and data.containsKey('attendanceAddress')))">
-                    a.attendanceAddress,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('eventSource') or colPickMode == 1 and data.containsKey('eventSource')))">
-                    a.eventSource,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('remark') or colPickMode == 1 and data.containsKey('remark')))">
-                    a.remark,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
-                    a.createUserId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
-                    a.createTime,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
-                    a.updateUserId,
-                </if>
-                <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
-                    a.updateTime,
-                </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
+                a.id,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('staffId') or colPickMode == 1 and data.containsKey('staffId')))">
+                a.staffId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('staffName') or colPickMode == 1 and data.containsKey('staffName')))">
+                a.staffName,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('workNum') or colPickMode == 1 and data.containsKey('workNum')))">
+                a.workNum,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('deptId') or colPickMode == 1 and data.containsKey('deptId')))">
+                a.deptId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('deptName') or colPickMode == 1 and data.containsKey('deptName')))">
+                a.deptName,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('positionId') or colPickMode == 1 and data.containsKey('positionId')))">
+                a.positionId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('positionName') or colPickMode == 1 and data.containsKey('positionName')))">
+                a.positionName,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceGroupId') or colPickMode == 1 and data.containsKey('attendanceGroupId')))">
+                a.attendanceGroupId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceGroupName') or colPickMode == 1 and data.containsKey('attendanceGroupName')))">
+                a.attendanceGroupName,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('shiftsId') or colPickMode == 1 and data.containsKey('shiftsId')))">
+                a.shiftsId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('shiftsName') or colPickMode == 1 and data.containsKey('shiftsName')))">
+                a.shiftsName,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceDate') or colPickMode == 1 and data.containsKey('attendanceDate')))">
+                a.attendanceDate,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendanceAddress') or colPickMode == 1 and data.containsKey('attendanceAddress')))">
+                a.attendanceAddress,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('eventSource') or colPickMode == 1 and data.containsKey('eventSource')))">
+                a.eventSource,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('remark') or colPickMode == 1 and data.containsKey('remark')))">
+                a.remark,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
+                a.createUserId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
+                a.createTime,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
+                a.updateUserId,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
+                a.updateTime,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('signInResult') or colPickMode == 1 and data.containsKey('signInResult')))">
+                a.signInResult,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('signOutResult') or colPickMode == 1 and data.containsKey('signOutResult')))">
+                a.signOutResult,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendType') or colPickMode == 1 and data.containsKey('attendType')))">
+                a.attendType,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('punchResult') or colPickMode == 1 and data.containsKey('punchResult')))">
+                a.punchResult,
+            </if>
         </trim>
     </sql>
     <!-- 鏂板 鍖哄垎涓婚敭鑷鍔犺繕鏄笟鍔℃彃鍏� -->
     <insert id="insert" parameterType="AttendanceRecordHikEntity"  useGeneratedKeys="true" keyProperty="id">
         insert into mortals_xhx_attendance_record_hik
-        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,attendanceAddress,eventSource,remark,createUserId,createTime,updateUserId,updateTime)
+        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,attendanceAddress,eventSource,remark,createUserId,createTime,updateUserId,updateTime,signInResult,signOutResult,attendType,punchResult)
         VALUES
-        (#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{positionId},#{positionName},#{attendanceGroupId},#{attendanceGroupName},#{shiftsId},#{shiftsName},#{attendanceDate},#{attendanceAddress},#{eventSource},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
+        (#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{positionId},#{positionName},#{attendanceGroupId},#{attendanceGroupName},#{shiftsId},#{shiftsName},#{attendanceDate},#{attendanceAddress},#{eventSource},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{signInResult},#{signOutResult},#{attendType},#{punchResult})
     </insert>
 
     <!-- 鎵归噺鏂板 -->
     <insert id="insertBatch" parameterType="paramDto">
         insert into mortals_xhx_attendance_record_hik
-        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,attendanceAddress,eventSource,remark,createUserId,createTime,updateUserId,updateTime)
+        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,attendanceAddress,eventSource,remark,createUserId,createTime,updateUserId,updateTime,signInResult,signOutResult,attendType,punchResult)
         VALUES
         <foreach collection="data.dataList" item="item" index="index" separator="," >
-            (#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.positionId},#{item.positionName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.shiftsId},#{item.shiftsName},#{item.attendanceDate},#{item.attendanceAddress},#{item.eventSource},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
+            (#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.positionId},#{item.positionName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.shiftsId},#{item.shiftsName},#{item.attendanceDate},#{item.attendanceAddress},#{item.eventSource},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.signInResult},#{item.signOutResult},#{item.attendType},#{item.punchResult})
         </foreach>
     </insert>
 
@@ -196,6 +212,27 @@
             <if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
                 a.updateTime=#{data.updateTime},
             </if>
+            <if test="(colPickMode==0 and data.containsKey('signInResult')) or (colPickMode==1 and !data.containsKey('signInResult'))">
+                a.signInResult=#{data.signInResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signInResultIncrement')) or (colPickMode==1 and !data.containsKey('signInResultIncrement'))">
+                a.signInResult=ifnull(a.signInResult,0) + #{data.signInResultIncrement},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signOutResult')) or (colPickMode==1 and !data.containsKey('signOutResult'))">
+                a.signOutResult=#{data.signOutResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signOutResultIncrement')) or (colPickMode==1 and !data.containsKey('signOutResultIncrement'))">
+                a.signOutResult=ifnull(a.signOutResult,0) + #{data.signOutResultIncrement},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('attendType')) or (colPickMode==1 and !data.containsKey('attendType'))">
+                a.attendType=#{data.attendType},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('punchResult')) or (colPickMode==1 and !data.containsKey('punchResult'))">
+                a.punchResult=#{data.punchResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('punchResultIncrement')) or (colPickMode==1 and !data.containsKey('punchResultIncrement'))">
+                a.punchResult=ifnull(a.punchResult,0) + #{data.punchResultIncrement},
+            </if>
         </trim>
         <trim suffixOverrides="where" suffix="">
             where
@@ -208,174 +245,217 @@
     <update id="updateBatch" parameterType="paramDto">
         update mortals_xhx_attendance_record_hik as a
         <trim prefix="set" suffixOverrides=",">
-                        <trim prefix="staffId=(case" suffix="ELSE staffId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('staffId')) or (colPickMode==1 and !item.containsKey('staffId'))">
-                                        when a.id=#{item.id} then #{item.staffId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('staffIdIncrement')) or (colPickMode==1 and !item.containsKey('staffIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.staffId,0) + #{item.staffIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="staffName=(case" suffix="ELSE staffName end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('staffName')) or (colPickMode==1 and !item.containsKey('staffName'))">
-                            when a.id=#{item.id} then #{item.staffName}
-                        </if>
-                    </foreach>
-                </trim>
-                <trim prefix="workNum=(case" suffix="ELSE workNum end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('workNum')) or (colPickMode==1 and !item.containsKey('workNum'))">
-                            when a.id=#{item.id} then #{item.workNum}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="deptId=(case" suffix="ELSE deptId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('deptId')) or (colPickMode==1 and !item.containsKey('deptId'))">
-                                        when a.id=#{item.id} then #{item.deptId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('deptIdIncrement')) or (colPickMode==1 and !item.containsKey('deptIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.deptId,0) + #{item.deptIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="deptName=(case" suffix="ELSE deptName end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('deptName')) or (colPickMode==1 and !item.containsKey('deptName'))">
-                            when a.id=#{item.id} then #{item.deptName}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="positionId=(case" suffix="ELSE positionId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('positionId')) or (colPickMode==1 and !item.containsKey('positionId'))">
-                                        when a.id=#{item.id} then #{item.positionId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('positionIdIncrement')) or (colPickMode==1 and !item.containsKey('positionIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.positionId,0) + #{item.positionIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="positionName=(case" suffix="ELSE positionName end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('positionName')) or (colPickMode==1 and !item.containsKey('positionName'))">
-                            when a.id=#{item.id} then #{item.positionName}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="attendanceGroupId=(case" suffix="ELSE attendanceGroupId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('attendanceGroupId')) or (colPickMode==1 and !item.containsKey('attendanceGroupId'))">
-                                        when a.id=#{item.id} then #{item.attendanceGroupId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('attendanceGroupIdIncrement')) or (colPickMode==1 and !item.containsKey('attendanceGroupIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.attendanceGroupId,0) + #{item.attendanceGroupIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="attendanceGroupName=(case" suffix="ELSE attendanceGroupName end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('attendanceGroupName')) or (colPickMode==1 and !item.containsKey('attendanceGroupName'))">
-                            when a.id=#{item.id} then #{item.attendanceGroupName}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="shiftsId=(case" suffix="ELSE shiftsId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('shiftsId')) or (colPickMode==1 and !item.containsKey('shiftsId'))">
-                                        when a.id=#{item.id} then #{item.shiftsId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('shiftsIdIncrement')) or (colPickMode==1 and !item.containsKey('shiftsIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.shiftsId,0) + #{item.shiftsIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="shiftsName=(case" suffix="ELSE shiftsName end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('shiftsName')) or (colPickMode==1 and !item.containsKey('shiftsName'))">
-                            when a.id=#{item.id} then #{item.shiftsName}
-                        </if>
-                    </foreach>
-                </trim>
-                <trim prefix="attendanceDate=(case" suffix="ELSE attendanceDate end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('attendanceDate')) or (colPickMode==1 and !item.containsKey('attendanceDate'))">
-                            when a.id=#{item.id} then #{item.attendanceDate}
-                        </if>
-                    </foreach>
-                </trim>
-                <trim prefix="attendanceAddress=(case" suffix="ELSE attendanceAddress end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('attendanceAddress')) or (colPickMode==1 and !item.containsKey('attendanceAddress'))">
-                            when a.id=#{item.id} then #{item.attendanceAddress}
-                        </if>
-                    </foreach>
-                </trim>
-                <trim prefix="eventSource=(case" suffix="ELSE eventSource end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('eventSource')) or (colPickMode==1 and !item.containsKey('eventSource'))">
-                            when a.id=#{item.id} then #{item.eventSource}
-                        </if>
-                    </foreach>
-                </trim>
-                <trim prefix="remark=(case" suffix="ELSE remark end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
-                            when a.id=#{item.id} then #{item.remark}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="createUserId=(case" suffix="ELSE createUserId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
-                                        when a.id=#{item.id} then #{item.createUserId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="createTime=(case" suffix="ELSE createTime end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
-                            when a.id=#{item.id} then #{item.createTime}
-                        </if>
-                    </foreach>
-                </trim>
-                        <trim prefix="updateUserId=(case" suffix="ELSE updateUserId end),">
-                            <foreach collection="data.dataList" item="item" index="index" separator="" >
-                                <choose>
-                                    <when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
-                                        when a.id=#{item.id} then #{item.updateUserId}
-                                    </when>
-                                    <when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
-                                        when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
-                                    </when>
-                                </choose>
-                            </foreach>
-                        </trim>
-                <trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
-                    <foreach collection="data.dataList" item="item" index="index" separator="" >
-                        <if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
-                            when a.id=#{item.id} then #{item.updateTime}
-                        </if>
-                    </foreach>
-                </trim>
+            <trim prefix="staffId=(case" suffix="ELSE staffId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('staffId')) or (colPickMode==1 and !item.containsKey('staffId'))">
+                            when a.id=#{item.id} then #{item.staffId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('staffIdIncrement')) or (colPickMode==1 and !item.containsKey('staffIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.staffId,0) + #{item.staffIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="staffName=(case" suffix="ELSE staffName end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('staffName')) or (colPickMode==1 and !item.containsKey('staffName'))">
+                        when a.id=#{item.id} then #{item.staffName}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="workNum=(case" suffix="ELSE workNum end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('workNum')) or (colPickMode==1 and !item.containsKey('workNum'))">
+                        when a.id=#{item.id} then #{item.workNum}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="deptId=(case" suffix="ELSE deptId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('deptId')) or (colPickMode==1 and !item.containsKey('deptId'))">
+                            when a.id=#{item.id} then #{item.deptId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('deptIdIncrement')) or (colPickMode==1 and !item.containsKey('deptIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.deptId,0) + #{item.deptIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="deptName=(case" suffix="ELSE deptName end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('deptName')) or (colPickMode==1 and !item.containsKey('deptName'))">
+                        when a.id=#{item.id} then #{item.deptName}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="positionId=(case" suffix="ELSE positionId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('positionId')) or (colPickMode==1 and !item.containsKey('positionId'))">
+                            when a.id=#{item.id} then #{item.positionId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('positionIdIncrement')) or (colPickMode==1 and !item.containsKey('positionIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.positionId,0) + #{item.positionIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="positionName=(case" suffix="ELSE positionName end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('positionName')) or (colPickMode==1 and !item.containsKey('positionName'))">
+                        when a.id=#{item.id} then #{item.positionName}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="attendanceGroupId=(case" suffix="ELSE attendanceGroupId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('attendanceGroupId')) or (colPickMode==1 and !item.containsKey('attendanceGroupId'))">
+                            when a.id=#{item.id} then #{item.attendanceGroupId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('attendanceGroupIdIncrement')) or (colPickMode==1 and !item.containsKey('attendanceGroupIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.attendanceGroupId,0) + #{item.attendanceGroupIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="attendanceGroupName=(case" suffix="ELSE attendanceGroupName end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('attendanceGroupName')) or (colPickMode==1 and !item.containsKey('attendanceGroupName'))">
+                        when a.id=#{item.id} then #{item.attendanceGroupName}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="shiftsId=(case" suffix="ELSE shiftsId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('shiftsId')) or (colPickMode==1 and !item.containsKey('shiftsId'))">
+                            when a.id=#{item.id} then #{item.shiftsId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('shiftsIdIncrement')) or (colPickMode==1 and !item.containsKey('shiftsIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.shiftsId,0) + #{item.shiftsIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="shiftsName=(case" suffix="ELSE shiftsName end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('shiftsName')) or (colPickMode==1 and !item.containsKey('shiftsName'))">
+                        when a.id=#{item.id} then #{item.shiftsName}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="attendanceDate=(case" suffix="ELSE attendanceDate end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('attendanceDate')) or (colPickMode==1 and !item.containsKey('attendanceDate'))">
+                        when a.id=#{item.id} then #{item.attendanceDate}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="attendanceAddress=(case" suffix="ELSE attendanceAddress end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('attendanceAddress')) or (colPickMode==1 and !item.containsKey('attendanceAddress'))">
+                        when a.id=#{item.id} then #{item.attendanceAddress}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="eventSource=(case" suffix="ELSE eventSource end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('eventSource')) or (colPickMode==1 and !item.containsKey('eventSource'))">
+                        when a.id=#{item.id} then #{item.eventSource}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="remark=(case" suffix="ELSE remark end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
+                        when a.id=#{item.id} then #{item.remark}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="createUserId=(case" suffix="ELSE createUserId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
+                            when a.id=#{item.id} then #{item.createUserId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="createTime=(case" suffix="ELSE createTime end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
+                        when a.id=#{item.id} then #{item.createTime}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="updateUserId=(case" suffix="ELSE updateUserId end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
+                            when a.id=#{item.id} then #{item.updateUserId}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
+                        when a.id=#{item.id} then #{item.updateTime}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="signInResult=(case" suffix="ELSE signInResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('signInResult')) or (colPickMode==1 and !item.containsKey('signInResult'))">
+                            when a.id=#{item.id} then #{item.signInResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('signInResultIncrement')) or (colPickMode==1 and !item.containsKey('signInResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.signInResult,0) + #{item.signInResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="signOutResult=(case" suffix="ELSE signOutResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('signOutResult')) or (colPickMode==1 and !item.containsKey('signOutResult'))">
+                            when a.id=#{item.id} then #{item.signOutResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('signOutResultIncrement')) or (colPickMode==1 and !item.containsKey('signOutResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.signOutResult,0) + #{item.signOutResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="attendType=(case" suffix="ELSE attendType end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('attendType')) or (colPickMode==1 and !item.containsKey('attendType'))">
+                        when a.id=#{item.id} then #{item.attendType}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="punchResult=(case" suffix="ELSE punchResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('punchResult')) or (colPickMode==1 and !item.containsKey('punchResult'))">
+                            when a.id=#{item.id} then #{item.punchResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('punchResultIncrement')) or (colPickMode==1 and !item.containsKey('punchResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.punchResult,0) + #{item.punchResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
         </trim>
         where id in
         <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
@@ -492,569 +572,691 @@
                 ${_conditionType_} a.id=#{${_conditionParam_}.id}
             </if>
         </if>
-            <if test="conditionParamRef.containsKey('id')">
-                <if test="conditionParamRef.id != null ">
-                    ${_conditionType_} a.id = #{${_conditionParam_}.id}
-                </if>
-                <if test="conditionParamRef.id == null">
-                    ${_conditionType_} a.id is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('idList')">
-                ${_conditionType_} a.id in
-                <foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('idNotList')">
-                ${_conditionType_} a.id not in
-                <foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
-                ${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
+        <if test="conditionParamRef.containsKey('id')">
+            <if test="conditionParamRef.id != null ">
+                ${_conditionType_} a.id = #{${_conditionParam_}.id}
             </if>
-            <if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
-                ${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
+            <if test="conditionParamRef.id == null">
+                ${_conditionType_} a.id is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
+            ${_conditionType_} a.id in
+            <foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
+            ${_conditionType_} a.id not in
+            <foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
+            ${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
+        </if>
+        <if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
+            ${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
+        </if>
 
-            <if test="conditionParamRef.containsKey('staffId')">
-                <if test="conditionParamRef.staffId != null ">
-                    ${_conditionType_} a.staffId = #{${_conditionParam_}.staffId}
-                </if>
-                <if test="conditionParamRef.staffId == null">
-                    ${_conditionType_} a.staffId is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('staffIdList')">
-                ${_conditionType_} a.staffId in
-                <foreach collection="conditionParamRef.staffIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('staffIdNotList')">
-                ${_conditionType_} a.staffId not in
-                <foreach collection="conditionParamRef.staffIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        <if test="conditionParamRef.containsKey('staffId')">
+            <if test="conditionParamRef.staffId != null ">
+                ${_conditionType_} a.staffId = #{${_conditionParam_}.staffId}
             </if>
-            <if test="conditionParamRef.containsKey('staffIdStart') and conditionParamRef.staffIdStart != null">
-                ${_conditionType_} a.staffId <![CDATA[ >= ]]> #{${_conditionParam_}.staffIdStart}
-            </if>
-            <if test="conditionParamRef.containsKey('staffIdEnd') and conditionParamRef.staffIdEnd != null">
-                ${_conditionType_} a.staffId <![CDATA[ <= ]]> #{${_conditionParam_}.staffIdEnd}
+            <if test="conditionParamRef.staffId == null">
+                ${_conditionType_} a.staffId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('staffIdList') and conditionParamRef.staffIdList.size() > 0">
+            ${_conditionType_} a.staffId in
+            <foreach collection="conditionParamRef.staffIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('staffIdNotList') and conditionParamRef.staffIdNotList.size() > 0">
+            ${_conditionType_} a.staffId not in
+            <foreach collection="conditionParamRef.staffIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('staffIdStart') and conditionParamRef.staffIdStart != null">
+            ${_conditionType_} a.staffId <![CDATA[ >= ]]> #{${_conditionParam_}.staffIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('staffIdEnd') and conditionParamRef.staffIdEnd != null">
+            ${_conditionType_} a.staffId <![CDATA[ <= ]]> #{${_conditionParam_}.staffIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('staffName')">
-                <if test="conditionParamRef.staffName != null and conditionParamRef.staffName != ''">
-                    ${_conditionType_} a.staffName like #{${_conditionParam_}.staffName}
-                </if>
-                <if test="conditionParamRef.staffName == null">
-                    ${_conditionType_} a.staffName is null
-                </if>
+        <if test="conditionParamRef.containsKey('staffName')">
+            <if test="conditionParamRef.staffName != null and conditionParamRef.staffName != ''">
+                ${_conditionType_} a.staffName like #{${_conditionParam_}.staffName}
             </if>
-            <if test="conditionParamRef.containsKey('staffNameList')">
-                ${_conditionType_} a.staffName in
-                <foreach collection="conditionParamRef.staffNameList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('staffNameNotList')">
-                ${_conditionType_} a.staffName not in
-                <foreach collection="conditionParamRef.staffNameNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.staffName == null">
+                ${_conditionType_} a.staffName is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('staffNameList') and conditionParamRef.staffNameList.size() > 0">
+            ${_conditionType_} a.staffName in
+            <foreach collection="conditionParamRef.staffNameList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('staffNameNotList') and conditionParamRef.staffNameNotList.size() > 0">
+            ${_conditionType_} a.staffName not in
+            <foreach collection="conditionParamRef.staffNameNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
 
-            <if test="conditionParamRef.containsKey('workNum')">
-                <if test="conditionParamRef.workNum != null and conditionParamRef.workNum != ''">
-                    ${_conditionType_} a.workNum like #{${_conditionParam_}.workNum}
-                </if>
-                <if test="conditionParamRef.workNum == null">
-                    ${_conditionType_} a.workNum is null
-                </if>
+        <if test="conditionParamRef.containsKey('workNum')">
+            <if test="conditionParamRef.workNum != null and conditionParamRef.workNum != ''">
+                ${_conditionType_} a.workNum like #{${_conditionParam_}.workNum}
             </if>
-            <if test="conditionParamRef.containsKey('workNumList')">
-                ${_conditionType_} a.workNum in
-                <foreach collection="conditionParamRef.workNumList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('workNumNotList')">
-                ${_conditionType_} a.workNum not in
-                <foreach collection="conditionParamRef.workNumNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('deptId')">
-                <if test="conditionParamRef.deptId != null ">
-                    ${_conditionType_} a.deptId = #{${_conditionParam_}.deptId}
-                </if>
-                <if test="conditionParamRef.deptId == null">
-                    ${_conditionType_} a.deptId is null
-                </if>
+            <if test="conditionParamRef.workNum == null">
+                ${_conditionType_} a.workNum is null
             </if>
-            <if test="conditionParamRef.containsKey('deptIdList')">
-                ${_conditionType_} a.deptId in
-                <foreach collection="conditionParamRef.deptIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('deptIdNotList')">
-                ${_conditionType_} a.deptId not in
-                <foreach collection="conditionParamRef.deptIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('deptIdStart') and conditionParamRef.deptIdStart != null">
-                ${_conditionType_} a.deptId <![CDATA[ >= ]]> #{${_conditionParam_}.deptIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('workNumList') and conditionParamRef.workNumList.size() > 0">
+            ${_conditionType_} a.workNum in
+            <foreach collection="conditionParamRef.workNumList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('workNumNotList') and conditionParamRef.workNumNotList.size() > 0">
+            ${_conditionType_} a.workNum not in
+            <foreach collection="conditionParamRef.workNumNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('deptId')">
+            <if test="conditionParamRef.deptId != null ">
+                ${_conditionType_} a.deptId = #{${_conditionParam_}.deptId}
             </if>
-            <if test="conditionParamRef.containsKey('deptIdEnd') and conditionParamRef.deptIdEnd != null">
-                ${_conditionType_} a.deptId <![CDATA[ <= ]]> #{${_conditionParam_}.deptIdEnd}
+            <if test="conditionParamRef.deptId == null">
+                ${_conditionType_} a.deptId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('deptIdList') and conditionParamRef.deptIdList.size() > 0">
+            ${_conditionType_} a.deptId in
+            <foreach collection="conditionParamRef.deptIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('deptIdNotList') and conditionParamRef.deptIdNotList.size() > 0">
+            ${_conditionType_} a.deptId not in
+            <foreach collection="conditionParamRef.deptIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('deptIdStart') and conditionParamRef.deptIdStart != null">
+            ${_conditionType_} a.deptId <![CDATA[ >= ]]> #{${_conditionParam_}.deptIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('deptIdEnd') and conditionParamRef.deptIdEnd != null">
+            ${_conditionType_} a.deptId <![CDATA[ <= ]]> #{${_conditionParam_}.deptIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('deptName')">
-                <if test="conditionParamRef.deptName != null and conditionParamRef.deptName != ''">
-                    ${_conditionType_} a.deptName like #{${_conditionParam_}.deptName}
-                </if>
-                <if test="conditionParamRef.deptName == null">
-                    ${_conditionType_} a.deptName is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('deptNameList')">
-                ${_conditionType_} a.deptName in
-                <foreach collection="conditionParamRef.deptNameList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        <if test="conditionParamRef.containsKey('deptName')">
+            <if test="conditionParamRef.deptName != null and conditionParamRef.deptName != ''">
+                ${_conditionType_} a.deptName like #{${_conditionParam_}.deptName}
             </if>
-            <if test="conditionParamRef.containsKey('deptNameNotList')">
-                ${_conditionType_} a.deptName not in
-                <foreach collection="conditionParamRef.deptNameNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('positionId')">
-                <if test="conditionParamRef.positionId != null ">
-                    ${_conditionType_} a.positionId = #{${_conditionParam_}.positionId}
-                </if>
-                <if test="conditionParamRef.positionId == null">
-                    ${_conditionType_} a.positionId is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('positionIdList')">
-                ${_conditionType_} a.positionId in
-                <foreach collection="conditionParamRef.positionIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.deptName == null">
+                ${_conditionType_} a.deptName is null
             </if>
-            <if test="conditionParamRef.containsKey('positionIdNotList')">
-                ${_conditionType_} a.positionId not in
-                <foreach collection="conditionParamRef.positionIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('positionIdStart') and conditionParamRef.positionIdStart != null">
-                ${_conditionType_} a.positionId <![CDATA[ >= ]]> #{${_conditionParam_}.positionIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('deptNameList') and conditionParamRef.deptNameList.size() > 0">
+            ${_conditionType_} a.deptName in
+            <foreach collection="conditionParamRef.deptNameList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('deptNameNotList') and conditionParamRef.deptNameNotList.size() > 0">
+            ${_conditionType_} a.deptName not in
+            <foreach collection="conditionParamRef.deptNameNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('positionId')">
+            <if test="conditionParamRef.positionId != null ">
+                ${_conditionType_} a.positionId = #{${_conditionParam_}.positionId}
             </if>
-            <if test="conditionParamRef.containsKey('positionIdEnd') and conditionParamRef.positionIdEnd != null">
-                ${_conditionType_} a.positionId <![CDATA[ <= ]]> #{${_conditionParam_}.positionIdEnd}
+            <if test="conditionParamRef.positionId == null">
+                ${_conditionType_} a.positionId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('positionIdList') and conditionParamRef.positionIdList.size() > 0">
+            ${_conditionType_} a.positionId in
+            <foreach collection="conditionParamRef.positionIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('positionIdNotList') and conditionParamRef.positionIdNotList.size() > 0">
+            ${_conditionType_} a.positionId not in
+            <foreach collection="conditionParamRef.positionIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('positionIdStart') and conditionParamRef.positionIdStart != null">
+            ${_conditionType_} a.positionId <![CDATA[ >= ]]> #{${_conditionParam_}.positionIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('positionIdEnd') and conditionParamRef.positionIdEnd != null">
+            ${_conditionType_} a.positionId <![CDATA[ <= ]]> #{${_conditionParam_}.positionIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('positionName')">
-                <if test="conditionParamRef.positionName != null and conditionParamRef.positionName != ''">
-                    ${_conditionType_} a.positionName like #{${_conditionParam_}.positionName}
-                </if>
-                <if test="conditionParamRef.positionName == null">
-                    ${_conditionType_} a.positionName is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('positionNameList')">
-                ${_conditionType_} a.positionName in
-                <foreach collection="conditionParamRef.positionNameList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        <if test="conditionParamRef.containsKey('positionName')">
+            <if test="conditionParamRef.positionName != null and conditionParamRef.positionName != ''">
+                ${_conditionType_} a.positionName like #{${_conditionParam_}.positionName}
             </if>
-            <if test="conditionParamRef.containsKey('positionNameNotList')">
-                ${_conditionType_} a.positionName not in
-                <foreach collection="conditionParamRef.positionNameNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.positionName == null">
+                ${_conditionType_} a.positionName is null
             </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupId')">
-                <if test="conditionParamRef.attendanceGroupId != null ">
-                    ${_conditionType_} a.attendanceGroupId = #{${_conditionParam_}.attendanceGroupId}
-                </if>
-                <if test="conditionParamRef.attendanceGroupId == null">
-                    ${_conditionType_} a.attendanceGroupId is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupIdList')">
-                ${_conditionType_} a.attendanceGroupId in
-                <foreach collection="conditionParamRef.attendanceGroupIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupIdNotList')">
-                ${_conditionType_} a.attendanceGroupId not in
-                <foreach collection="conditionParamRef.attendanceGroupIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupIdStart') and conditionParamRef.attendanceGroupIdStart != null">
-                ${_conditionType_} a.attendanceGroupId <![CDATA[ >= ]]> #{${_conditionParam_}.attendanceGroupIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('positionNameList') and conditionParamRef.positionNameList.size() > 0">
+            ${_conditionType_} a.positionName in
+            <foreach collection="conditionParamRef.positionNameList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('positionNameNotList') and conditionParamRef.positionNameNotList.size() > 0">
+            ${_conditionType_} a.positionName not in
+            <foreach collection="conditionParamRef.positionNameNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupId')">
+            <if test="conditionParamRef.attendanceGroupId != null ">
+                ${_conditionType_} a.attendanceGroupId = #{${_conditionParam_}.attendanceGroupId}
             </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupIdEnd') and conditionParamRef.attendanceGroupIdEnd != null">
-                ${_conditionType_} a.attendanceGroupId <![CDATA[ <= ]]> #{${_conditionParam_}.attendanceGroupIdEnd}
+            <if test="conditionParamRef.attendanceGroupId == null">
+                ${_conditionType_} a.attendanceGroupId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupIdList') and conditionParamRef.attendanceGroupIdList.size() > 0">
+            ${_conditionType_} a.attendanceGroupId in
+            <foreach collection="conditionParamRef.attendanceGroupIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupIdNotList') and conditionParamRef.attendanceGroupIdNotList.size() > 0">
+            ${_conditionType_} a.attendanceGroupId not in
+            <foreach collection="conditionParamRef.attendanceGroupIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupIdStart') and conditionParamRef.attendanceGroupIdStart != null">
+            ${_conditionType_} a.attendanceGroupId <![CDATA[ >= ]]> #{${_conditionParam_}.attendanceGroupIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupIdEnd') and conditionParamRef.attendanceGroupIdEnd != null">
+            ${_conditionType_} a.attendanceGroupId <![CDATA[ <= ]]> #{${_conditionParam_}.attendanceGroupIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('attendanceGroupName')">
-                <if test="conditionParamRef.attendanceGroupName != null and conditionParamRef.attendanceGroupName != ''">
-                    ${_conditionType_} a.attendanceGroupName like #{${_conditionParam_}.attendanceGroupName}
-                </if>
-                <if test="conditionParamRef.attendanceGroupName == null">
-                    ${_conditionType_} a.attendanceGroupName is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupNameList')">
-                ${_conditionType_} a.attendanceGroupName in
-                <foreach collection="conditionParamRef.attendanceGroupNameList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceGroupNameNotList')">
-                ${_conditionType_} a.attendanceGroupName not in
-                <foreach collection="conditionParamRef.attendanceGroupNameNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('shiftsId')">
-                <if test="conditionParamRef.shiftsId != null ">
-                    ${_conditionType_} a.shiftsId = #{${_conditionParam_}.shiftsId}
-                </if>
-                <if test="conditionParamRef.shiftsId == null">
-                    ${_conditionType_} a.shiftsId is null
-                </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupName')">
+            <if test="conditionParamRef.attendanceGroupName != null and conditionParamRef.attendanceGroupName != ''">
+                ${_conditionType_} a.attendanceGroupName like #{${_conditionParam_}.attendanceGroupName}
             </if>
-            <if test="conditionParamRef.containsKey('shiftsIdList')">
-                ${_conditionType_} a.shiftsId in
-                <foreach collection="conditionParamRef.shiftsIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('shiftsIdNotList')">
-                ${_conditionType_} a.shiftsId not in
-                <foreach collection="conditionParamRef.shiftsIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.attendanceGroupName == null">
+                ${_conditionType_} a.attendanceGroupName is null
             </if>
-            <if test="conditionParamRef.containsKey('shiftsIdStart') and conditionParamRef.shiftsIdStart != null">
-                ${_conditionType_} a.shiftsId <![CDATA[ >= ]]> #{${_conditionParam_}.shiftsIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupNameList') and conditionParamRef.attendanceGroupNameList.size() > 0">
+            ${_conditionType_} a.attendanceGroupName in
+            <foreach collection="conditionParamRef.attendanceGroupNameList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceGroupNameNotList') and conditionParamRef.attendanceGroupNameNotList.size() > 0">
+            ${_conditionType_} a.attendanceGroupName not in
+            <foreach collection="conditionParamRef.attendanceGroupNameNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsId')">
+            <if test="conditionParamRef.shiftsId != null ">
+                ${_conditionType_} a.shiftsId = #{${_conditionParam_}.shiftsId}
             </if>
-            <if test="conditionParamRef.containsKey('shiftsIdEnd') and conditionParamRef.shiftsIdEnd != null">
-                ${_conditionType_} a.shiftsId <![CDATA[ <= ]]> #{${_conditionParam_}.shiftsIdEnd}
+            <if test="conditionParamRef.shiftsId == null">
+                ${_conditionType_} a.shiftsId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsIdList') and conditionParamRef.shiftsIdList.size() > 0">
+            ${_conditionType_} a.shiftsId in
+            <foreach collection="conditionParamRef.shiftsIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsIdNotList') and conditionParamRef.shiftsIdNotList.size() > 0">
+            ${_conditionType_} a.shiftsId not in
+            <foreach collection="conditionParamRef.shiftsIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsIdStart') and conditionParamRef.shiftsIdStart != null">
+            ${_conditionType_} a.shiftsId <![CDATA[ >= ]]> #{${_conditionParam_}.shiftsIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsIdEnd') and conditionParamRef.shiftsIdEnd != null">
+            ${_conditionType_} a.shiftsId <![CDATA[ <= ]]> #{${_conditionParam_}.shiftsIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('shiftsName')">
-                <if test="conditionParamRef.shiftsName != null and conditionParamRef.shiftsName != ''">
-                    ${_conditionType_} a.shiftsName like #{${_conditionParam_}.shiftsName}
-                </if>
-                <if test="conditionParamRef.shiftsName == null">
-                    ${_conditionType_} a.shiftsName is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('shiftsNameList')">
-                ${_conditionType_} a.shiftsName in
-                <foreach collection="conditionParamRef.shiftsNameList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        <if test="conditionParamRef.containsKey('shiftsName')">
+            <if test="conditionParamRef.shiftsName != null and conditionParamRef.shiftsName != ''">
+                ${_conditionType_} a.shiftsName like #{${_conditionParam_}.shiftsName}
             </if>
-            <if test="conditionParamRef.containsKey('shiftsNameNotList')">
-                ${_conditionType_} a.shiftsName not in
-                <foreach collection="conditionParamRef.shiftsNameNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.shiftsName == null">
+                ${_conditionType_} a.shiftsName is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsNameList') and conditionParamRef.shiftsNameList.size() > 0">
+            ${_conditionType_} a.shiftsName in
+            <foreach collection="conditionParamRef.shiftsNameList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('shiftsNameNotList') and conditionParamRef.shiftsNameNotList.size() > 0">
+            ${_conditionType_} a.shiftsName not in
+            <foreach collection="conditionParamRef.shiftsNameNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
 
-            <if test="conditionParamRef.containsKey('attendanceDate')">
-                <if test="conditionParamRef.attendanceDate != null ">
-                    ${_conditionType_} a.attendanceDate = #{${_conditionParam_}.attendanceDate}
-                </if>
-                <if test="conditionParamRef.attendanceDate == null">
-                    ${_conditionType_} a.attendanceDate is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceDateStart') and conditionParamRef.attendanceDateStart != null and conditionParamRef.attendanceDateStart!=''">
-                ${_conditionType_} a.attendanceDate <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.attendanceDateStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
+        <if test="conditionParamRef.containsKey('attendanceDate')">
+            <if test="conditionParamRef.attendanceDate != null ">
+                ${_conditionType_} a.attendanceDate = #{${_conditionParam_}.attendanceDate}
             </if>
-            <if test="conditionParamRef.containsKey('attendanceDateEnd') and conditionParamRef.attendanceDateEnd != null and conditionParamRef.attendanceDateEnd!=''">
-                ${_conditionType_} a.attendanceDate <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.attendanceDateEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+            <if test="conditionParamRef.attendanceDate == null">
+                ${_conditionType_} a.attendanceDate is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceDateStart') and conditionParamRef.attendanceDateStart != null and conditionParamRef.attendanceDateStart!=''">
+            ${_conditionType_} a.attendanceDate <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.attendanceDateStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceDateEnd') and conditionParamRef.attendanceDateEnd != null and conditionParamRef.attendanceDateEnd!=''">
+            ${_conditionType_} a.attendanceDate <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.attendanceDateEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
 
-            <if test="conditionParamRef.containsKey('attendanceAddress')">
-                <if test="conditionParamRef.attendanceAddress != null and conditionParamRef.attendanceAddress != ''">
-                    ${_conditionType_} a.attendanceAddress like #{${_conditionParam_}.attendanceAddress}
-                </if>
-                <if test="conditionParamRef.attendanceAddress == null">
-                    ${_conditionType_} a.attendanceAddress is null
-                </if>
+        <if test="conditionParamRef.containsKey('attendanceAddress')">
+            <if test="conditionParamRef.attendanceAddress != null and conditionParamRef.attendanceAddress != ''">
+                ${_conditionType_} a.attendanceAddress like #{${_conditionParam_}.attendanceAddress}
             </if>
-            <if test="conditionParamRef.containsKey('attendanceAddressList')">
-                ${_conditionType_} a.attendanceAddress in
-                <foreach collection="conditionParamRef.attendanceAddressList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
-            </if>
-            <if test="conditionParamRef.containsKey('attendanceAddressNotList')">
-                ${_conditionType_} a.attendanceAddress not in
-                <foreach collection="conditionParamRef.attendanceAddressNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.attendanceAddress == null">
+                ${_conditionType_} a.attendanceAddress is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceAddressList') and conditionParamRef.attendanceAddressList.size() > 0">
+            ${_conditionType_} a.attendanceAddress in
+            <foreach collection="conditionParamRef.attendanceAddressList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendanceAddressNotList') and conditionParamRef.attendanceAddressNotList.size() > 0">
+            ${_conditionType_} a.attendanceAddress not in
+            <foreach collection="conditionParamRef.attendanceAddressNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
 
-            <if test="conditionParamRef.containsKey('eventSource')">
-                <if test="conditionParamRef.eventSource != null and conditionParamRef.eventSource != ''">
-                    ${_conditionType_} a.eventSource like #{${_conditionParam_}.eventSource}
-                </if>
-                <if test="conditionParamRef.eventSource == null">
-                    ${_conditionType_} a.eventSource is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('eventSourceList')">
-                ${_conditionType_} a.eventSource in
-                <foreach collection="conditionParamRef.eventSourceList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        <if test="conditionParamRef.containsKey('eventSource')">
+            <if test="conditionParamRef.eventSource != null and conditionParamRef.eventSource != ''">
+                ${_conditionType_} a.eventSource like #{${_conditionParam_}.eventSource}
             </if>
-            <if test="conditionParamRef.containsKey('eventSourceNotList')">
-                ${_conditionType_} a.eventSource not in
-                <foreach collection="conditionParamRef.eventSourceNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.eventSource == null">
+                ${_conditionType_} a.eventSource is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('eventSourceList') and conditionParamRef.eventSourceList.size() > 0">
+            ${_conditionType_} a.eventSource in
+            <foreach collection="conditionParamRef.eventSourceList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('eventSourceNotList') and conditionParamRef.eventSourceNotList.size() > 0">
+            ${_conditionType_} a.eventSource not in
+            <foreach collection="conditionParamRef.eventSourceNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
 
-            <if test="conditionParamRef.containsKey('remark')">
-                <if test="conditionParamRef.remark != null and conditionParamRef.remark != ''">
-                    ${_conditionType_} a.remark like #{${_conditionParam_}.remark}
-                </if>
-                <if test="conditionParamRef.remark == null">
-                    ${_conditionType_} a.remark is null
-                </if>
+        <if test="conditionParamRef.containsKey('remark')">
+            <if test="conditionParamRef.remark != null and conditionParamRef.remark != ''">
+                ${_conditionType_} a.remark like #{${_conditionParam_}.remark}
             </if>
-            <if test="conditionParamRef.containsKey('remarkList')">
-                ${_conditionType_} a.remark in
-                <foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.remark == null">
+                ${_conditionType_} a.remark is null
             </if>
-            <if test="conditionParamRef.containsKey('remarkNotList')">
-                ${_conditionType_} a.remark not in
-                <foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('remarkList') and conditionParamRef.remarkList.size() > 0">
+            ${_conditionType_} a.remark in
+            <foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('remarkNotList') and conditionParamRef.remarkNotList.size() > 0">
+            ${_conditionType_} a.remark not in
+            <foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('createUserId')">
+            <if test="conditionParamRef.createUserId != null ">
+                ${_conditionType_} a.createUserId = #{${_conditionParam_}.createUserId}
             </if>
-            <if test="conditionParamRef.containsKey('createUserId')">
-                <if test="conditionParamRef.createUserId != null ">
-                    ${_conditionType_} a.createUserId = #{${_conditionParam_}.createUserId}
-                </if>
-                <if test="conditionParamRef.createUserId == null">
-                    ${_conditionType_} a.createUserId is null
-                </if>
+            <if test="conditionParamRef.createUserId == null">
+                ${_conditionType_} a.createUserId is null
             </if>
-            <if test="conditionParamRef.containsKey('createUserIdList')">
-                ${_conditionType_} a.createUserId in
-                <foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
+            ${_conditionType_} a.createUserId in
+            <foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
+            ${_conditionType_} a.createUserId not in
+            <foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
+            ${_conditionType_} a.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
+            ${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
+        </if>
+
+
+        <if test="conditionParamRef.containsKey('createTime')">
+            <if test="conditionParamRef.createTime != null ">
+                ${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
             </if>
-            <if test="conditionParamRef.containsKey('createUserIdNotList')">
-                ${_conditionType_} a.createUserId not in
-                <foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.createTime == null">
+                ${_conditionType_} a.createTime is null
             </if>
-            <if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
-                ${_conditionType_} a.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
+            ${_conditionType_} a.createTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
+            ${_conditionType_} a.createTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('updateUserId')">
+            <if test="conditionParamRef.updateUserId != null ">
+                ${_conditionType_} a.updateUserId = #{${_conditionParam_}.updateUserId}
             </if>
-            <if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
-                ${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
+            <if test="conditionParamRef.updateUserId == null">
+                ${_conditionType_} a.updateUserId is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
+            ${_conditionType_} a.updateUserId in
+            <foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
+            ${_conditionType_} a.updateUserId not in
+            <foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
+            ${_conditionType_} a.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
+            ${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('createTime')">
-                <if test="conditionParamRef.createTime != null ">
-                    ${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
-                </if>
-                <if test="conditionParamRef.createTime == null">
-                    ${_conditionType_} a.createTime is null
-                </if>
-            </if>
-            <if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
-                ${_conditionType_} a.createTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
-            </if>
-            <if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
-                ${_conditionType_} a.createTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+        <if test="conditionParamRef.containsKey('updateTime')">
+            <if test="conditionParamRef.updateTime != null ">
+                ${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
             </if>
-            <if test="conditionParamRef.containsKey('updateUserId')">
-                <if test="conditionParamRef.updateUserId != null ">
-                    ${_conditionType_} a.updateUserId = #{${_conditionParam_}.updateUserId}
-                </if>
-                <if test="conditionParamRef.updateUserId == null">
-                    ${_conditionType_} a.updateUserId is null
-                </if>
+            <if test="conditionParamRef.updateTime == null">
+                ${_conditionType_} a.updateTime is null
             </if>
-            <if test="conditionParamRef.containsKey('updateUserIdList')">
-                ${_conditionType_} a.updateUserId in
-                <foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
+            ${_conditionType_} a.updateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
+            ${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('signInResult')">
+            <if test="conditionParamRef.signInResult != null ">
+                ${_conditionType_} a.signInResult = #{${_conditionParam_}.signInResult}
             </if>
-            <if test="conditionParamRef.containsKey('updateUserIdNotList')">
-                ${_conditionType_} a.updateUserId not in
-                <foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
-                    #{item}
-                </foreach>
+            <if test="conditionParamRef.signInResult == null">
+                ${_conditionType_} a.signInResult is null
             </if>
-            <if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
-                ${_conditionType_} a.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultList') and conditionParamRef.signInResultList.size() > 0">
+            ${_conditionType_} a.signInResult in
+            <foreach collection="conditionParamRef.signInResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultNotList') and conditionParamRef.signInResultNotList.size() > 0">
+            ${_conditionType_} a.signInResult not in
+            <foreach collection="conditionParamRef.signInResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultStart') and conditionParamRef.signInResultStart != null">
+            ${_conditionType_} a.signInResult <![CDATA[ >= ]]> #{${_conditionParam_}.signInResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultEnd') and conditionParamRef.signInResultEnd != null">
+            ${_conditionType_} a.signInResult <![CDATA[ <= ]]> #{${_conditionParam_}.signInResultEnd}
+        </if>
+
+        <if test="conditionParamRef.containsKey('signOutResult')">
+            <if test="conditionParamRef.signOutResult != null ">
+                ${_conditionType_} a.signOutResult = #{${_conditionParam_}.signOutResult}
             </if>
-            <if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
-                ${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
+            <if test="conditionParamRef.signOutResult == null">
+                ${_conditionType_} a.signOutResult is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultList') and conditionParamRef.signOutResultList.size() > 0">
+            ${_conditionType_} a.signOutResult in
+            <foreach collection="conditionParamRef.signOutResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultNotList') and conditionParamRef.signOutResultNotList.size() > 0">
+            ${_conditionType_} a.signOutResult not in
+            <foreach collection="conditionParamRef.signOutResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultStart') and conditionParamRef.signOutResultStart != null">
+            ${_conditionType_} a.signOutResult <![CDATA[ >= ]]> #{${_conditionParam_}.signOutResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultEnd') and conditionParamRef.signOutResultEnd != null">
+            ${_conditionType_} a.signOutResult <![CDATA[ <= ]]> #{${_conditionParam_}.signOutResultEnd}
+        </if>
 
 
-            <if test="conditionParamRef.containsKey('updateTime')">
-                <if test="conditionParamRef.updateTime != null ">
-                    ${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
-                </if>
-                <if test="conditionParamRef.updateTime == null">
-                    ${_conditionType_} a.updateTime is null
-                </if>
+        <if test="conditionParamRef.containsKey('attendType')">
+            <if test="conditionParamRef.attendType != null and conditionParamRef.attendType != ''">
+                ${_conditionType_} a.attendType like #{${_conditionParam_}.attendType}
+            </if>
+            <if test="conditionParamRef.attendType == null">
+                ${_conditionType_} a.attendType is null
             </if>
-            <if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
-                ${_conditionType_} a.updateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
+        </if>
+        <if test="conditionParamRef.containsKey('attendTypeList') and conditionParamRef.attendTypeList.size() > 0">
+            ${_conditionType_} a.attendType in
+            <foreach collection="conditionParamRef.attendTypeList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendTypeNotList') and conditionParamRef.attendTypeNotList.size() > 0">
+            ${_conditionType_} a.attendType not in
+            <foreach collection="conditionParamRef.attendTypeNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResult')">
+            <if test="conditionParamRef.punchResult != null ">
+                ${_conditionType_} a.punchResult = #{${_conditionParam_}.punchResult}
             </if>
-            <if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
-                ${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
+            <if test="conditionParamRef.punchResult == null">
+                ${_conditionType_} a.punchResult is null
             </if>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultList') and conditionParamRef.punchResultList.size() > 0">
+            ${_conditionType_} a.punchResult in
+            <foreach collection="conditionParamRef.punchResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultNotList') and conditionParamRef.punchResultNotList.size() > 0">
+            ${_conditionType_} a.punchResult not in
+            <foreach collection="conditionParamRef.punchResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultStart') and conditionParamRef.punchResultStart != null">
+            ${_conditionType_} a.punchResult <![CDATA[ >= ]]> #{${_conditionParam_}.punchResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultEnd') and conditionParamRef.punchResultEnd != null">
+            ${_conditionType_} a.punchResult <![CDATA[ <= ]]> #{${_conditionParam_}.punchResultEnd}
+        </if>
+
     </sql>
     <sql id="_orderCols_">
         <if test="orderColList != null and !orderColList.isEmpty()">
             order by
             <trim suffixOverrides=","  suffix="">
                 <foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
-                     ${item.colName} ${item.sortKind}
+                    ${item.colName} ${item.sortKind}
                 </foreach>
             </trim>
         </if>
         <if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
             order by
             <trim suffixOverrides=","  suffix="">
-                    <if test="orderCol.containsKey('id')">
-                        a.id
-                        <if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('staffId')">
-                        a.staffId
-                        <if test='orderCol.staffId != null and "DESC".equalsIgnoreCase(orderCol.staffId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('staffName')">
-                        a.staffName
-                        <if test='orderCol.staffName != null and "DESC".equalsIgnoreCase(orderCol.staffName)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('workNum')">
-                        a.workNum
-                        <if test='orderCol.workNum != null and "DESC".equalsIgnoreCase(orderCol.workNum)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('deptId')">
-                        a.deptId
-                        <if test='orderCol.deptId != null and "DESC".equalsIgnoreCase(orderCol.deptId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('deptName')">
-                        a.deptName
-                        <if test='orderCol.deptName != null and "DESC".equalsIgnoreCase(orderCol.deptName)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('positionId')">
-                        a.positionId
-                        <if test='orderCol.positionId != null and "DESC".equalsIgnoreCase(orderCol.positionId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('positionName')">
-                        a.positionName
-                        <if test='orderCol.positionName != null and "DESC".equalsIgnoreCase(orderCol.positionName)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('attendanceGroupId')">
-                        a.attendanceGroupId
-                        <if test='orderCol.attendanceGroupId != null and "DESC".equalsIgnoreCase(orderCol.attendanceGroupId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('attendanceGroupName')">
-                        a.attendanceGroupName
-                        <if test='orderCol.attendanceGroupName != null and "DESC".equalsIgnoreCase(orderCol.attendanceGroupName)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('shiftsId')">
-                        a.shiftsId
-                        <if test='orderCol.shiftsId != null and "DESC".equalsIgnoreCase(orderCol.shiftsId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('shiftsName')">
-                        a.shiftsName
-                        <if test='orderCol.shiftsName != null and "DESC".equalsIgnoreCase(orderCol.shiftsName)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('attendanceDate')">
-                        a.attendanceDate
-                        <if test='orderCol.attendanceDate != null and "DESC".equalsIgnoreCase(orderCol.attendanceDate)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('attendanceAddress')">
-                        a.attendanceAddress
-                        <if test='orderCol.attendanceAddress != null and "DESC".equalsIgnoreCase(orderCol.attendanceAddress)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('eventSource')">
-                        a.eventSource
-                        <if test='orderCol.eventSource != null and "DESC".equalsIgnoreCase(orderCol.eventSource)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('remark')">
-                        a.remark
-                        <if test='orderCol.remark != null and "DESC".equalsIgnoreCase(orderCol.remark)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('createUserId')">
-                        a.createUserId
-                        <if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('createTime')">
-                        a.createTime
-                        <if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('updateUserId')">
-                        a.updateUserId
-                        <if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
-                        ,
-                    </if>
-                    <if test="orderCol.containsKey('updateTime')">
-                        a.updateTime
-                        <if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
-                        ,
-                    </if>
+                <if test="orderCol.containsKey('id')">
+                    a.id
+                    <if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('staffId')">
+                    a.staffId
+                    <if test='orderCol.staffId != null and "DESC".equalsIgnoreCase(orderCol.staffId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('staffName')">
+                    a.staffName
+                    <if test='orderCol.staffName != null and "DESC".equalsIgnoreCase(orderCol.staffName)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('workNum')">
+                    a.workNum
+                    <if test='orderCol.workNum != null and "DESC".equalsIgnoreCase(orderCol.workNum)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('deptId')">
+                    a.deptId
+                    <if test='orderCol.deptId != null and "DESC".equalsIgnoreCase(orderCol.deptId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('deptName')">
+                    a.deptName
+                    <if test='orderCol.deptName != null and "DESC".equalsIgnoreCase(orderCol.deptName)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('positionId')">
+                    a.positionId
+                    <if test='orderCol.positionId != null and "DESC".equalsIgnoreCase(orderCol.positionId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('positionName')">
+                    a.positionName
+                    <if test='orderCol.positionName != null and "DESC".equalsIgnoreCase(orderCol.positionName)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendanceGroupId')">
+                    a.attendanceGroupId
+                    <if test='orderCol.attendanceGroupId != null and "DESC".equalsIgnoreCase(orderCol.attendanceGroupId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendanceGroupName')">
+                    a.attendanceGroupName
+                    <if test='orderCol.attendanceGroupName != null and "DESC".equalsIgnoreCase(orderCol.attendanceGroupName)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('shiftsId')">
+                    a.shiftsId
+                    <if test='orderCol.shiftsId != null and "DESC".equalsIgnoreCase(orderCol.shiftsId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('shiftsName')">
+                    a.shiftsName
+                    <if test='orderCol.shiftsName != null and "DESC".equalsIgnoreCase(orderCol.shiftsName)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendanceDate')">
+                    a.attendanceDate
+                    <if test='orderCol.attendanceDate != null and "DESC".equalsIgnoreCase(orderCol.attendanceDate)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendanceAddress')">
+                    a.attendanceAddress
+                    <if test='orderCol.attendanceAddress != null and "DESC".equalsIgnoreCase(orderCol.attendanceAddress)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('eventSource')">
+                    a.eventSource
+                    <if test='orderCol.eventSource != null and "DESC".equalsIgnoreCase(orderCol.eventSource)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('remark')">
+                    a.remark
+                    <if test='orderCol.remark != null and "DESC".equalsIgnoreCase(orderCol.remark)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('createUserId')">
+                    a.createUserId
+                    <if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('createTime')">
+                    a.createTime
+                    <if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('updateUserId')">
+                    a.updateUserId
+                    <if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('updateTime')">
+                    a.updateTime
+                    <if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('signInResult')">
+                    a.signInResult
+                    <if test='orderCol.signInResult != null and "DESC".equalsIgnoreCase(orderCol.signInResult)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('signOutResult')">
+                    a.signOutResult
+                    <if test='orderCol.signOutResult != null and "DESC".equalsIgnoreCase(orderCol.signOutResult)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendType')">
+                    a.attendType
+                    <if test='orderCol.attendType != null and "DESC".equalsIgnoreCase(orderCol.attendType)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('punchResult')">
+                    a.punchResult
+                    <if test='orderCol.punchResult != null and "DESC".equalsIgnoreCase(orderCol.punchResult)'>DESC</if>
+                    ,
+                </if>
             </trim>
         </if>
     </sql>
diff --git a/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordMapper.xml b/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordMapper.xml
index b1d62423aeade2053239ac420a085f0c0b9c9c72..5e7267d7f02ab4c2643cf451483b0578f3479b96 100644
--- a/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordMapper.xml
+++ b/attendance-performance-manager/src/main/resources/sqlmap/module/attendance/AttendanceRecordMapper.xml
@@ -23,23 +23,11 @@
         <result property="createTime" column="createTime" />
         <result property="updateUserId" column="updateUserId" />
         <result property="updateTime" column="updateTime" />
-        <collection property="attendanceRecordDetailList" column="id" ofType="AttendanceRecordDetailEntity" javaType="ArrayList" select="getAttendanceRecordDetailByRecordId"></collection>
-    </resultMap>
-    <resultMap type="AttendanceRecordDetailEntity" id="AttendanceRecordDetailEntity-Map">
-        <result property="id" column="id" />
-        <result property="recordId" column="recordId" />
-        <result property="shiftsId" column="shiftsId" />
-        <result property="shiftsName" column="shiftsName" />
-        <result property="goWorkDate" column="goWorkDate" />
-        <result property="goWorkResult" column="goWorkResult" />
-        <result property="offWorkDate" column="offWorkDate" />
-        <result property="offWorkResult" column="offWorkResult" />
-        <result property="remark" column="remark" />
-        <result property="createUserId" column="createUserId" />
-        <result property="createTime" column="createTime" />
-        <result property="updateUserId" column="updateUserId" />
-        <result property="updateTime" column="updateTime" />
-        <result property="orderNum" column="orderNum" />
+        <result property="signInResult" column="signInResult" />
+        <result property="signOutResult" column="signOutResult" />
+        <result property="attendType" column="attendType" />
+        <result property="punchResult" column="punchResult" />
+
     </resultMap>
 
 
@@ -100,29 +88,35 @@
             <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
                 a.updateTime,
             </if>
-        </trim>
-    </sql>
-    <!-- 瀛愯〃鎵€鏈夊垪 -->
-    <sql id="_columns_sub">
-        <trim suffixOverrides="," suffix="">
-            b.id,b.recordId,b.shiftsId,b.shiftsName,b.goWorkDate,b.goWorkResult,b.offWorkDate,b.offWorkResult,b.remark,b.createUserId,b.createTime,b.updateUserId,b.updateTime,b.orderNum,
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('signInResult') or colPickMode == 1 and data.containsKey('signInResult')))">
+                a.signInResult,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('signOutResult') or colPickMode == 1 and data.containsKey('signOutResult')))">
+                a.signOutResult,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('attendType') or colPickMode == 1 and data.containsKey('attendType')))">
+                a.attendType,
+            </if>
+            <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('punchResult') or colPickMode == 1 and data.containsKey('punchResult')))">
+                a.punchResult,
+            </if>
         </trim>
     </sql>
     <!-- 鏂板 鍖哄垎涓婚敭鑷鍔犺繕鏄笟鍔℃彃鍏� -->
     <insert id="insert" parameterType="AttendanceRecordEntity"  useGeneratedKeys="true" keyProperty="id">
         insert into mortals_xhx_attendance_record
-        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,remark,createUserId,createTime,updateUserId,updateTime)
+        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,remark,createUserId,createTime,updateUserId,updateTime,signInResult,signOutResult,attendType,punchResult)
         VALUES
-        (#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{positionId},#{positionName},#{attendanceGroupId},#{attendanceGroupName},#{shiftsId},#{shiftsName},#{attendanceDate},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
+        (#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{positionId},#{positionName},#{attendanceGroupId},#{attendanceGroupName},#{shiftsId},#{shiftsName},#{attendanceDate},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{signInResult},#{signOutResult},#{attendType},#{punchResult})
     </insert>
 
     <!-- 鎵归噺鏂板 -->
     <insert id="insertBatch" parameterType="paramDto">
         insert into mortals_xhx_attendance_record
-        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,remark,createUserId,createTime,updateUserId,updateTime)
+        (staffId,staffName,workNum,deptId,deptName,positionId,positionName,attendanceGroupId,attendanceGroupName,shiftsId,shiftsName,attendanceDate,remark,createUserId,createTime,updateUserId,updateTime,signInResult,signOutResult,attendType,punchResult)
         VALUES
         <foreach collection="data.dataList" item="item" index="index" separator="," >
-            (#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.positionId},#{item.positionName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.shiftsId},#{item.shiftsName},#{item.attendanceDate},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
+            (#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.positionId},#{item.positionName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.shiftsId},#{item.shiftsName},#{item.attendanceDate},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.signInResult},#{item.signOutResult},#{item.attendType},#{item.punchResult})
         </foreach>
     </insert>
 
@@ -204,6 +198,27 @@
             <if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
                 a.updateTime=#{data.updateTime},
             </if>
+            <if test="(colPickMode==0 and data.containsKey('signInResult')) or (colPickMode==1 and !data.containsKey('signInResult'))">
+                a.signInResult=#{data.signInResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signInResultIncrement')) or (colPickMode==1 and !data.containsKey('signInResultIncrement'))">
+                a.signInResult=ifnull(a.signInResult,0) + #{data.signInResultIncrement},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signOutResult')) or (colPickMode==1 and !data.containsKey('signOutResult'))">
+                a.signOutResult=#{data.signOutResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('signOutResultIncrement')) or (colPickMode==1 and !data.containsKey('signOutResultIncrement'))">
+                a.signOutResult=ifnull(a.signOutResult,0) + #{data.signOutResultIncrement},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('attendType')) or (colPickMode==1 and !data.containsKey('attendType'))">
+                a.attendType=#{data.attendType},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('punchResult')) or (colPickMode==1 and !data.containsKey('punchResult'))">
+                a.punchResult=#{data.punchResult},
+            </if>
+            <if test="(colPickMode==0 and data.containsKey('punchResultIncrement')) or (colPickMode==1 and !data.containsKey('punchResultIncrement'))">
+                a.punchResult=ifnull(a.punchResult,0) + #{data.punchResultIncrement},
+            </if>
         </trim>
         <trim suffixOverrides="where" suffix="">
             where
@@ -370,6 +385,49 @@
                     </if>
                 </foreach>
             </trim>
+            <trim prefix="signInResult=(case" suffix="ELSE signInResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('signInResult')) or (colPickMode==1 and !item.containsKey('signInResult'))">
+                            when a.id=#{item.id} then #{item.signInResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('signInResultIncrement')) or (colPickMode==1 and !item.containsKey('signInResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.signInResult,0) + #{item.signInResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="signOutResult=(case" suffix="ELSE signOutResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('signOutResult')) or (colPickMode==1 and !item.containsKey('signOutResult'))">
+                            when a.id=#{item.id} then #{item.signOutResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('signOutResultIncrement')) or (colPickMode==1 and !item.containsKey('signOutResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.signOutResult,0) + #{item.signOutResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
+            <trim prefix="attendType=(case" suffix="ELSE attendType end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <if test="(colPickMode==0 and item.containsKey('attendType')) or (colPickMode==1 and !item.containsKey('attendType'))">
+                        when a.id=#{item.id} then #{item.attendType}
+                    </if>
+                </foreach>
+            </trim>
+            <trim prefix="punchResult=(case" suffix="ELSE punchResult end),">
+                <foreach collection="data.dataList" item="item" index="index" separator="" >
+                    <choose>
+                        <when test="(colPickMode==0 and item.containsKey('punchResult')) or (colPickMode==1 and !item.containsKey('punchResult'))">
+                            when a.id=#{item.id} then #{item.punchResult}
+                        </when>
+                        <when test="(colPickMode==0 and item.containsKey('punchResultIncrement')) or (colPickMode==1 and !item.containsKey('punchResultIncrement'))">
+                            when a.id=#{item.id} then ifnull(a.punchResult,0) + #{item.punchResultIncrement}
+                        </when>
+                    </choose>
+                </foreach>
+            </trim>
         </trim>
         where id in
         <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
@@ -430,14 +488,6 @@
         </trim>
         <include refid="_orderCols_"/>
     </select>
-    <!-- 鑾峰彇瀛愬垪琛� -->
-    <select id="getAttendanceRecordDetailByRecordId" parameterType="java.lang.Long" resultMap="AttendanceRecordDetailEntity-Map">
-        select <include refid="_columns_sub"/>
-        from mortals_xhx_attendance_record_detail as b
-        <trim suffixOverrides="where" suffix="">
-            where b.recordId = #{id}
-        </trim>
-    </select>
 
 
 
@@ -502,13 +552,13 @@
                 ${_conditionType_} a.id is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('idList')">
+        <if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
             ${_conditionType_} a.id in
             <foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('idNotList')">
+        <if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
             ${_conditionType_} a.id not in
             <foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -529,13 +579,13 @@
                 ${_conditionType_} a.staffId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('staffIdList')">
+        <if test="conditionParamRef.containsKey('staffIdList') and conditionParamRef.staffIdList.size() > 0">
             ${_conditionType_} a.staffId in
             <foreach collection="conditionParamRef.staffIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('staffIdNotList')">
+        <if test="conditionParamRef.containsKey('staffIdNotList') and conditionParamRef.staffIdNotList.size() > 0">
             ${_conditionType_} a.staffId not in
             <foreach collection="conditionParamRef.staffIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -557,13 +607,13 @@
                 ${_conditionType_} a.staffName is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('staffNameList')">
+        <if test="conditionParamRef.containsKey('staffNameList') and conditionParamRef.staffNameList.size() > 0">
             ${_conditionType_} a.staffName in
             <foreach collection="conditionParamRef.staffNameList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('staffNameNotList')">
+        <if test="conditionParamRef.containsKey('staffNameNotList') and conditionParamRef.staffNameNotList.size() > 0">
             ${_conditionType_} a.staffName not in
             <foreach collection="conditionParamRef.staffNameNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -578,13 +628,13 @@
                 ${_conditionType_} a.workNum is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('workNumList')">
+        <if test="conditionParamRef.containsKey('workNumList') and conditionParamRef.workNumList.size() > 0">
             ${_conditionType_} a.workNum in
             <foreach collection="conditionParamRef.workNumList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('workNumNotList')">
+        <if test="conditionParamRef.containsKey('workNumNotList') and conditionParamRef.workNumNotList.size() > 0">
             ${_conditionType_} a.workNum not in
             <foreach collection="conditionParamRef.workNumNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -598,13 +648,13 @@
                 ${_conditionType_} a.deptId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('deptIdList')">
+        <if test="conditionParamRef.containsKey('deptIdList') and conditionParamRef.deptIdList.size() > 0">
             ${_conditionType_} a.deptId in
             <foreach collection="conditionParamRef.deptIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('deptIdNotList')">
+        <if test="conditionParamRef.containsKey('deptIdNotList') and conditionParamRef.deptIdNotList.size() > 0">
             ${_conditionType_} a.deptId not in
             <foreach collection="conditionParamRef.deptIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -626,13 +676,13 @@
                 ${_conditionType_} a.deptName is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('deptNameList')">
+        <if test="conditionParamRef.containsKey('deptNameList') and conditionParamRef.deptNameList.size() > 0">
             ${_conditionType_} a.deptName in
             <foreach collection="conditionParamRef.deptNameList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('deptNameNotList')">
+        <if test="conditionParamRef.containsKey('deptNameNotList') and conditionParamRef.deptNameNotList.size() > 0">
             ${_conditionType_} a.deptName not in
             <foreach collection="conditionParamRef.deptNameNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -646,13 +696,13 @@
                 ${_conditionType_} a.positionId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('positionIdList')">
+        <if test="conditionParamRef.containsKey('positionIdList') and conditionParamRef.positionIdList.size() > 0">
             ${_conditionType_} a.positionId in
             <foreach collection="conditionParamRef.positionIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('positionIdNotList')">
+        <if test="conditionParamRef.containsKey('positionIdNotList') and conditionParamRef.positionIdNotList.size() > 0">
             ${_conditionType_} a.positionId not in
             <foreach collection="conditionParamRef.positionIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -674,13 +724,13 @@
                 ${_conditionType_} a.positionName is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('positionNameList')">
+        <if test="conditionParamRef.containsKey('positionNameList') and conditionParamRef.positionNameList.size() > 0">
             ${_conditionType_} a.positionName in
             <foreach collection="conditionParamRef.positionNameList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('positionNameNotList')">
+        <if test="conditionParamRef.containsKey('positionNameNotList') and conditionParamRef.positionNameNotList.size() > 0">
             ${_conditionType_} a.positionName not in
             <foreach collection="conditionParamRef.positionNameNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -694,13 +744,13 @@
                 ${_conditionType_} a.attendanceGroupId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('attendanceGroupIdList')">
+        <if test="conditionParamRef.containsKey('attendanceGroupIdList') and conditionParamRef.attendanceGroupIdList.size() > 0">
             ${_conditionType_} a.attendanceGroupId in
             <foreach collection="conditionParamRef.attendanceGroupIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('attendanceGroupIdNotList')">
+        <if test="conditionParamRef.containsKey('attendanceGroupIdNotList') and conditionParamRef.attendanceGroupIdNotList.size() > 0">
             ${_conditionType_} a.attendanceGroupId not in
             <foreach collection="conditionParamRef.attendanceGroupIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -722,13 +772,13 @@
                 ${_conditionType_} a.attendanceGroupName is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('attendanceGroupNameList')">
+        <if test="conditionParamRef.containsKey('attendanceGroupNameList') and conditionParamRef.attendanceGroupNameList.size() > 0">
             ${_conditionType_} a.attendanceGroupName in
             <foreach collection="conditionParamRef.attendanceGroupNameList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('attendanceGroupNameNotList')">
+        <if test="conditionParamRef.containsKey('attendanceGroupNameNotList') and conditionParamRef.attendanceGroupNameNotList.size() > 0">
             ${_conditionType_} a.attendanceGroupName not in
             <foreach collection="conditionParamRef.attendanceGroupNameNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -742,13 +792,13 @@
                 ${_conditionType_} a.shiftsId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('shiftsIdList')">
+        <if test="conditionParamRef.containsKey('shiftsIdList') and conditionParamRef.shiftsIdList.size() > 0">
             ${_conditionType_} a.shiftsId in
             <foreach collection="conditionParamRef.shiftsIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('shiftsIdNotList')">
+        <if test="conditionParamRef.containsKey('shiftsIdNotList') and conditionParamRef.shiftsIdNotList.size() > 0">
             ${_conditionType_} a.shiftsId not in
             <foreach collection="conditionParamRef.shiftsIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -770,13 +820,13 @@
                 ${_conditionType_} a.shiftsName is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('shiftsNameList')">
+        <if test="conditionParamRef.containsKey('shiftsNameList') and conditionParamRef.shiftsNameList.size() > 0">
             ${_conditionType_} a.shiftsName in
             <foreach collection="conditionParamRef.shiftsNameList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('shiftsNameNotList')">
+        <if test="conditionParamRef.containsKey('shiftsNameNotList') and conditionParamRef.shiftsNameNotList.size() > 0">
             ${_conditionType_} a.shiftsName not in
             <foreach collection="conditionParamRef.shiftsNameNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -806,13 +856,13 @@
                 ${_conditionType_} a.remark is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('remarkList')">
+        <if test="conditionParamRef.containsKey('remarkList') and conditionParamRef.remarkList.size() > 0">
             ${_conditionType_} a.remark in
             <foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('remarkNotList')">
+        <if test="conditionParamRef.containsKey('remarkNotList') and conditionParamRef.remarkNotList.size() > 0">
             ${_conditionType_} a.remark not in
             <foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -826,13 +876,13 @@
                 ${_conditionType_} a.createUserId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('createUserIdList')">
+        <if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
             ${_conditionType_} a.createUserId in
             <foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('createUserIdNotList')">
+        <if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
             ${_conditionType_} a.createUserId not in
             <foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -868,13 +918,13 @@
                 ${_conditionType_} a.updateUserId is null
             </if>
         </if>
-        <if test="conditionParamRef.containsKey('updateUserIdList')">
+        <if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
             ${_conditionType_} a.updateUserId in
             <foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
             </foreach>
         </if>
-        <if test="conditionParamRef.containsKey('updateUserIdNotList')">
+        <if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
             ${_conditionType_} a.updateUserId not in
             <foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
                 #{item}
@@ -902,6 +952,108 @@
         <if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
             ${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
         </if>
+        <if test="conditionParamRef.containsKey('signInResult')">
+            <if test="conditionParamRef.signInResult != null ">
+                ${_conditionType_} a.signInResult = #{${_conditionParam_}.signInResult}
+            </if>
+            <if test="conditionParamRef.signInResult == null">
+                ${_conditionType_} a.signInResult is null
+            </if>
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultList') and conditionParamRef.signInResultList.size() > 0">
+            ${_conditionType_} a.signInResult in
+            <foreach collection="conditionParamRef.signInResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultNotList') and conditionParamRef.signInResultNotList.size() > 0">
+            ${_conditionType_} a.signInResult not in
+            <foreach collection="conditionParamRef.signInResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultStart') and conditionParamRef.signInResultStart != null">
+            ${_conditionType_} a.signInResult <![CDATA[ >= ]]> #{${_conditionParam_}.signInResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('signInResultEnd') and conditionParamRef.signInResultEnd != null">
+            ${_conditionType_} a.signInResult <![CDATA[ <= ]]> #{${_conditionParam_}.signInResultEnd}
+        </if>
+
+        <if test="conditionParamRef.containsKey('signOutResult')">
+            <if test="conditionParamRef.signOutResult != null ">
+                ${_conditionType_} a.signOutResult = #{${_conditionParam_}.signOutResult}
+            </if>
+            <if test="conditionParamRef.signOutResult == null">
+                ${_conditionType_} a.signOutResult is null
+            </if>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultList') and conditionParamRef.signOutResultList.size() > 0">
+            ${_conditionType_} a.signOutResult in
+            <foreach collection="conditionParamRef.signOutResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultNotList') and conditionParamRef.signOutResultNotList.size() > 0">
+            ${_conditionType_} a.signOutResult not in
+            <foreach collection="conditionParamRef.signOutResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultStart') and conditionParamRef.signOutResultStart != null">
+            ${_conditionType_} a.signOutResult <![CDATA[ >= ]]> #{${_conditionParam_}.signOutResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('signOutResultEnd') and conditionParamRef.signOutResultEnd != null">
+            ${_conditionType_} a.signOutResult <![CDATA[ <= ]]> #{${_conditionParam_}.signOutResultEnd}
+        </if>
+
+
+        <if test="conditionParamRef.containsKey('attendType')">
+            <if test="conditionParamRef.attendType != null and conditionParamRef.attendType != ''">
+                ${_conditionType_} a.attendType like #{${_conditionParam_}.attendType}
+            </if>
+            <if test="conditionParamRef.attendType == null">
+                ${_conditionType_} a.attendType is null
+            </if>
+        </if>
+        <if test="conditionParamRef.containsKey('attendTypeList') and conditionParamRef.attendTypeList.size() > 0">
+            ${_conditionType_} a.attendType in
+            <foreach collection="conditionParamRef.attendTypeList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('attendTypeNotList') and conditionParamRef.attendTypeNotList.size() > 0">
+            ${_conditionType_} a.attendType not in
+            <foreach collection="conditionParamRef.attendTypeNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResult')">
+            <if test="conditionParamRef.punchResult != null ">
+                ${_conditionType_} a.punchResult = #{${_conditionParam_}.punchResult}
+            </if>
+            <if test="conditionParamRef.punchResult == null">
+                ${_conditionType_} a.punchResult is null
+            </if>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultList') and conditionParamRef.punchResultList.size() > 0">
+            ${_conditionType_} a.punchResult in
+            <foreach collection="conditionParamRef.punchResultList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultNotList') and conditionParamRef.punchResultNotList.size() > 0">
+            ${_conditionType_} a.punchResult not in
+            <foreach collection="conditionParamRef.punchResultNotList" open="(" close=")" index="index" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultStart') and conditionParamRef.punchResultStart != null">
+            ${_conditionType_} a.punchResult <![CDATA[ >= ]]> #{${_conditionParam_}.punchResultStart}
+        </if>
+        <if test="conditionParamRef.containsKey('punchResultEnd') and conditionParamRef.punchResultEnd != null">
+            ${_conditionType_} a.punchResult <![CDATA[ <= ]]> #{${_conditionParam_}.punchResultEnd}
+        </if>
+
     </sql>
     <sql id="_orderCols_">
         <if test="orderColList != null and !orderColList.isEmpty()">
@@ -1005,6 +1157,26 @@
                     <if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
                     ,
                 </if>
+                <if test="orderCol.containsKey('signInResult')">
+                    a.signInResult
+                    <if test='orderCol.signInResult != null and "DESC".equalsIgnoreCase(orderCol.signInResult)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('signOutResult')">
+                    a.signOutResult
+                    <if test='orderCol.signOutResult != null and "DESC".equalsIgnoreCase(orderCol.signOutResult)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('attendType')">
+                    a.attendType
+                    <if test='orderCol.attendType != null and "DESC".equalsIgnoreCase(orderCol.attendType)'>DESC</if>
+                    ,
+                </if>
+                <if test="orderCol.containsKey('punchResult')">
+                    a.punchResult
+                    <if test='orderCol.punchResult != null and "DESC".equalsIgnoreCase(orderCol.punchResult)'>DESC</if>
+                    ,
+                </if>
             </trim>
         </if>
     </sql>
@@ -1018,7 +1190,4 @@
             </trim>
         </if>
     </sql>
-    <select id="getRecordId" resultType="com.mortals.xhx.module.attendance.model.AttendanceRecordEntity">
-       select id from mortals_xhx_attendance_record where staffId =#{id}
-    </select>
-</mapper>
+</mapper>
\ No newline at end of file
diff --git a/db/add.sql b/db/add.sql
index 8f6d0df361241c210a6027ebcd0a886ddf2baf63..450956daf184fd58afe9473274d9908d40199fa8 100644
--- a/db/add.sql
+++ b/db/add.sql
@@ -795,4 +795,16 @@ PRIMARY KEY  (`id`)
 
 
 
-
+ALTER TABLE mortals_xhx_attendance_record ADD COLUMN    `signInResult` tinyint(2)    DEFAULT '0'  COMMENT '绛惧埌缁撴灉(0.鍚�,1.鏄�)' ;
+ALTER TABLE mortals_xhx_attendance_record ADD COLUMN `signOutResult` tinyint(2)    DEFAULT '0'  COMMENT '绛鹃€€缁撴灉(0.鍚�,1.鏄�)';
+ALTER TABLE mortals_xhx_attendance_record ADD COLUMN `attendType` varchar(128)    DEFAULT '0'  COMMENT '鑰冨嫟绫诲瀷' ;
+ALTER TABLE mortals_xhx_attendance_record ADD COLUMN `punchResult` tinyint(2)    DEFAULT '0'  COMMENT '鎵撳崱缁撴灉(0.鍚�,1.鏄�)';
+
+ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN    `signInResult` tinyint(2)    DEFAULT '0'  COMMENT '绛惧埌缁撴灉(0.鍚�,1.鏄�)' ;
+ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `signOutResult` tinyint(2)    DEFAULT '0'  COMMENT '绛鹃€€缁撴灉(0.鍚�,1.鏄�)';
+ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `attendType` varchar(128)    DEFAULT '0'  COMMENT '鑰冨嫟绫诲瀷';
+ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `punchResult` tinyint(2)    DEFAULT '0'  COMMENT '鎵撳崱缁撴灉(0.鍚�,1.鏄�)';
+
+ALTER TABLE mortals_xhx_attendance_stat ADD COLUMN `goTimes` int(9)  DEFAULT '0'     COMMENT '鍑哄嫟澶╂暟';
+ALTER TABLE mortals_xhx_attendance_stat ADD COLUMN`morningTimes` int(9) DEFAULT '0'   COMMENT '涓婂崍缂哄崱娆℃暟';
+ALTER TABLE mortals_xhx_attendance_stat ADD COLUMN `afternoonTimes` int(9) DEFAULT '0'     COMMENT '涓嬪崍缂哄崱娆℃暟';
diff --git "a/doc/\350\200\203\345\213\244\347\273\251\346\225\210\347\256\241\347\220\206\347\263\273\347\273\237.docx" "b/doc/\350\200\203\345\213\244\347\273\251\346\225\210\347\256\241\347\220\206\347\263\273\347\273\237.docx"
index bd16734a55d6f1806f30db01df98d1cb90749f91..8dc27a213061aad6b8b6bde867afd5c7d5fbfd2b 100644
Binary files "a/doc/\350\200\203\345\213\244\347\273\251\346\225\210\347\256\241\347\220\206\347\263\273\347\273\237.docx" and "b/doc/\350\200\203\345\213\244\347\273\251\346\225\210\347\256\241\347\220\206\347\263\273\347\273\237.docx" differ