|
@@ -374,7 +374,7 @@
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!-- 相关维度/自定义维度 -->
|
|
<!-- 相关维度/自定义维度 -->
|
|
- <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList != undefined && domain.wuduList != [] ? { required: true, message: '请选择' + yonghuUser.customDegreeName, trigger: ['change','blur'] } : {}" :prop="'domains.' + index + '.degreeId'">
|
|
|
|
|
|
+ <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList != undefined && domain.wuduList != [] ? { required: true, message: '请选择' + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
|
|
<el-select v-model="domain.degreeId" clearable placeholder="请选择" :disabled="!canEdit">
|
|
<el-select v-model="domain.degreeId" clearable placeholder="请选择" :disabled="!canEdit">
|
|
<el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
|
|
<el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
|
|
</el-option>
|
|
</el-option>
|
|
@@ -382,10 +382,10 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!-- 相关数值 -->
|
|
<!-- 相关数值 -->
|
|
<el-form-item :label="yonghuUser.customDataName" v-if="yonghuUser.customDataActive == 1 && user.timeType.customDataStatus == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: '请填写' + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
|
|
<el-form-item :label="yonghuUser.customDataName" v-if="yonghuUser.customDataActive == 1 && user.timeType.customDataStatus == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: '请填写' + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
|
|
- <el-input-number :id="'numberData_'+index" :disabled="!canEdit" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)" @change="inpnum"></el-input-number>
|
|
|
|
|
|
+ <el-input-number :id="'numberData_'+index" :disabled="!canEdit" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)"></el-input-number>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!-- 自定义文本 -->
|
|
<!-- 自定义文本 -->
|
|
- <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: '请填写' + yonghuUser.customTextName, trigger: ['change','blur'] } : {}">
|
|
|
|
|
|
+ <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: '请填写' + yonghuUser.customTextName, trigger: ['change','blur'] } : null">
|
|
<el-input :disabled="!canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" maxlength="25" show-word-limit></el-input>
|
|
<el-input :disabled="!canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" maxlength="25" show-word-limit></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="reportTimeType.type == 3" label="用时占比" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
|
|
<el-form-item v-if="reportTimeType.type == 3" label="用时占比" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
|
|
@@ -493,7 +493,7 @@
|
|
</span>
|
|
</span>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!-- 相关维度 -->
|
|
<!-- 相关维度 -->
|
|
- <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList.length != 0 ? { required: true, message: '请选择' + yonghuUser.customDegreeName, trigger: ['change','blur'] } : {}" :prop="'domains.' + index + '.degreeId'">
|
|
|
|
|
|
+ <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList.length != 0 ? { required: true, message: '请选择' + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
|
|
<el-select v-model="domain.degreeId" clearable placeholder="请选择">
|
|
<el-select v-model="domain.degreeId" clearable placeholder="请选择">
|
|
<el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
|
|
<el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
|
|
</el-option>
|
|
</el-option>
|
|
@@ -504,7 +504,7 @@
|
|
<el-input-number :id="'numberData_'+index" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)"></el-input-number>
|
|
<el-input-number :id="'numberData_'+index" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)"></el-input-number>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!-- 自定义文本 -->
|
|
<!-- 自定义文本 -->
|
|
- <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: '请填写' + yonghuUser.customTextName, trigger: ['change','blur'] } : {}">
|
|
|
|
|
|
+ <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: '请填写' + yonghuUser.customTextName, trigger: ['change','blur'] } : null">
|
|
<el-input :disabled="!canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" maxlength="25" show-word-limit></el-input>
|
|
<el-input :disabled="!canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" maxlength="25" show-word-limit></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<!--项目管理专业版模式下,项目下的近期执行的任务 -->
|
|
<!--项目管理专业版模式下,项目下的近期执行的任务 -->
|
|
@@ -765,6 +765,9 @@
|
|
<el-option v-for="item in projectList" :key="item.id" :label="item.projectName" :value="item.id"></el-option>
|
|
<el-option v-for="item in projectList" :key="item.id" :label="item.projectName" :value="item.id"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item prop="departmentId" label="选择部门" v-if="permissions.reportsCompany">
|
|
|
|
+ <el-cascader v-model="exportParam.departmentId" placeholder="全部部门" :options="departmentList" :props="{ checkStrictly: true, value: 'id' }" clearable style="width: 350px;"></el-cascader>
|
|
|
|
+ </el-form-item>
|
|
<el-form-item prop="projectId" label="日期范围">
|
|
<el-form-item prop="projectId" label="日期范围">
|
|
<el-date-picker
|
|
<el-date-picker
|
|
v-model="exportParam.dateRange" :editable="false"
|
|
v-model="exportParam.dateRange" :editable="false"
|
|
@@ -1307,7 +1310,7 @@
|
|
weekDay : ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],
|
|
weekDay : ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],
|
|
statusStyle:["waiting", "filledReportStyle", "RejectStyle", "waitSubmitStyle"],
|
|
statusStyle:["waiting", "filledReportStyle", "RejectStyle", "waitSubmitStyle"],
|
|
fillStatusList: [],
|
|
fillStatusList: [],
|
|
- exportParam:{projectId: null, dateRange:[]},
|
|
|
|
|
|
+ exportParam:{projectId: null, dateRange:[], departmentId: null},
|
|
exportDialog:false,
|
|
exportDialog:false,
|
|
timeFields:['timeType', 'workingTime', 'startTime', 'progress'],
|
|
timeFields:['timeType', 'workingTime', 'startTime', 'progress'],
|
|
subProjectList:[],
|
|
subProjectList:[],
|
|
@@ -1458,7 +1461,8 @@
|
|
stateKey: '0',
|
|
stateKey: '0',
|
|
expandDate: [],
|
|
expandDate: [],
|
|
|
|
|
|
- notifySelList:[]
|
|
|
|
|
|
+ notifySelList:[],
|
|
|
|
+ departmentList: []
|
|
};
|
|
};
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
@@ -1565,9 +1569,6 @@
|
|
inpu.value = parseFloat(inpu.value);
|
|
inpu.value = parseFloat(inpu.value);
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- inpnum(value){
|
|
|
|
- console.log(value);
|
|
|
|
- },
|
|
|
|
|
|
|
|
|
|
|
|
//获取项目下的任务分组
|
|
//获取项目下的任务分组
|
|
@@ -2409,7 +2410,7 @@
|
|
},
|
|
},
|
|
|
|
|
|
notifySel(sel){
|
|
notifySel(sel){
|
|
- console.log(sel);
|
|
|
|
|
|
+ // console.log(sel);
|
|
this.notifySelList = sel
|
|
this.notifySelList = sel
|
|
},
|
|
},
|
|
|
|
|
|
@@ -2615,6 +2616,8 @@
|
|
}
|
|
}
|
|
|
|
|
|
// 获取项目相关的维度
|
|
// 获取项目相关的维度
|
|
|
|
+ // domain.degreeId = null
|
|
|
|
+ this.$set(domain,'degreeId',null)
|
|
this.dimension(domain, index);
|
|
this.dimension(domain, index);
|
|
//获取项目下的任务分组
|
|
//获取项目下的任务分组
|
|
this.getTaskGroups(domain, index);
|
|
this.getTaskGroups(domain, index);
|
|
@@ -3062,6 +3065,7 @@
|
|
this.http.post("/report/getMembList", param,
|
|
this.http.post("/report/getMembList", param,
|
|
res => {
|
|
res => {
|
|
if (res.code == "ok") {
|
|
if (res.code == "ok") {
|
|
|
|
+ this.departmentList = JSON.parse(JSON.stringify(res.data))
|
|
var list = res.data , list1 = JSON.parse(JSON.stringify(res.data));
|
|
var list = res.data , list1 = JSON.parse(JSON.stringify(res.data));
|
|
// let noAllData = JSON.parse(JSON.stringify(res.data));
|
|
// let noAllData = JSON.parse(JSON.stringify(res.data));
|
|
// if (this.user.role > 0) {
|
|
// if (this.user.role > 0) {
|
|
@@ -3471,8 +3475,11 @@
|
|
if (this.exportParam.projectId != null) {
|
|
if (this.exportParam.projectId != null) {
|
|
param.projectId = this.exportParam.projectId;
|
|
param.projectId = this.exportParam.projectId;
|
|
}
|
|
}
|
|
|
|
+ if (this.exportParam.departmentId != null) {
|
|
|
|
+ param.departmentId = this.exportParam.departmentId[this.exportParam.departmentId.length - 1]
|
|
|
|
+ }
|
|
param.stateKey = this.stateKey
|
|
param.stateKey = this.stateKey
|
|
- param.departmentId = this.user.departmentId
|
|
|
|
|
|
+ // param.departmentId = this.user.departmentId
|
|
this.http.post( this.port.report.export, param,
|
|
this.http.post( this.port.report.export, param,
|
|
res => {
|
|
res => {
|
|
this.listLoading = false;
|
|
this.listLoading = false;
|
|
@@ -3655,7 +3662,7 @@
|
|
}
|
|
}
|
|
if(this.user.timeType.type == 1) {
|
|
if(this.user.timeType.type == 1) {
|
|
var shuzhi = this.user.timeType.allday + ''
|
|
var shuzhi = this.user.timeType.allday + ''
|
|
- console.log('执行一次', shuzhi.indexOf('.'))
|
|
|
|
|
|
+ // console.log('执行一次', shuzhi.indexOf('.'))
|
|
this.workForm.domains[0].workingTime = shuzhi.indexOf('.') == '-1' ? shuzhi + '.0' : shuzhi
|
|
this.workForm.domains[0].workingTime = shuzhi.indexOf('.') == '-1' ? shuzhi + '.0' : shuzhi
|
|
}
|
|
}
|
|
if (this.timeBasecostList && this.timeBasecostList.length > 0) {
|
|
if (this.timeBasecostList && this.timeBasecostList.length > 0) {
|
|
@@ -3724,7 +3731,7 @@
|
|
}
|
|
}
|
|
if(this.user.timeType.type == 1) {
|
|
if(this.user.timeType.type == 1) {
|
|
var shuzhi = this.user.timeType.allday + ''
|
|
var shuzhi = this.user.timeType.allday + ''
|
|
- console.log('执行二次')
|
|
|
|
|
|
+ // console.log('执行二次')
|
|
this.workForm.domains[0].workingTime = shuzhi.indexOf('.') == '-1' ? shuzhi + '.0' : shuzhi
|
|
this.workForm.domains[0].workingTime = shuzhi.indexOf('.') == '-1' ? shuzhi + '.0' : shuzhi
|
|
}
|
|
}
|
|
// console.log(this.workForm)
|
|
// console.log(this.workForm)
|
|
@@ -3941,7 +3948,7 @@
|
|
}
|
|
}
|
|
this.zhoRqi[1] = this.dateChange(1, this.zhoRqi[1])
|
|
this.zhoRqi[1] = this.dateChange(1, this.zhoRqi[1])
|
|
|
|
|
|
- console.log(this.zhoRqi[1]);
|
|
|
|
|
|
+ // console.log(this.zhoRqi[1]);
|
|
// console.log(this.zhoRqi[1])
|
|
// console.log(this.zhoRqi[1])
|
|
var obj = {}
|
|
var obj = {}
|
|
obj.zhoDataTime = this.zhoRqi[1]
|
|
obj.zhoDataTime = this.zhoRqi[1]
|