|
@@ -71,7 +71,7 @@
|
|
|
<el-table-column label="外出人" align="center" prop="employeeName" min-width="100" />
|
|
<el-table-column label="外出人" align="center" prop="employeeName" min-width="100" />
|
|
|
<el-table-column label="部门" align="center" prop="deptName" min-width="100" />
|
|
<el-table-column label="部门" align="center" prop="deptName" min-width="100" />
|
|
|
<el-table-column label="职位" align="center" prop="position" min-width="100" />
|
|
<el-table-column label="职位" align="center" prop="position" min-width="100" />
|
|
|
- <el-table-column label="手机号" align="center" prop="employeePhone" min-width="100" />
|
|
|
|
|
|
|
+ <el-table-column label="手机号" align="center" prop="employeePhone" min-width="120" />
|
|
|
<el-table-column label="外出地点" align="center" prop="destination" min-width="150" />
|
|
<el-table-column label="外出地点" align="center" prop="destination" min-width="150" />
|
|
|
<el-table-column label="外出开始时间" align="center" prop="startDate" min-width="150" />
|
|
<el-table-column label="外出开始时间" align="center" prop="startDate" min-width="150" />
|
|
|
<el-table-column label="外出结束时间" align="center" prop="endDate" min-width="150" />
|
|
<el-table-column label="外出结束时间" align="center" prop="endDate" min-width="150" />
|
|
@@ -87,7 +87,7 @@
|
|
|
<dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" />
|
|
<dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" />
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
|
|
|
|
|
+ <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" min-width="150">
|
|
|
<template v-slot="scope">
|
|
<template v-slot="scope">
|
|
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
|
v-hasPermi="['attendance:out:update']">修改</el-button>
|
|
v-hasPermi="['attendance:out:update']">修改</el-button>
|
|
@@ -105,61 +105,61 @@
|
|
|
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
|
|
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
<el-row>
|
|
<el-row>
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="外出人" prop="employeeName">
|
|
<el-form-item label="外出人" prop="employeeName">
|
|
|
<el-input v-model="form.employeeName" placeholder='点击选择' readonly @click.native="openSingle"></el-input>
|
|
<el-input v-model="form.employeeName" placeholder='点击选择' readonly @click.native="openSingle"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- <el-col :span="12" style="display: none;">
|
|
|
|
|
|
|
+ <el-col :span="24" style="display: none;">
|
|
|
<el-form-item label="外出人Id" style="display: none;">
|
|
<el-form-item label="外出人Id" style="display: none;">
|
|
|
<el-input v-model="form.employeeId" placeholder='外出人Id' disabled></el-input>
|
|
<el-input v-model="form.employeeId" placeholder='外出人Id' disabled></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="部门">
|
|
<el-form-item label="部门">
|
|
|
<el-input v-model="form.deptName" placeholder='部门' disabled></el-input>
|
|
<el-input v-model="form.deptName" placeholder='部门' disabled></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="职位">
|
|
<el-form-item label="职位">
|
|
|
<el-input v-model="form.position" placeholder='职位' disabled></el-input>
|
|
<el-input v-model="form.position" placeholder='职位' disabled></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="手机号">
|
|
<el-form-item label="手机号">
|
|
|
<el-input v-model="form.employeePhone" placeholder='手机号' disabled></el-input>
|
|
<el-input v-model="form.employeePhone" placeholder='手机号' disabled></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="外出地点" prop="destination">
|
|
<el-form-item label="外出地点" prop="destination">
|
|
|
<el-input maxlength="20" v-model="form.destination" placeholder='外出地点'></el-input>
|
|
<el-input maxlength="20" v-model="form.destination" placeholder='外出地点'></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
|
|
- <el-form-item label="外出开始时间" prop="startDate">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
|
|
+ <el-form-item label="开始时间" prop="startDate">
|
|
|
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" default-time="09:00:00" v-model="form.startDate"
|
|
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" default-time="09:00:00" v-model="form.startDate"
|
|
|
type="datetime" placeholder="选择时间" style="width: 100%;" @change="upHour">
|
|
type="datetime" placeholder="选择时间" style="width: 100%;" @change="upHour">
|
|
|
</el-date-picker>
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
|
|
- <el-col :span="12">
|
|
|
|
|
- <el-form-item label="外出结束时间" prop="endDate">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
|
|
+ <el-form-item label="结束时间" prop="endDate">
|
|
|
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" default-time="18:00:00" v-model="form.endDate"
|
|
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" default-time="18:00:00" v-model="form.endDate"
|
|
|
type="datetime" placeholder="选择时间" style="width: 100%;" @change="upHour">
|
|
type="datetime" placeholder="选择时间" style="width: 100%;" @change="upHour">
|
|
|
</el-date-picker>
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="外出时长">
|
|
<el-form-item label="外出时长">
|
|
|
<el-input v-model="form.hour" placeholder='外出时长'
|
|
<el-input v-model="form.hour" placeholder='外出时长'
|
|
|
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"></el-input>
|
|
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
|
|
- <el-col :span="12">
|
|
|
|
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="外出事由" prop="reason">
|
|
<el-form-item label="外出事由" prop="reason">
|
|
|
<el-input maxlength="200" rows="4" show-word-limit type="textarea" v-model="form.reason"
|
|
<el-input maxlength="200" rows="4" show-word-limit type="textarea" v-model="form.reason"
|
|
|
placeholder="请输入备注" />
|
|
placeholder="请输入备注" />
|
|
@@ -382,6 +382,41 @@ export default {
|
|
|
this.getListDept();
|
|
this.getListDept();
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ upHour() {
|
|
|
|
|
+ if (this.form.startDate && this.form.endDate) {
|
|
|
|
|
+ let Hours = this.calLeaveDays();
|
|
|
|
|
+ this.form.hour = Math.ceil(Hours);
|
|
|
|
|
+ if (Hours < 0) {
|
|
|
|
|
+ this.form.startDate = "";
|
|
|
|
|
+ this.form.endDate = "";
|
|
|
|
|
+ this.form.hour = "";
|
|
|
|
|
+ this.$message.warning("开始时间小于结束时间,请重新选择!");
|
|
|
|
|
+ return;
|
|
|
|
|
+ } else if (Hours == 0) {
|
|
|
|
|
+ this.form.startDate = "";
|
|
|
|
|
+ this.form.endDate = "";
|
|
|
|
|
+ this.form.hour = "";
|
|
|
|
|
+ this.$message.warning("外出时间为0,请重新选择!");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ calLeaveDays() {
|
|
|
|
|
+ var start_time = new Date();
|
|
|
|
|
+ var end_time = new Date();
|
|
|
|
|
+ start_time = new Date(this.form.startDate);
|
|
|
|
|
+ end_time = new Date(this.form.endDate );
|
|
|
|
|
+ console.log(start_time);
|
|
|
|
|
+ console.log(end_time);
|
|
|
|
|
+ //转成毫秒数,两个日期相减
|
|
|
|
|
+ var hours = end_time.getTime() - start_time.getTime();
|
|
|
|
|
+ //转换成小时
|
|
|
|
|
+ var hour = hours / (1000 * 60 * 60);
|
|
|
|
|
+ console.log("hour = ", hour);
|
|
|
|
|
+ return hour;
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
getEmployee() {
|
|
getEmployee() {
|
|
|
getEmployeeInfo(this.form.employeeId).then(response => {
|
|
getEmployeeInfo(this.form.employeeId).then(response => {
|
|
|
let employeeInfo = response.data;
|
|
let employeeInfo = response.data;
|