| 
					
				 | 
			
			
				@@ -18,15 +18,44 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <i class="anticon anticon-info-circle ant-alert-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         月份:  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <!-- <a style="font-weight: 600;margin-right: 6px" @click="onClearSelected">  <  </a> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <a-month-picker format="YYYY-MM" placeholder="请输入生成月报日期" v-model="headMonth" @change="onDateChange"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <a-month-picker format="YYYY-MM" placeholder="请输入考勤月份" v-model="headMonth" @change="onDateChange"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <!-- <a style="font-weight: 600;margin-left: 6px" @click="onClearSelected"> > </a> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <i class="anticon anticon-info-circle ant-alert-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <a style="margin-left: 40px" @click="errorInfoShow()">异常打卡</a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       <i class="anticon anticon-info-circle ant-alert-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       <a style="margin-left: 40px" @click="jiaBanInfoShow()">加班打卡</a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       <i class="anticon anticon-info-circle ant-alert-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       <a-dropdown style="margin-left: 40px" v-has="'viewClockUserInfo:more'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         <a class="ant-dropdown-link"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           更多操作 <a-icon type="down"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         </a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         <a-menu slot="overlay"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           <a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             <a-popconfirm title="确定对所选记录付薪吗?" @confirm="() => handleInfo('1')"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               <a>付薪</a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             </a-popconfirm> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           </a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           <a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             <a-popconfirm title="确定对所选记录累计调休吗?" @confirm="() => handleInfo('2')"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               <a>累计调休</a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             </a-popconfirm> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           </a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           <a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             <a-popconfirm title="确定对所选记录忽略吗?" @confirm="() => handleInfo('3')"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               <a>忽略</a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             </a-popconfirm> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           </a-menu-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         </a-menu> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       </a-dropdown> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <a-table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ref="table" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         size="middle" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         bordered 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rowKey="id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rowKey="viewDate" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         :columns="columns" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         :dataSource="dataSource" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         :pagination="ipagination" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -56,18 +85,18 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <a-badge slot="shiftType" slot-scope="text, record, index"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <!-- ruleType 上班类型 1.固定时间上下班,2.按班次上下班,3.自由上下班 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <a-tag color="pink" v-if="record.latetimeS < 0 || record.latetimeX > 0  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          || (record.ifwork !=0 && record.attendanceCount < 2 && record.name != null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          || (record.ifwork !=0 && record.name != null && record.name != '' && (record.gotoTime == null || record.gotoTime == '')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          || record.duration != null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          && (record.setInfo > 0 ) && (record.errorState != 0 )"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-tag color="pink" v-if="record.showState == '1'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </a-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <a-tag color="#87d068" v-else>正常</a-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-           
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <a-icon title="该员工在未排班或休息班打卡" v-if="(record.name == null || record.shiftRealTimeS == null) && record.gotoTime != null && record.gotoTime != '' && (record.setInfo > 0 )" slot="count" type="exclamation" style="color: #f57301" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-tag color="#87d068" v-if="record.showState == '2'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </a-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           <a-icon v-if="record.showState == '2'" title="该员工在未排班或休息班打卡" slot="count" type="exclamation-circle" style="color: #f52b02" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <!-- <a>{{record.setInfo}}</a> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <a-tag color="#87d068" v-if="record.showState == '0'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            正常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </a-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </a-badge> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <span slot="action" slot-scope="text, record"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -306,6 +335,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             width: 120 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         url: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          handleInfo: '/viewClockIn/viewClockIn/handleInfo', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           errorInfo: '/viewClockIn/viewClockIn/errorInfo', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           getJiaBan: '/workOvertime/workOvertime/getJiaBan', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           list: '/viewClockIn/viewClockIn/list', 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -324,6 +354,54 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        handleInfo(st){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if(this.selectedRowKeys.length < 1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$message.warning("您没有选择任何数据"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let that = this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //st:1付薪 2累计调休 3忽略 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let ids = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let username = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let dataSource = this.dataSource; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // console.log("-===="+this.dataSource); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          let userIds = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.selectUserRows = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          for (let i = 0, len = dataSource.length; i < len; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (this.selectedRowKeys.includes(dataSource[i].viewDate)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if(dataSource[i].duration == null || dataSource[i].duration == ''){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.warning(dataSource[i].viewDate+"该员工当日没有加班申请信息,请勿此操作"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             username = dataSource[i].username; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             ids += dataSource[i].viewDate + ","; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          putAction(this.url.handleInfo, {viewDate:ids,st:st,username:username}).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.success) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              that.$message.success("操作成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              that.loadData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              that.$message.warning(res.message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              that.loadData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }).finally(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            that.selectedRowKeys = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        errorInfoShow(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.queryParam.showState=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.loadData(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.queryParam.showState=null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        jiaBanInfoShow(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.queryParam.duration=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.loadData(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.queryParam.duration=null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         showModal(record) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.errorViewDate = record.viewDate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.errorUserId = record.userId; 
			 |