|
@@ -494,49 +494,13 @@
|
|
|
<!-- <el-table-column align="center" v-for="(item, index) in projectList" :key="item.id" :label="item.projectName" width="200"> -->
|
|
|
<el-table-column align="center" v-for="item in projectList" :key="item.id" :label="item.projectName" width="200">
|
|
|
<template slot-scope="scope">
|
|
|
- <!-- <el-input v-model="scope.row[item.projectName]" style="width:120px;" @input="zhoZhi(scope.row, scope.$index)"></el-input> -->
|
|
|
- <!-- <el-popover placement="top" width="450" trigger="click">
|
|
|
- <div>
|
|
|
- <div class="zhoFel" v-if="reportTimeType.type == 2">
|
|
|
- <p>选择时间</p>
|
|
|
- <el-time-picker style="width: 355px" is-range v-model="scope.row[item.projectName].time" format="HH:mm" value-format="HH:mm" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" placeholder="选择时间范围" @change="zhoTimes(scope.row[item.projectName], scope.$index, index)"></el-time-picker>
|
|
|
- </div>
|
|
|
- <div class="zhoFel" v-if="reportTimeType.type == 1">
|
|
|
- <p>选择时长</p>
|
|
|
- <el-select clearable v-model="scope.row[item.projectName].workingTime" style="width: 355px;" placeholder="请选择工作时长" @change="zhoXuan(scope.row[item.projectName], scope.$index, index)">
|
|
|
- <el-option v-for="item in timeRange" :key="item" :value="item.toFixed(1)">{{item.toFixed(1)}}</el-option>
|
|
|
- </el-select>
|
|
|
- </div>
|
|
|
- <div class="zhoFel" v-if="reportTimeType.type == 3">
|
|
|
- <p>用时占比</p>
|
|
|
- <div style="width:355px;display: flex;align-items: center;">
|
|
|
- <el-col span="23"><el-slider style="margin-left: 5px;width:249px;" v-model="scope.row[item.projectName].progress" :min="0" :show-tooltip="false" :step="10" @input="scope.row[item.projectName].workingTime = (reportTimeType.allday*scope.row[item.projectName].progress/100).toFixed(1)" @change="addBli(scope.row[item.projectName], scope.$index, index)"></el-slider></el-col>
|
|
|
- <el-col span="10"><span style="float:right;"><span style="margin-right:10px;">{{scope.row[item.projectName].progress || 0}}%</span>{{scope.row[item.projectName].workingTime | amounts}}小时</span></el-col>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="zhoFel">
|
|
|
- <p>工作事项</p>
|
|
|
- <el-input type="textarea" v-model="scope.row[item.projectName].con" placeholder="请输入工作事项" style="width: 355px" clearable></el-input>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div v-if="reportTimeType.multiWorktime == 0" slot="reference">
|
|
|
- <el-button v-if="scope.row[item.projectName].workingTime != null && scope.row[item.projectName].workingTime != '' && reportTimeType.type == 3 && scope.row[item.projectName].workingTime > 0" type="text" slot="reference">{{scope.row[item.projectName].workingTime}} h</el-button>
|
|
|
- <el-button v-else-if="scope.row[item.projectName].workingTime != null && scope.row[item.projectName].workingTime != '' && reportTimeType.type == 1 && scope.row[item.projectName].workingTime > 0" type="text" slot="reference">{{scope.row[item.projectName].workingTime}} h</el-button>
|
|
|
- <el-button v-else-if="scope.row[item.projectName].time != null && scope.row[item.projectName].time != '' && reportTimeType.type == 2" type="text" slot="reference">{{scope.row[item.projectName].time[0]}} - {{scope.row[item.projectName].time[1]}}</el-button>
|
|
|
- <el-button v-else type="text" >请填写</el-button>
|
|
|
- </div>
|
|
|
- <div v-if="reportTimeType.multiWorktime == 1" slot="reference">
|
|
|
- <el-button v-if="scope.row[item.projectName].time != null && scope.row[item.projectName].time != '' && reportTimeType.type == 2" type="text" slot="reference">{{scope.row[item.projectName].time[0]}} - {{scope.row[item.projectName].time[1]}}</el-button>
|
|
|
- <el-button v-else type="text" >请填写</el-button>
|
|
|
- </div>
|
|
|
- </el-popover> -->
|
|
|
- <div v-if="reportTimeType.multiWorktime == 0" slot="reference" @click="tianxies(scope.row[item.projectName], scope.$index, item.projectName)">
|
|
|
+ <div v-if="reportTimeType.multiWorktime == 0" slot="reference" @click="tianxies(scope.row[item.projectName], scope.$index, item.projectName, workForm.domains)">
|
|
|
<el-button v-if="scope.row[item.projectName].workingTime != null && scope.row[item.projectName].workingTime != '' && reportTimeType.type == 3 && scope.row[item.projectName].workingTime > 0" type="text" slot="reference">{{scope.row[item.projectName].workingTime}} h</el-button>
|
|
|
<el-button v-else-if="scope.row[item.projectName].workingTime != null && scope.row[item.projectName].workingTime != '' && reportTimeType.type == 1 && scope.row[item.projectName].workingTime > 0" type="text" slot="reference">{{scope.row[item.projectName].workingTime}} h</el-button>
|
|
|
<el-button v-else-if="scope.row[item.projectName].time != null && scope.row[item.projectName].time != '' && reportTimeType.type == 2" type="text" slot="reference">{{scope.row[item.projectName].time[0]}} - {{scope.row[item.projectName].time[1]}}</el-button>
|
|
|
<el-button v-else type="text" >请填写</el-button>
|
|
|
</div>
|
|
|
- <div v-if="reportTimeType.multiWorktime == 1" slot="reference" @click="tianxies(scope.row[item.projectName], scope.$index, item.projectName)">
|
|
|
+ <div v-if="reportTimeType.multiWorktime == 1" slot="reference" @click="tianxies(scope.row[item.projectName], scope.$index, item.projectName, workForm.domains)">
|
|
|
<el-button v-if="scope.row[item.projectName].time != null && scope.row[item.projectName].time != '' && reportTimeType.type == 2" type="text" slot="reference">{{scope.row[item.projectName].time[0]}} - {{scope.row[item.projectName].time[1]}}</el-button>
|
|
|
<el-button v-else type="text" >请填写</el-button>
|
|
|
</div>
|
|
@@ -569,6 +533,18 @@
|
|
|
<!-- 按周填报弹窗 -->
|
|
|
<el-dialog title="请填写" :visible.sync="tianxieDialogVisible" width="30%" :before-close="handleClose">
|
|
|
<div>
|
|
|
+ <div class="zhoFel" v-if="zhoBao.subProjectList != null && zhoBao.subProjectList.length> 0">
|
|
|
+ <p>子项目</p>
|
|
|
+ <el-select v-model="zhoBao.subProjectId" placeholder="请选择" clearable="true" style="width: 355px">
|
|
|
+ <el-option v-for="item in zhoBao.subProjectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="zhoFel" v-if="user.company.packageProject == 1 && zhoBao.stages != null && zhoBao.stages.length> 0">
|
|
|
+ <p>投入阶段</p>
|
|
|
+ <el-select v-model="zhoBao.stage" placeholder="请选择" style="width: 355px" clearable="true">
|
|
|
+ <el-option v-for="item in zhoBao.stages" :key="item" :label="item" :value="item"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
<div class="zhoFel" v-if="reportTimeType.type == 2">
|
|
|
<p>选择时间</p>
|
|
|
<el-time-picker style="width: 355px" is-range v-model="zhoBao.time" format="HH:mm" value-format="HH:mm" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" placeholder="选择时间范围"></el-time-picker>
|
|
@@ -975,9 +951,14 @@
|
|
|
workingTime: '',
|
|
|
progress: '',
|
|
|
con: '',
|
|
|
+ subProjectId: '',
|
|
|
+ stage: '',
|
|
|
+ subProjectList: [],
|
|
|
+ stages: [],
|
|
|
},
|
|
|
zhoBaoIdx: '',
|
|
|
- zhoBaoName: ''
|
|
|
+ zhoBaoName: '',
|
|
|
+ zhis: {}
|
|
|
};
|
|
|
},
|
|
|
filters: {
|
|
@@ -1604,6 +1585,7 @@
|
|
|
},
|
|
|
//项目选中了, 加载子项目
|
|
|
selectProject(domain, index) {
|
|
|
+ console.log(domain, index, '加载')
|
|
|
this.http.post('/sub-project/list',{
|
|
|
projectId: domain.projectId
|
|
|
},
|
|
@@ -2547,7 +2529,16 @@
|
|
|
|
|
|
},
|
|
|
// 按周填报里内容的填写
|
|
|
- tianxies(item, i, names) {
|
|
|
+ tianxies(item, i, names, row) {
|
|
|
+ console.log(item, i, names, row[0], '你好')
|
|
|
+ var idd = ''
|
|
|
+ var obj = {}
|
|
|
+ for(var l in this.projectList) {
|
|
|
+ if(this.projectList[l].projectName == names) idd = this.projectList[l].id
|
|
|
+ }
|
|
|
+ obj.projectId = idd
|
|
|
+ this.selectProject(obj, 0)
|
|
|
+ console.log(this.workForm.domains[0], '打印出来的')
|
|
|
this.tianxieDialogVisible = true
|
|
|
this.scopess = item
|
|
|
var sss = {}
|
|
@@ -2555,9 +2546,44 @@
|
|
|
sss.progress = item.progress
|
|
|
sss.time = item.time
|
|
|
sss.workingTime = item.workingTime
|
|
|
- this.zhoBaoIdx = i
|
|
|
- this.zhoBaoName = names
|
|
|
- this.zhoBao = sss
|
|
|
+ var that = this
|
|
|
+ setTimeout(() =>{
|
|
|
+ if(Object.keys(item).length < 5) {
|
|
|
+ console.log(456)
|
|
|
+ sss.subProjectId = that.workForm.domains[0].subProjectId
|
|
|
+ sss.stage = that.workForm.domains[0].stage
|
|
|
+ sss.subProjectList = that.workForm.domains[0].subProjectList
|
|
|
+ sss.stages = that.workForm.domains[0].stages
|
|
|
+ } else {
|
|
|
+ console.log(123)
|
|
|
+ sss.subProjectId = item.subProjectId
|
|
|
+ sss.stage = item.stage
|
|
|
+ sss.subProjectList = item.subProjectList
|
|
|
+ sss.stages = item.stages
|
|
|
+ }
|
|
|
+ console.log(sss, '数据')
|
|
|
+ that.zhoBaoIdx = i
|
|
|
+ that.zhoBaoName = names
|
|
|
+ that.zhoBao = sss
|
|
|
+ that.zhis = row
|
|
|
+ },200);
|
|
|
+ // if(Object.keys(sss).length <= 4) {
|
|
|
+ // sss.subProjectId = this.workForm.domains[0].subProjectId
|
|
|
+ // sss.stage = this.workForm.domains[0].stage
|
|
|
+ // sss.subProjectList = this.workForm.domains[0].subProjectList
|
|
|
+ // sss.stages = this.workForm.domains[0].stages
|
|
|
+ // } else {
|
|
|
+ // sss.subProjectId = item.subProjectId
|
|
|
+ // sss.stage = item.stage
|
|
|
+ // sss.subProjectList = item.subProjectList
|
|
|
+ // sss.stages = item.stages
|
|
|
+ // }
|
|
|
+ // console.log(sss, '数据')
|
|
|
+ // this.zhoBaoIdx = i
|
|
|
+ // this.zhoBaoName = names
|
|
|
+ // this.zhoBao = sss
|
|
|
+ // this.zhis = row
|
|
|
+ // this.selectProject(row[0], i)
|
|
|
},
|
|
|
// 按周填报里内容的填写点击确定
|
|
|
btnTianxiaes() {
|
|
@@ -2879,7 +2905,7 @@
|
|
|
formData.append("projectId", this.projectList[s].id);
|
|
|
}
|
|
|
}
|
|
|
- formData.append("subProjectId", '0');
|
|
|
+ zhoD[j].subProjectId ? formData.append("subProjectId", zhoD[j].subProjectId) : formData.append("subProjectId", '0');
|
|
|
formData.append("taskId", 0);
|
|
|
formData.append("reportTimeType", this.reportTimeType.type);
|
|
|
formData.append("endTime", '');
|
|
@@ -2896,7 +2922,7 @@
|
|
|
formData.append("content", zhiZhi)
|
|
|
formData.append("isOvertime", 0)
|
|
|
formData.append("professionProgress", "[]")
|
|
|
- formData.append("stage", "");
|
|
|
+ zhoD[j].stage ? formData.append("stage", zhoD[j].stage) : formData.append("stage", '');
|
|
|
formData.append("createDate",zhoD.zhoDataTime)
|
|
|
|
|
|
}
|
|
@@ -2917,7 +2943,7 @@
|
|
|
formData.append("projectId", this.projectList[s].id);
|
|
|
}
|
|
|
}
|
|
|
- formData.append("subProjectId", '0');
|
|
|
+ zhoD[j].subProjectId ? formData.append("subProjectId", zhoD[j].subProjectId) : formData.append("subProjectId", '0');
|
|
|
formData.append("taskId", 0);
|
|
|
formData.append("reportTimeType", this.reportTimeType.type);
|
|
|
formData.append("endTime", zhoD[j].time[1]);
|
|
@@ -2926,7 +2952,7 @@
|
|
|
formData.append("content", zhoD[j].con)
|
|
|
formData.append("isOvertime", 0)
|
|
|
formData.append("professionProgress", "[]")
|
|
|
- formData.append("stage", "");
|
|
|
+ zhoD[j].stage ? formData.append("stage", zhoD[j].stage) : formData.append("stage", '');
|
|
|
formData.append("createDate",zhoD.zhoDataTime)
|
|
|
|
|
|
}
|
|
@@ -2942,7 +2968,8 @@
|
|
|
formData.append("projectId", this.projectList[s].id);
|
|
|
}
|
|
|
}
|
|
|
- formData.append("subProjectId", '0');
|
|
|
+ zhoD[j].subProjectId ? formData.append("subProjectId", zhoD[j].subProjectId) : formData.append("subProjectId", '0')
|
|
|
+ // formData.append("subProjectId", zhoD[j].subProjectId);
|
|
|
formData.append("taskId", 0);
|
|
|
formData.append("reportTimeType", this.reportTimeType.type);
|
|
|
if(this.reportTimeType.type == 1) {
|
|
@@ -2958,7 +2985,7 @@
|
|
|
formData.append("content", zhoD[j].con)
|
|
|
formData.append("isOvertime", 0)
|
|
|
formData.append("professionProgress", "[]")
|
|
|
- formData.append("stage", "");
|
|
|
+ zhoD[j].stage ? formData.append("stage", zhoD[j].stage) : formData.append("stage", '');
|
|
|
formData.append("createDate",zhoD.zhoDataTime)
|
|
|
|
|
|
}
|