|
@@ -2,26 +2,31 @@
|
|
|
<div class="box">
|
|
|
<el-calendar id="calendar">
|
|
|
<template slot="dateCell" slot-scope="{ date, data }">
|
|
|
- <div class="calendar-day">
|
|
|
- {{ data.day.split("-").slice(2).join("-") }}
|
|
|
- </div>
|
|
|
+ <div class="calendar-day">{{ data.day.split("-").slice(2).join("-") }}</div>
|
|
|
<div @click="chooseDay(data.day)">
|
|
|
<div>
|
|
|
- <p
|
|
|
- v-for="item in attendanceDetailsData"
|
|
|
- :key="item.id"
|
|
|
- style="color: red"
|
|
|
- >
|
|
|
+ <!-- <p v-for="(item,n) in attendanceDetailsData" :key="item.id" style="color: red">
|
|
|
<span v-if="item.workStartTime == data.day">
|
|
|
- <!-- <span v-if="item.workRate != 100">{{
|
|
|
- item.workDetail
|
|
|
- }}</span></span
|
|
|
- > -->
|
|
|
- <span >{{
|
|
|
+
|
|
|
+ <span>
|
|
|
+ {{
|
|
|
item.workDetail
|
|
|
- }}</span></span
|
|
|
- >
|
|
|
- </p>
|
|
|
+ }}
|
|
|
+ </span>
|
|
|
+ </span>
|
|
|
+ </p>-->
|
|
|
+ <div
|
|
|
+ v-for="(item,n) in attendanceDetailsData"
|
|
|
+ :key="item.workStartTime+n"
|
|
|
+ v-if="item.workStartTime == data.day"
|
|
|
+ >
|
|
|
+ <p
|
|
|
+ v-for="(a,b) in item.data"
|
|
|
+ :key="a.workStartTime+b"
|
|
|
+ v-if="b<='2'"
|
|
|
+ style="color: red"
|
|
|
+ >{{a.workDetail}}</p>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -42,32 +47,25 @@
|
|
|
:header-cell-style="{ background: '#2a6b9a', color: 'white' }"
|
|
|
class="jindu"
|
|
|
>
|
|
|
- <el-table-column label="序号" align="center" prop="" width="50">
|
|
|
+ <el-table-column label="序号" align="center" prop width="50">
|
|
|
<template scope="scope">
|
|
|
- <span>{{
|
|
|
+ <span>
|
|
|
+ {{
|
|
|
(queryParams.pageNum - 1) * queryParams.pageSize +
|
|
|
scope.$index +
|
|
|
1
|
|
|
- }}</span>
|
|
|
+ }}
|
|
|
+ </span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="任务名称" prop="workName" />
|
|
|
<el-table-column label="任务类型" prop="workType" />
|
|
|
- <el-table-column
|
|
|
- label="任务描述"
|
|
|
- prop="workDetail"
|
|
|
- width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- </el-table-column>
|
|
|
+ <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">
|
|
|
<template slot-scope="scope">
|
|
|
- <dict-tag
|
|
|
- :options="dict.type.work_priority"
|
|
|
- :value="scope.row.workPriority"
|
|
|
- />
|
|
|
+ <dict-tag :options="dict.type.work_priority" :value="scope.row.workPriority" />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="进度" prop="workRate">
|
|
@@ -87,8 +85,7 @@
|
|
|
type="text"
|
|
|
@click="handleUpdateCha(scope.row)"
|
|
|
v-hasPermi="['workingArrangements:worktaskplan:add']"
|
|
|
- >查看</el-button
|
|
|
- >
|
|
|
+ >查看</el-button>
|
|
|
<el-button
|
|
|
size="btlook"
|
|
|
type="text"
|
|
@@ -114,13 +111,7 @@
|
|
|
class="el-dialog__header"
|
|
|
:close-on-click-modal="false"
|
|
|
>
|
|
|
- <el-form
|
|
|
- ref="Progress"
|
|
|
- :model="Progress"
|
|
|
- :rules="rules1"
|
|
|
- label-width="100px"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
+ <el-form ref="Progress" :model="Progress" :rules="rules1" label-width="100px" :inline="true">
|
|
|
<div class="jiben">完成进度</div>
|
|
|
<el-form-item prop="workRate">
|
|
|
<div>
|
|
@@ -145,11 +136,7 @@
|
|
|
</el-form-item>
|
|
|
<div class="jiben">备注</div>
|
|
|
<el-form-item prop="workFeedbackRemark">
|
|
|
- <el-input
|
|
|
- v-model="Progress.workFeedbackRemark"
|
|
|
- type="textarea"
|
|
|
- placeholder="请输入内容"
|
|
|
- />
|
|
|
+ <el-input v-model="Progress.workFeedbackRemark" type="textarea" placeholder="请输入内容" />
|
|
|
</el-form-item>
|
|
|
<div class="jiben">完成时间</div>
|
|
|
<el-form-item prop="workFinishTime">
|
|
@@ -209,25 +196,18 @@
|
|
|
margin-bottom: 20px;
|
|
|
color: #fff;
|
|
|
"
|
|
|
- >
|
|
|
- {{ moreTable.workStartTime }} 至 {{ moreTable.workEndTime }}
|
|
|
- </div>
|
|
|
+ >{{ moreTable.workStartTime }} 至 {{ moreTable.workEndTime }}</div>
|
|
|
</el-form-item>
|
|
|
<div class="jiben">附件文档</div>
|
|
|
<el-form-item prop="file">
|
|
|
- <el-input
|
|
|
- label="附件名称"
|
|
|
- v-model="moreTable.fileName"
|
|
|
- style="width: 820px"
|
|
|
- />
|
|
|
+ <el-input label="附件名称" v-model="moreTable.fileName" style="width: 820px" />
|
|
|
<a
|
|
|
:href="url + moreTable.fileName"
|
|
|
:download="moreTable.name"
|
|
|
title="下载"
|
|
|
style="color: white; margin-left: 10px"
|
|
|
class="downloadfile"
|
|
|
- >下载附件</a
|
|
|
- >
|
|
|
+ >下载附件</a>
|
|
|
</el-form-item>
|
|
|
<div class="jiben">任务描述</div>
|
|
|
<div class="thistext">{{ moreTable.workDetail }}</div>
|
|
@@ -240,16 +220,12 @@
|
|
|
style="width: 100%; background: #004d86"
|
|
|
class="tabless"
|
|
|
>
|
|
|
- <el-table-column
|
|
|
- prop="executorPeople"
|
|
|
- label="执行人"
|
|
|
- width="180"
|
|
|
- ></el-table-column>
|
|
|
+ <el-table-column prop="executorPeople" label="执行人" width="180"></el-table-column>
|
|
|
<el-table-column label="任务周期" width="190">
|
|
|
<template slot-scope="scope">
|
|
|
- <div v-if="scope.row.workStartTime && scope.row.workEndTime">
|
|
|
- {{ scope.row.workStartTime }}至{{ scope.row.workEndTime }}
|
|
|
- </div>
|
|
|
+ <div
|
|
|
+ v-if="scope.row.workStartTime && scope.row.workEndTime"
|
|
|
+ >{{ scope.row.workStartTime }}至{{ scope.row.workEndTime }}</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="workRate" label="进度">
|
|
@@ -263,11 +239,7 @@
|
|
|
></el-progress>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="workFinishTime"
|
|
|
- label="完成时间"
|
|
|
- width="180"
|
|
|
- ></el-table-column>
|
|
|
+ <el-table-column prop="workFinishTime" label="完成时间" width="180"></el-table-column>
|
|
|
<el-table-column label="状态" width="180">
|
|
|
<template slot-scope="scope">
|
|
|
<div>{{ scope.row.workRate == 100 ? "完成" : "未完成" }}</div>
|
|
@@ -278,8 +250,7 @@
|
|
|
<a
|
|
|
:href="url + scope.row.workFeedbackFileUrl"
|
|
|
:download="scope.row.workFeedbackFileName"
|
|
|
- >下载附件</a
|
|
|
- >
|
|
|
+ >下载附件</a>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -294,7 +265,7 @@
|
|
|
import {
|
|
|
peopleList,
|
|
|
progressInput,
|
|
|
- queryTask,
|
|
|
+ queryTask
|
|
|
} from "@/api/workingArrangements/workCalendar";
|
|
|
export default {
|
|
|
name: "workCalendar",
|
|
@@ -315,7 +286,7 @@ export default {
|
|
|
workFeedbackFileUrl: null,
|
|
|
workId: null,
|
|
|
workFeedbackRemark: null,
|
|
|
- file: [{ name: null, url: null }],
|
|
|
+ file: [{ name: null, url: null }]
|
|
|
},
|
|
|
rules1: {},
|
|
|
form: {},
|
|
@@ -326,12 +297,12 @@ export default {
|
|
|
// 查询参数
|
|
|
queryParams: {
|
|
|
pageNum: 1,
|
|
|
- pageSize: 10,
|
|
|
+ pageSize: 10
|
|
|
},
|
|
|
// 进度录入
|
|
|
jinDu: {
|
|
|
executorPeople: null,
|
|
|
- id: null,
|
|
|
+ id: null
|
|
|
},
|
|
|
// 时间
|
|
|
day: null,
|
|
@@ -342,7 +313,7 @@ export default {
|
|
|
rulesb: {},
|
|
|
url: process.env.VUE_APP_BASE_API,
|
|
|
// 执行人查看进度
|
|
|
- workProgresses: [],
|
|
|
+ workProgresses: []
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
@@ -350,10 +321,23 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
getList() {
|
|
|
- peopleList().then((res) => {
|
|
|
+ peopleList().then(res => {
|
|
|
this.worktaskplanList = [];
|
|
|
- this.attendanceDetailsData = res.rows;
|
|
|
- this.attendanceDetailsData.forEach((item, i) => {
|
|
|
+ let workStartTimedata = [];
|
|
|
+ res.rows.forEach((item, i) => {
|
|
|
+ if (workStartTimedata.indexOf(item.workStartTime) === -1) {
|
|
|
+ this.attendanceDetailsData.push({
|
|
|
+ workStartTime: item.workStartTime,
|
|
|
+ data: [item]
|
|
|
+ });
|
|
|
+ workStartTimedata.push(item.workStartTime);
|
|
|
+ } else {
|
|
|
+ this.attendanceDetailsData.forEach(n => {
|
|
|
+ if (n.workStartTime == item.workStartTime) {
|
|
|
+ n.data.push(item);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
if (item.workStartTime == this.day) {
|
|
|
this.worktaskplanList.push(item);
|
|
|
}
|
|
@@ -389,7 +373,7 @@ export default {
|
|
|
// 查看
|
|
|
handleUpdateCha(row) {
|
|
|
this.workProgresses = [];
|
|
|
- queryTask(row.id).then((res) => {
|
|
|
+ queryTask(row.id).then(res => {
|
|
|
this.moreTable = res.data;
|
|
|
this.moreTable.fileName = res.data.workAnnex;
|
|
|
this.moreTable.name = res.data.workAnnexName;
|
|
@@ -411,7 +395,7 @@ export default {
|
|
|
},
|
|
|
// 进度录入
|
|
|
submitForm() {
|
|
|
- this.$refs["Progress"].validate((valid) => {
|
|
|
+ this.$refs["Progress"].validate(valid => {
|
|
|
if (valid) {
|
|
|
this.Progress.workId = this.jinDu.id;
|
|
|
this.Progress.executorPeople = this.jinDu.executorPeople;
|
|
@@ -419,7 +403,7 @@ export default {
|
|
|
this.Progress.workFeedbackFileName = this.Progress.file[0].name;
|
|
|
this.Progress.workFeedbackFileUrl = this.Progress.file[0].url;
|
|
|
}
|
|
|
- progressInput(this.Progress).then((res) => {
|
|
|
+ progressInput(this.Progress).then(res => {
|
|
|
this.$modal.msgSuccess("上传成功");
|
|
|
this.getList();
|
|
|
this.open = false;
|
|
@@ -435,7 +419,7 @@ export default {
|
|
|
workFeedbackFileName: null,
|
|
|
workFeedbackFileUrl: null,
|
|
|
workId: null,
|
|
|
- workFeedbackRemark: null,
|
|
|
+ workFeedbackRemark: null
|
|
|
};
|
|
|
this.resetForm("Progress");
|
|
|
},
|
|
@@ -452,7 +436,7 @@ export default {
|
|
|
},
|
|
|
handleSelected(day) {
|
|
|
let flag = -1; //默认显示为-1
|
|
|
- this.attendanceDetailsData.forEach((item) => {
|
|
|
+ this.attendanceDetailsData.forEach(item => {
|
|
|
//this.attendanceDetailsData是后台返回的数据
|
|
|
if (item.workStartTime == day) {
|
|
|
//判断显示数据
|
|
@@ -461,11 +445,11 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
return flag;
|
|
|
- },
|
|
|
- },
|
|
|
+ }
|
|
|
+ }
|
|
|
};
|
|
|
</script>
|
|
|
-
|
|
|
+
|
|
|
<style scoped>
|
|
|
.box {
|
|
|
/* min-height: calc(100vh - 85px);
|
|
@@ -518,4 +502,3 @@ export default {
|
|
|
background: #114a80 !important;
|
|
|
}
|
|
|
</style>
|
|
|
-
|