|
@@ -5,7 +5,11 @@
|
|
|
<div class="table-page-search-wrapper">
|
|
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
|
|
<a-row :gutter="24">
|
|
|
-
|
|
|
+ <a-col :md="6" :sm="8">
|
|
|
+ <a-form-item label="工号">
|
|
|
+ <a-input placeholder="请输入工号" v-model="queryParam.workNo"></a-input>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
<a-col :md="6" :sm="8">
|
|
|
<a-form-item label="人员">
|
|
|
<a-input placeholder="请输入人员" v-model="queryParam.realname"></a-input>
|
|
@@ -16,46 +20,34 @@
|
|
|
<a-input placeholder="请输入部门" v-model="queryParam.departNames"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
- <a-col :md="6" :sm="8">
|
|
|
- <a-form-item label="工号">
|
|
|
- <a-input placeholder="请输入工号" v-model="queryParam.workNo"></a-input>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- <a-col :md="6" :sm="8">
|
|
|
+
|
|
|
+ <!-- <a-col :md="6" :sm="8">
|
|
|
<a-form-item label="班次">
|
|
|
<a-input placeholder="请输入班次" v-model="queryParam.name"></a-input>
|
|
|
</a-form-item>
|
|
|
- </a-col>
|
|
|
- <a-col :md="5" :sm="8">
|
|
|
- <a-form-item label="操作类型" style="left: 10px">
|
|
|
- <j-search-select-tag
|
|
|
- placeholder="请做出你的选择"
|
|
|
- v-model="selectValue"
|
|
|
- :dictOptions="dictOptions">
|
|
|
- <a-col :span="12">多选组合</a-col>
|
|
|
- </j-search-select-tag>
|
|
|
- <!-- <j-dict-select-tag v-model="queryParam.name" placeholder="请选择用户名称"
|
|
|
- dictCode="geke_shift,name,name"/> -->
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
+ </a-col> -->
|
|
|
|
|
|
<a-col :md="5" :sm="8">
|
|
|
- <a-form-item label="异步加载" style="width: 300px">
|
|
|
- <j-search-select-tag
|
|
|
+ <a-form-item label="班次" style="width: 300px">
|
|
|
+ <!-- <j-search-select-tag
|
|
|
placeholder="请做出你的选择"
|
|
|
v-model="asyncSelectValue"
|
|
|
dict="geke_shift,name,name"
|
|
|
:async="true">
|
|
|
- </j-search-select-tag>
|
|
|
+ </j-search-select-tag> -->
|
|
|
+
|
|
|
+ <a-select v-model="queryParam.name" placeholder="请选择班次">
|
|
|
+ <a-select-option value="">请选择</a-select-option>
|
|
|
+ <a-select-option value="a">休息</a-select-option>
|
|
|
+ <a-select-option v-for="(item,index) in shiftlist" :value="item.name">{{item.name}} ({{item.startDate}}-{{item.endDate}})
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
- <!-- <a-col :md="6" :sm="8">
|
|
|
- <a-form-item label="日期">
|
|
|
- <a-date-picker valueFormat="YYYY-MM-DD" @change="onChange" placeholder="请输入日期" v-model="queryParam.viewDate"></a-date-picker>
|
|
|
- </a-form-item>
|
|
|
- </a-col> -->
|
|
|
+
|
|
|
<a-col :md="6" :sm="10">
|
|
|
- <a-form-item label="日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
|
+ <a-form-item label="日期">
|
|
|
<a-range-picker
|
|
|
style="width: 210px"
|
|
|
format="YYYY-MM-DD"
|
|
@@ -68,7 +60,7 @@
|
|
|
<a-col :md="6" :sm="8">
|
|
|
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
|
|
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
|
|
- <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
|
|
+ <!-- <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button> -->
|
|
|
|
|
|
</span>
|
|
|
</a-col>
|
|
@@ -102,8 +94,15 @@
|
|
|
@change="handleTableChange" :scroll="{ x: 3000 }">
|
|
|
|
|
|
<span slot="latetimeState" slot-scope="text, record, index">
|
|
|
- <a-tag color="pink" v-if="record.latetimeX > 0 || record.latetimeS > 0 ">异常</a-tag>
|
|
|
- <a-tag color="#87d068" v-if="record.latetimeX <= 0 && record.latetimeS <= 0 ">正常</a-tag>
|
|
|
+ <!-- <a-tag color="pink" v-if="record.latetimeX > 0 || record.latetimeS > 0 ">异常</a-tag>
|
|
|
+ <a-tag color="#87d068" v-if="record.latetimeX <= 0 && record.latetimeS <= 0 ">正常</a-tag> -->
|
|
|
+
|
|
|
+ <a-tag color="pink" v-if="record.latetimeS < 0 || record.latetimeX > 0
|
|
|
+ || record.shiftRealTimeS == '' || record.shiftRealTimeS == null
|
|
|
+ && (record.setInfo == '' || record.setInfo == null)">
|
|
|
+ 异常
|
|
|
+ </a-tag>
|
|
|
+ <a-tag color="#87d068" v-else>正常</a-tag>
|
|
|
</span>
|
|
|
<span slot="realShiftTime" slot-scope="text, record, index">
|
|
|
<!-- ruleType 上班类型 1.固定时间上下班,2.按班次上下班,3.自由上下班 -->
|
|
@@ -128,6 +127,12 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+ import {
|
|
|
+ httpAction,
|
|
|
+ getFileAccessHttpUrl,
|
|
|
+ getAction,
|
|
|
+ deleteAction
|
|
|
+ } from '@/api/manage'
|
|
|
import {
|
|
|
JeecgListMixin
|
|
|
} from '@/mixins/JeecgListMixin'
|
|
@@ -148,17 +153,8 @@
|
|
|
data() {
|
|
|
return {
|
|
|
moment,
|
|
|
+ shiftlist: null,
|
|
|
description: '考勤日报',
|
|
|
- dictOptions:[{
|
|
|
- text:"选项一",
|
|
|
- value:"1"
|
|
|
- },{
|
|
|
- text:"选项二",
|
|
|
- value:"2"
|
|
|
- },{
|
|
|
- text:"选项三",
|
|
|
- value:"3"
|
|
|
- }],
|
|
|
// 表头
|
|
|
columns: [
|
|
|
/* {
|
|
@@ -180,6 +176,10 @@
|
|
|
title: '人员',
|
|
|
align: 'center',
|
|
|
dataIndex: 'realname', fixed: 'left', width: 100
|
|
|
+ },{
|
|
|
+ title: '部门',
|
|
|
+ align: 'center',
|
|
|
+ dataIndex: 'departNames', fixed: 'left', width: 100
|
|
|
},
|
|
|
// {
|
|
|
// title: '工号',
|
|
@@ -194,28 +194,32 @@
|
|
|
customRender: 'realShiftTime'
|
|
|
}
|
|
|
},
|
|
|
+ // {
|
|
|
+ // title: '上班时间',
|
|
|
+ // align: 'center',
|
|
|
+ // dataIndex: 'shiftTimeS'
|
|
|
+ // },
|
|
|
{
|
|
|
- title: '上班时间',
|
|
|
- align: 'center',
|
|
|
- dataIndex: 'shiftTimeS'
|
|
|
- },
|
|
|
- {
|
|
|
- title: '上班打卡时间',
|
|
|
+ title: '最早打卡时间',
|
|
|
align: 'center',
|
|
|
dataIndex: 'gotoTime'
|
|
|
},
|
|
|
+ // {
|
|
|
+ // title: '下班时间',
|
|
|
+ // align: 'center',
|
|
|
+ // dataIndex: 'shiftTimeX'
|
|
|
+ // },
|
|
|
{
|
|
|
- title: '下班时间',
|
|
|
- align: 'center',
|
|
|
- dataIndex: 'shiftTimeX'
|
|
|
- },
|
|
|
- {
|
|
|
- title: '下班打卡时间',
|
|
|
+ title: '最晚打卡时间',
|
|
|
align: 'center',
|
|
|
dataIndex: 'closingTime'
|
|
|
}, {
|
|
|
- title: '考勤状态',
|
|
|
+ title: '打卡次数',
|
|
|
align: 'center',
|
|
|
+ dataIndex: 'attendanceCount', width: 100
|
|
|
+ }, {
|
|
|
+ title: '考勤状态',
|
|
|
+ align: 'center', width: 100,
|
|
|
scopedSlots: {
|
|
|
customRender: 'latetimeState'
|
|
|
}
|
|
@@ -243,7 +247,7 @@
|
|
|
return 0;
|
|
|
}
|
|
|
}
|
|
|
- }, */
|
|
|
+ },
|
|
|
{
|
|
|
title: '上班打卡',
|
|
|
align: 'center',
|
|
@@ -253,7 +257,7 @@
|
|
|
title: '下班打卡',
|
|
|
align: 'center',
|
|
|
dataIndex: 'closingState'
|
|
|
- },
|
|
|
+ },*/
|
|
|
{
|
|
|
title: '加班开始时间',
|
|
|
align: 'center',
|
|
@@ -298,7 +302,8 @@
|
|
|
// }
|
|
|
],
|
|
|
url: {
|
|
|
- list: '/viewClockIn/viewClockIn/list'
|
|
|
+ list: '/viewClockIn/viewClockIn/list',
|
|
|
+ shift: "/shift/shift/lists"
|
|
|
},
|
|
|
}
|
|
|
},
|
|
@@ -308,7 +313,7 @@
|
|
|
}
|
|
|
},
|
|
|
created() { //实例被创建时候执行
|
|
|
-// alert(1);
|
|
|
+ this.queryShift();
|
|
|
},
|
|
|
methods: {
|
|
|
onDateChange: function (value, dateString) {
|
|
@@ -317,12 +322,22 @@
|
|
|
this.queryParam.endViewDate=dateString[1];
|
|
|
},
|
|
|
onDateOk(value) {
|
|
|
- console.log(value);
|
|
|
+ // console.log(value);
|
|
|
},
|
|
|
onChange(date, dateString) {
|
|
|
- console.log(date, dateString);
|
|
|
+ // console.log(date, dateString);
|
|
|
// this.value = "2021-01-01"
|
|
|
},
|
|
|
+ queryShift() {
|
|
|
+ httpAction(this.url.shift, "", "get").then((res) => {
|
|
|
+ if (res.success) {
|
|
|
+ this.shiftlist = res.result;
|
|
|
+ console.log(res.result);
|
|
|
+ }
|
|
|
+ }).finally(() => {
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
jiaozhun(record) {
|
|
|
// alert(record.viewDate);
|
|
|
// alert(record.username);
|