|
@@ -1,5 +1,14 @@
|
|
|
<template>
|
|
|
<div class="box">
|
|
|
+ <el-button
|
|
|
+ type="warning"
|
|
|
+ plain
|
|
|
+ icon="el-icon-download"
|
|
|
+ size="mini"
|
|
|
+ @click="handleExports"
|
|
|
+ class="buttons"
|
|
|
+ >导出</el-button
|
|
|
+ >
|
|
|
<el-calendar id="calendar">
|
|
|
<template slot="dateCell" slot-scope="{ date, data }">
|
|
|
<div class="calendar-day">
|
|
@@ -7,16 +16,6 @@
|
|
|
</div>
|
|
|
<div @click="chooseDay(data.day)">
|
|
|
<div>
|
|
|
- <!-- <p v-for="(item,n) in attendanceDetailsData" :key="item.id" style="color: red">
|
|
|
- <span v-if="item.workStartTime == data.day">
|
|
|
-
|
|
|
- <span>
|
|
|
- {{
|
|
|
- item.workDetail
|
|
|
- }}
|
|
|
- </span>
|
|
|
- </span>
|
|
|
- </p>-->
|
|
|
<div
|
|
|
v-for="(item, n) in attendanceDetailsData2"
|
|
|
:key="item.workStartTime + n"
|
|
@@ -26,7 +25,7 @@
|
|
|
v-for="(a, b) in item.data"
|
|
|
:key="a.workStartTime + b"
|
|
|
v-if="b <= '2'"
|
|
|
- style="color: red"
|
|
|
+ style="color: #49edf4"
|
|
|
>
|
|
|
{{ a.workDetail }}
|
|
|
</p>
|
|
@@ -45,15 +44,7 @@
|
|
|
:close-on-click-modal="false"
|
|
|
@close="closes"
|
|
|
>
|
|
|
- <el-button
|
|
|
- type="warning"
|
|
|
- plain
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="handleExport"
|
|
|
- >导出</el-button
|
|
|
- >
|
|
|
- <div class="jiben" style="margin-top:30px">任务详情</div>
|
|
|
+ <div class="jiben" style="margin-top: 30px">任务详情</div>
|
|
|
<el-table
|
|
|
:data="worktaskplanList"
|
|
|
:header-cell-style="{ background: '#2a6b9a', color: 'white' }"
|
|
@@ -71,16 +62,16 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="任务名称" prop="workName" />
|
|
|
- <el-table-column label="任务类型" prop="workType" />
|
|
|
+ <el-table-column label="任务类型" prop="workType" width="250" />
|
|
|
<el-table-column
|
|
|
label="任务描述"
|
|
|
prop="workDetail"
|
|
|
width="100"
|
|
|
show-overflow-tooltip
|
|
|
></el-table-column>
|
|
|
- <el-table-column label="开始时间" prop="workStartTime" />
|
|
|
- <el-table-column label="结束时间" prop="workEndTime" />
|
|
|
- <el-table-column label="任务优先级" prop="taskStatus">
|
|
|
+ <el-table-column label="开始时间" prop="workStartTime" width="150" />
|
|
|
+ <el-table-column label="结束时间" prop="workEndTime" width="150" />
|
|
|
+ <el-table-column label="任务优先级" prop="taskStatus" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
<dict-tag
|
|
|
:options="dict.type.work_priority"
|
|
@@ -88,7 +79,7 @@
|
|
|
/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="进度" prop="workRate">
|
|
|
+ <el-table-column label="进度" prop="workRate" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
<span v-if="scope.row.workRate">{{ scope.row.workRate }}%</span>
|
|
|
</template>
|
|
@@ -97,14 +88,14 @@
|
|
|
label="操作"
|
|
|
align="center"
|
|
|
class-name="small-padding fixed-width"
|
|
|
- width="150"
|
|
|
+ width="200"
|
|
|
+ fixed="right"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
|
size="btk"
|
|
|
type="text"
|
|
|
@click="handleUpdateCha(scope.row)"
|
|
|
- v-hasPermi="['workingArrangements:worktaskplan:add']"
|
|
|
>查看</el-button
|
|
|
>
|
|
|
<el-button
|
|
@@ -306,6 +297,50 @@
|
|
|
<el-button @click="cancel2">取 消</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+ <!-- 导出弹框 -->
|
|
|
+ <el-dialog
|
|
|
+ :title="title"
|
|
|
+ :visible.sync="open5"
|
|
|
+ width="450px"
|
|
|
+ append-to-body
|
|
|
+ class="el-dialog__header jinduchakan"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ ref="queryParamsTime"
|
|
|
+ :model="queryParamsTime"
|
|
|
+ :rules="queryParamsRules"
|
|
|
+ label-width="100px"
|
|
|
+ :inline="true"
|
|
|
+ >
|
|
|
+ <el-form-item label="开始时间" prop="startTime">
|
|
|
+ <el-date-picker
|
|
|
+ placeholder="请选择开始时间"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ v-model="queryParamsTime.startTime"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ style="width: 200px"
|
|
|
+ ></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="结束时间" label-width="100px" prop="endTime">
|
|
|
+ <el-date-picker
|
|
|
+ placeholder="请选择结束时间"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ v-model="queryParamsTime.endTime"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ ></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button type="primary" @click="handleExport">导 出</el-button>
|
|
|
+ <el-button @click="cancelDao">取 消</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
@@ -313,7 +348,7 @@ import {
|
|
|
peopleList,
|
|
|
progressInput,
|
|
|
queryTask,
|
|
|
- exportCurrentUserTask
|
|
|
+ exportCurrentUserTask,
|
|
|
} from "@/api/workingArrangements/workCalendar";
|
|
|
export default {
|
|
|
name: "workCalendar",
|
|
@@ -363,13 +398,19 @@ export default {
|
|
|
url: process.env.VUE_APP_BASE_API,
|
|
|
// 执行人查看进度
|
|
|
workProgresses: [],
|
|
|
- form1:{}
|
|
|
+ form1: {},
|
|
|
+ open5: false,
|
|
|
+ queryParamsTime: {},
|
|
|
+ queryParamsRules: {},
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
this.getList();
|
|
|
},
|
|
|
methods: {
|
|
|
+ cancelDao() {
|
|
|
+ this.open5 = false;
|
|
|
+ },
|
|
|
getList() {
|
|
|
peopleList().then((res) => {
|
|
|
this.worktaskplanList = [];
|
|
@@ -498,31 +539,30 @@ export default {
|
|
|
});
|
|
|
return flag;
|
|
|
},
|
|
|
- handleExport(){
|
|
|
- this.form1.nowDate=this.day
|
|
|
+ // 导出
|
|
|
+ handleExports() {
|
|
|
+ this.queryParamsTime = {};
|
|
|
+ this.open5 = true;
|
|
|
+ this.title = "导出";
|
|
|
+ },
|
|
|
+ handleExport() {
|
|
|
this.$modal
|
|
|
- .confirm("是否确认导出数据项?")
|
|
|
- .then(() => {
|
|
|
- return exportCurrentUserTask(this.form1);
|
|
|
- })
|
|
|
- .then((response) => {
|
|
|
- this.$download.name(response.msg);
|
|
|
- this.open = false;
|
|
|
- })
|
|
|
- .catch(() => {});
|
|
|
- }
|
|
|
+ .confirm("是否确认导出数据项?")
|
|
|
+ .then(() => {
|
|
|
+ return exportCurrentUserTask(this.queryParamsTime);
|
|
|
+ })
|
|
|
+ .then((response) => {
|
|
|
+ this.$download.name(response.msg);
|
|
|
+ this.open5 = false;
|
|
|
+ })
|
|
|
+ .catch(() => {});
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
.box {
|
|
|
- /* min-height: calc(100vh - 85px);
|
|
|
- width: 100%;
|
|
|
- overflow: hidden;
|
|
|
- background-color: #103360;
|
|
|
- margin: 0;
|
|
|
- padding: 0; */
|
|
|
}
|
|
|
.is-selected {
|
|
|
color: #1989fa;
|
|
@@ -541,7 +581,8 @@ export default {
|
|
|
::v-deep .jindu .el-table__cell {
|
|
|
border: none !important;
|
|
|
}
|
|
|
-::v-deep .jindu .is-leaf {
|
|
|
+
|
|
|
+::v-deep .jindu .el-dialog__body .el-table th.is-leaf {
|
|
|
border: none !important;
|
|
|
}
|
|
|
::v-deep .el-calendar {
|
|
@@ -550,8 +591,16 @@ export default {
|
|
|
::v-deep .el-calendar__title {
|
|
|
color: #fff;
|
|
|
}
|
|
|
-::v-deep .el-calendar .el-button--plain {
|
|
|
- background: #114a80 !important;
|
|
|
+::v-deep .el-calendar .el-button--plain:nth-child(1) {
|
|
|
+ background: #1d96ff !important;
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
+::v-deep .el-calendar .el-button--plain:nth-child(2) {
|
|
|
+ background: #67c23a !important;
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
+::v-deep .el-calendar .el-button--plain:nth-child(3) {
|
|
|
+ background: #ff4949 !important;
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-calendar-table thead th {
|
|
@@ -566,4 +615,9 @@ export default {
|
|
|
::v-deep .el-calendar-table td.is-selected {
|
|
|
background: #114a80 !important;
|
|
|
}
|
|
|
+.buttons {
|
|
|
+ position: absolute;
|
|
|
+ left: 9%;
|
|
|
+ top: 1%;
|
|
|
+}
|
|
|
</style>
|