|
@@ -175,9 +175,15 @@
|
|
|
</span>
|
|
|
</span>
|
|
|
<div class="checkbtn" style="padding-right:20px;">
|
|
|
- <el-button v-if="item1.state >= 2 && user.id == item1.id" type="primary" size="small" @click="isSubstitude=false; fillInReport(index1,0)">{{$t('btn.editWorkReport')}}</el-button>
|
|
|
+ <!--编辑和删除日报-->
|
|
|
+
|
|
|
+ <el-button v-if="item1.state >= 2 && user.id == item1.id && user.timeType.enableNewWeeklyfill == 1" type="primary" size="small" @click="isSubstitude=false;fillInReportCustom()">{{$t('btn.editWorkReport')}}</el-button>
|
|
|
+ <el-button v-if="item1.state >= 2 && user.id == item1.id && user.timeType.enableNewWeeklyfill != 1" type="primary" size="small" @click="isSubstitude=false; fillInReport(index1,0)">{{$t('btn.editWorkReport')}}</el-button>
|
|
|
<el-button v-if="permissions.reportsDeleteAll && item1.state != 1" size="small" @click="guanli(item1)" style="float: right;">{{$t('btn.delete')}}</el-button>
|
|
|
</div>
|
|
|
+ <div v-if="user.timeType.enableNewWeeklyfill == 1 && item1.summary != null" style="margin-left:20px;">
|
|
|
+ <p v-html="'<b>'+item1.summaryTitle+'</b><br>'+item1.summary.replace(/[\r\n]/g,'<br>')"> </p>
|
|
|
+ </div>
|
|
|
<div class="one_daily_body">
|
|
|
<el-timeline>
|
|
|
<el-timeline-item v-for="(item2,index2) in item1.data" :key="index2">
|
|
@@ -942,25 +948,6 @@
|
|
|
</el-table>
|
|
|
</el-form>
|
|
|
|
|
|
- <!-- 按周填报项目筛选 -->
|
|
|
- <!-- <div v-if="selConShow" class="selConStyle">
|
|
|
- <div class="selConStyle_title">{{$t('defaultText.pleaseSelectTheItemYouWantToFillIn')}}</div>
|
|
|
- <el-select v-model="selCon" multiple :placeholder="$t('defaultText.pleaseChoose')" filterable>
|
|
|
- <el-option
|
|
|
- v-for="item in fillProjectList"
|
|
|
- :disabled="item.status!=1 && item.status!=4"
|
|
|
- :key="item.id"
|
|
|
- :label="item.projectName + '\u3000' + item.projectCode"
|
|
|
- :value="item.id">
|
|
|
- <span style="float: left; color: #8492a6; font-size: 13px">{{ item.projectCode }}</span>
|
|
|
- <span style="float: right">{{ item.projectName }}</span>
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </div> -->
|
|
|
- <!-- <span slot="footer" class="dialog-footer" v-if="selConShow">
|
|
|
- <el-button @click="selListqx()">{{$t('btn.cancel')}}</el-button>
|
|
|
- <el-button type="primary" @click="selListFun()">{{$t('btn.nextStep')}}</el-button>
|
|
|
- </span> -->
|
|
|
<span slot="footer" class="dialog-footer" >
|
|
|
<!-- <el-button @click="zhoAddlast()" style="float:left;" class="el-icon-back">{{$t('defaultText.selectProject')}}</el-button> -->
|
|
|
<el-button @click="closeAddWeeklyReport()" :loading="submitingReport">{{$t('btn.cancel')}}</el-button>
|
|
@@ -1061,7 +1048,6 @@
|
|
|
<el-select v-model="zhoBao.degreeId" :placeholder="$t('defaultText.pleaseChoose')" clearable="true" style="width: 355px" filterable>
|
|
|
<el-option v-for="item in zhoBao.wuduList" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
</el-select>
|
|
|
-
|
|
|
</div>
|
|
|
<!-- 自定义数值 -->
|
|
|
<div class="zhoFel" v-if="user.timeType.customDataActive">
|
|
@@ -1092,7 +1078,7 @@
|
|
|
</div>
|
|
|
<div class="zhoFel">
|
|
|
<p>{{$t('other.workMatters')}}</p>
|
|
|
- <el-input type="textarea" v-model="zhoBao.con" :placeholder="$t('other.tianworkMatters')" style="width: 355px" clearable></el-input>
|
|
|
+ <el-input type="textarea" v-model="zhoBao.content" :placeholder="$t('other.tianworkMatters')" style="width: 355px" clearable></el-input>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
@@ -2532,7 +2518,6 @@
|
|
|
//最近项目如果在fillProjectList中不存在,需要移除
|
|
|
topObj.peojectList = topObj.peojectList.filter(top=>this.fillProjectList.find(fp=>fp.id==top.id) != null);
|
|
|
this.integrationProjectList = [topObj, botomObj]
|
|
|
- console.log(this.integrationProjectList, '整合')
|
|
|
}else {
|
|
|
this.$message({
|
|
|
message: res.msg,
|
|
@@ -5524,6 +5509,39 @@
|
|
|
this.dialogVisible = true;
|
|
|
|
|
|
},
|
|
|
+
|
|
|
+ //按周填报的弹窗口中编辑单项目相关数据
|
|
|
+ setWeekFormReportItem(reportId, i, names, row,sss) {
|
|
|
+ console.log(sss)
|
|
|
+ this.http.post('/report/getReportById', {
|
|
|
+ reportId: reportId
|
|
|
+ },
|
|
|
+ res => {
|
|
|
+ if (res.code == "ok") {
|
|
|
+ var data = res.data.report;
|
|
|
+ sss.subProjectId = data.subProjectId
|
|
|
+ sss.subProjectList = data.subProjectList;
|
|
|
+ sss.stage = data.stage
|
|
|
+ sss.subProjectList = data.subProjectList
|
|
|
+ sss.stages = data.stages
|
|
|
+ sss.taskGroups = data.taskGroups;
|
|
|
+ sss.auditUserList = data.auditUserList;
|
|
|
+ sss.degreeId = data.degreeId;
|
|
|
+ sss.customData = data.customData;
|
|
|
+ sss.wuduList = data.degreeList;
|
|
|
+ this.zhoBaoIdx = i
|
|
|
+ this.zhoBaoName = names
|
|
|
+ this.zhoBao = sss
|
|
|
+ this.zhis = row
|
|
|
+ if (sss.groupId) {
|
|
|
+ //最后一个参数表示是否保留stage的值,不要重置为空
|
|
|
+ this.getGroupStages(this.zhoBao, 0, true)
|
|
|
+ }
|
|
|
+ this.$forceUpdate();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
// 按周填报里内容的填写
|
|
|
tianxies(item, i, names, row) {
|
|
|
if (item.state == 0) {
|
|
@@ -5564,8 +5582,7 @@
|
|
|
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 = {}
|
|
@@ -5577,9 +5594,10 @@
|
|
|
sss.state = 3;
|
|
|
}
|
|
|
sss.projectId = idd;
|
|
|
- sss.con = item.con
|
|
|
sss.progress = item.progress
|
|
|
sss.time = item.time
|
|
|
+ sss.content = item.content;
|
|
|
+ console.log('333', sss.content)
|
|
|
if (sss.time == '' && this.reportTimeType.type == 2) {
|
|
|
//取已填时间范围中最大的一个作为开始时间
|
|
|
var startTime = '09:00';
|
|
@@ -5609,44 +5627,68 @@
|
|
|
//默认选中第一个
|
|
|
sss.basecostId = this.timeBasecostList[0].id;
|
|
|
}
|
|
|
- var that = this
|
|
|
- setTimeout(() =>{
|
|
|
- var isFirstEdit = false;
|
|
|
- if(Object.keys(item).length < 5) {
|
|
|
- //首次点开当前的这个cell,初始化数据
|
|
|
- isFirstEdit = true;
|
|
|
- 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
|
|
|
- sss.taskGroups = that.workForm.domains[0].taskGroups;
|
|
|
- sss.auditUserList = obj.auditUserList;
|
|
|
- } else {
|
|
|
- sss.subProjectId = item.subProjectId
|
|
|
- sss.stage = item.stage
|
|
|
- sss.subProjectList = item.subProjectList
|
|
|
- sss.stages = item.stages
|
|
|
- sss.taskGroups = item.taskGroups;
|
|
|
- sss.auditUserList = obj.auditUserList;
|
|
|
- sss.degreeId = item.degreeId;
|
|
|
- sss.customData = item.customData;
|
|
|
- }
|
|
|
+ var hasEdited = this.zhoData[i][names].hasEdited;
|
|
|
+ if (hasEdited) {
|
|
|
+ //编辑过了
|
|
|
+ sss.subProjectId = item.subProjectId
|
|
|
+ sss.stage = item.stage
|
|
|
+ sss.subProjectList = item.subProjectList
|
|
|
+ sss.stages = item.stages
|
|
|
+ sss.taskGroups = item.taskGroups;
|
|
|
+ console.log(sss.taskGroups, '33333');
|
|
|
+ sss.auditUserList = obj.auditUserList;
|
|
|
+ sss.degreeId = item.degreeId;
|
|
|
+ sss.customData = item.customData;
|
|
|
if (sss.auditUserList != null && sss.auditUserList.length==1) {
|
|
|
//只有一个审核人,自动设置上去
|
|
|
sss.projectAuditorId = sss.auditUserList[0].auditorId;
|
|
|
}
|
|
|
- sss.wuduList = row[0].wuduList
|
|
|
- // console.log(sss, '数据')
|
|
|
- that.zhoBaoIdx = i
|
|
|
- that.zhoBaoName = names
|
|
|
- that.zhoBao = sss
|
|
|
- that.zhis = row
|
|
|
+ sss.wuduList = item.wuduList;
|
|
|
+ this.zhoBaoIdx = i
|
|
|
+ this.zhoBaoName = names
|
|
|
+ this.zhoBao = sss
|
|
|
+ this.zhis = row
|
|
|
if (sss.groupId) {
|
|
|
//最后一个参数表示是否保留stage的值,不要重置为空
|
|
|
- this.getGroupStages(that.zhoBao, 0, !isFirstEdit)
|
|
|
+ this.getGroupStages(this.zhoBao, 0, true)
|
|
|
}
|
|
|
- that.$forceUpdate();
|
|
|
- },600);
|
|
|
+ this.$forceUpdate();
|
|
|
+ } else {
|
|
|
+ //第一次打开,获取数据
|
|
|
+ if (sss.id == -1) {
|
|
|
+ //新填报的
|
|
|
+ this.selectProject(obj, 0);
|
|
|
+ var that = this
|
|
|
+ setTimeout(() =>{
|
|
|
+ sss.subProjectId = that.workForm.domains[0].subProjectId
|
|
|
+ sss.subProjectList = item.subProjectList;
|
|
|
+ sss.stage = that.workForm.domains[0].stage
|
|
|
+ sss.subProjectList = that.workForm.domains[0].subProjectList
|
|
|
+ sss.stages = that.workForm.domains[0].stages
|
|
|
+ sss.taskGroups = that.workForm.domains[0].taskGroups;
|
|
|
+ sss.auditUserList = obj.auditUserList;
|
|
|
+ sss.degreeId = item.degreeId;
|
|
|
+ sss.customData = item.customData;
|
|
|
+ if (sss.auditUserList != null && sss.auditUserList.length==1) {
|
|
|
+ //只有一个审核人,自动设置上去
|
|
|
+ sss.projectAuditorId = sss.auditUserList[0].auditorId;
|
|
|
+ }
|
|
|
+ sss.wuduList = row[0].wuduList
|
|
|
+ that.zhoBaoIdx = i
|
|
|
+ that.zhoBaoName = names
|
|
|
+ that.zhoBao = sss
|
|
|
+ that.zhis = row
|
|
|
+ if (sss.groupId) {
|
|
|
+ //最后一个参数表示是否保留stage的值,不要重置为空
|
|
|
+ this.getGroupStages(that.zhoBao, 0, false)
|
|
|
+ }
|
|
|
+ that.$forceUpdate();
|
|
|
+ },600);
|
|
|
+ } else {
|
|
|
+ //编辑填报过的;数据库已经存在的
|
|
|
+ this.setWeekFormReportItem(sss.id, i, names, row, sss);
|
|
|
+ }
|
|
|
+ }
|
|
|
},
|
|
|
// 按周填报里内容的填写点击确定
|
|
|
setWeekProItemData() {
|
|
@@ -5699,7 +5741,7 @@
|
|
|
if(this.user.timeType.customTextStatus == 1 && !this.zhoBao.customText){
|
|
|
errtips += this.user.timeType.customTextName + '、'
|
|
|
}
|
|
|
- if(this.user.timeType.workContentState == 1 && !this.zhoBao.con){
|
|
|
+ if(this.user.timeType.workContentState == 1 && !this.zhoBao.content){
|
|
|
errtips += this.user.companyId==781?this.$t('other.specificcontentandresults')+'、': this.$t('other.workMatters') +'、'
|
|
|
}
|
|
|
if(errtips){
|
|
@@ -5713,6 +5755,7 @@
|
|
|
|
|
|
this.tianxieDialogVisible = false
|
|
|
var zhong = this.zhoData
|
|
|
+ this.zhoBao.hasEdited = true;
|
|
|
zhong[this.zhoBaoIdx][this.zhoBaoName] = this.zhoBao
|
|
|
this.zhoData = zhong
|
|
|
if(this.reportTimeType.type == 1) this.zhoXuan(this.zhoBao, this.zhoBaoIdx)
|
|
@@ -5793,7 +5836,7 @@
|
|
|
var xinzhi = this.selProjectList[j].projectName
|
|
|
obj[xinzhi] = {}
|
|
|
obj[xinzhi].time = ''
|
|
|
- obj[xinzhi].con = ''
|
|
|
+ obj[xinzhi].content = ''
|
|
|
obj[xinzhi].progress = 0
|
|
|
obj[xinzhi].workingTime = 0
|
|
|
}
|
|
@@ -6024,7 +6067,7 @@
|
|
|
var pName = newProject.projectName;
|
|
|
dayItem[pName] = {};
|
|
|
dayItem[pName].time = ''
|
|
|
- dayItem[pName].con = ''
|
|
|
+ dayItem[pName].content = ''
|
|
|
dayItem[pName].progress = 0
|
|
|
dayItem[pName].workingTime = 0
|
|
|
}
|
|
@@ -6116,7 +6159,7 @@
|
|
|
var pName = this.selProjectList[j].projectName
|
|
|
obj[pName] = {}
|
|
|
obj[pName].time = ''
|
|
|
- obj[pName].con = ''
|
|
|
+ obj[pName].content = ''
|
|
|
obj[pName].progress = 0
|
|
|
obj[pName].workingTime = 0
|
|
|
}
|
|
@@ -6293,10 +6336,10 @@
|
|
|
var objjs = {}
|
|
|
objjs.startTime = zhoD[j].time[0]
|
|
|
objjs.endTime = zhoD[j].time[1]
|
|
|
- if (zhoD[j].con == null || zhoD[j].con == '') {
|
|
|
- zhoD[j].con == '-'
|
|
|
+ if (zhoD[j].content == null || zhoD[j].content == '') {
|
|
|
+ zhoD[j].content == '-'
|
|
|
}
|
|
|
- objjs.content = zhoD[j].con
|
|
|
+ objjs.content = zhoD[j].content
|
|
|
lix.push(objjs)
|
|
|
var zhiZhi = JSON.stringify(lix)
|
|
|
zhiZhi = zhiZhi.replace(/,/g,"@");
|
|
@@ -6378,7 +6421,7 @@
|
|
|
formData.append("endTime", zhoD[j].time[1]);
|
|
|
formData.append("startTime", zhoD[j].time[0]);
|
|
|
formData.append("multiWorktime", this.reportTimeType.multiWorktime);
|
|
|
- zhoD[j].con == '' || zhoD[j].con == null ? formData.append("content", '-') : formData.append("content", zhoD[j].con)
|
|
|
+ zhoD[j].content == '' || zhoD[j].content == null ? formData.append("content", '-') : formData.append("content", zhoD[j].content)
|
|
|
formData.append("isOvertime", 0)
|
|
|
formData.append("professionProgress", "[]")
|
|
|
if (zhoD[j].groupId) {
|
|
@@ -6459,7 +6502,7 @@
|
|
|
formData.append("workingTime", zhoD[j].workingTime);
|
|
|
}
|
|
|
formData.append("multiWorktime", this.reportTimeType.multiWorktime);
|
|
|
- zhoD[j].con == '' || zhoD[j].con == null ? formData.append("content", '-') : formData.append("content", zhoD[j].con)
|
|
|
+ zhoD[j].content == '' || zhoD[j].content == null ? formData.append("content", '-') : formData.append("content", zhoD[j].content)
|
|
|
formData.append("isOvertime", 0)
|
|
|
formData.append("professionProgress", "[]")
|
|
|
if (zhoD[j].groupId) {
|