Browse Source

优化

master
陈裕财 4 years ago
parent
commit
7835b19bcd
  1. 17
      src/views/xm/core/xmTaskWorkload/XmTaskWorkloadEdit.vue
  2. 4
      src/views/xm/core/xmTaskWorkload/XmTaskWorkloadList.vue
  3. 37
      src/views/xm/core/xmTaskWorkload/XmTaskWorkloadRecord.vue
  4. 9
      src/views/xm/core/xmTaskWorkload/XmTaskWorkloadRecordDialog.vue
  5. 16
      src/views/xm/core/xmWorkItem/XmSubTaskList.vue
  6. 5
      src/views/xm/core/xmWorkItem/XmSubWorkItem.vue

17
src/views/xm/core/xmTaskWorkload/XmTaskWorkloadEdit.vue

@ -25,25 +25,17 @@
</el-row>
<el-row>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="工作时长" prop="workload">
<el-input type="number" style="width:80%;" v-model="editForm.workload" placeholder="工作时长"></el-input> &nbsp;小时
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="剩余工时" prop="rworkload">
<el-input type="number" style="width:80%;" v-model="editForm.rworkload" placeholder="剩余工时"></el-input>&nbsp;小时
<el-input type="number" style="width:80%;" v-model="editForm.workload" placeholder="工作时长"></el-input> &nbsp;小时
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="业务日期" prop="bizDate">
<el-date-picker style="width:80%;" v-model="editForm.bizDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" placeholder="业务日期"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="任务类型" prop="ttype">
<el-select v-model="editForm.ttype">
<el-option v-for="i in this.dicts.taskType" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -171,6 +163,7 @@
if(!this.editForm.ttype){
this.editForm.ttype="4"
}
this.editForm.workload=8
}
},

4
src/views/xm/core/xmTaskWorkload/XmTaskWorkloadList.vue

@ -198,9 +198,11 @@
this.addFormVisible=false;
this.pageInfo.count=true;
this.getXmTaskWorkloads();
this.$emit('submit',this.editForm)
},
afterEditSubmit(){
this.editFormVisible=false;
this.$emit('submit',this.editForm)
},
//xmTaskWorkload
selsChange: function (sels) {
@ -219,6 +221,7 @@
if(tips.isOk){
this.pageInfo.count=true;
this.getXmTaskWorkloads();
this.$emit('submit',this.editForm)
}
this.$notify({ showClose:true, message: tips.msg, type: tips.isOk?'success':'error' });
}).catch( err => this.load.del=false );
@ -242,6 +245,7 @@
if( tips.isOk ){
this.pageInfo.count=true;
this.getXmTaskWorkloads();
this.$emit('submit')
}
this.$notify({ showClose:true, message: tips.msg, type: tips.isOk?'success':'error'});
}).catch( err => this.load.del=false );

37
src/views/xm/core/xmTaskWorkload/XmTaskWorkloadRecord.vue

@ -8,7 +8,7 @@
<el-row>
<el-col :span="6">
<el-form-item label="预估工时" prop="budgetWorkload">
<el-input type="number" style="width:80%;" v-model="editForm.budgetWorkload" placeholder="预估工时" @change="editXmTaskSomeFields(editForm,'budgetWorkload',$event)"></el-input> &nbsp;小时
<el-input :controls="false" type="number" :step="8" style="width:80%;" v-model="editForm.budgetWorkload" placeholder="预估工时" @change="editXmTaskSomeFields(editForm,'budgetWorkload',$event)"></el-input> &nbsp;小时
</el-form-item>
</el-col>
<el-col :span="6">
@ -18,7 +18,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="剩余工时" prop="rworkload">
<el-input type="number" style="width:80%;" v-model="editForm.rworkload" placeholder="剩余工时" @change="editXmTaskSomeFields(editForm,'rworkload',$event)"></el-input> &nbsp;小时
<el-input :controls="false" type="number" style="width:80%;" :step="8" v-model="editForm.rworkload" placeholder="剩余工时" @change="editXmTaskSomeFields(editForm,'rworkload',$event)"></el-input> &nbsp;小时
</el-form-item>
</el-col>
<el-col :span="6">
@ -30,7 +30,7 @@
</el-form>
</el-row>
<el-row>
<xm-task-workload-list :xm-task="xmTask"></xm-task-workload-list>
<xm-task-workload-list :xm-task="xmTask" @submit="onWorkloadSubmit"></xm-task-workload-list>
</el-row>
</section>
</template>
@ -39,7 +39,7 @@
import util from '@/common/js/util';//
import config from "@/common/config"; //import
import { getDicts,initSimpleDicts,initComplexDicts } from '@/api/mdp/meta/item';//
import { editXmTaskSomeFields } from '@/api/xm/core/xmTaskWorkload';
import { getTask, editXmTaskSomeFields } from '@/api/xm/core/xmTask';
import { mapGetters } from 'vuex'
import XmTaskWorkloadList from './XmTaskWorkloadList';
@ -93,16 +93,43 @@
},
editXmTaskSomeFields(row,fieldName,$event){
debugger;
var params={ids:[row.id]};
params[fieldName]=$event
if(fieldName==='rworkload'||fieldName==='budgetWorkload'){
var total=row.budgetWorkload;
if(row.actWorkload>0 && row.rworkload>0){
total=Math.round(row.actWorkload,2)+Math.round(row.rworkload,2)
}
var rate=Math.round(Math.round(row.actWorkload,2)/total*100)
if(rate>100){
rate=100;
}
params.rate=rate
row.rate=rate
}
editXmTaskSomeFields(params).then(res=>{
var tips = res.data.tips;
if(tips.isOk){
Object.assign(row,params)
//Object.assign(row,params)
this.$emit("edit-xm-task-some-fields",params);
}else{
this.$notify({showClose:true,message:tips.msg,type:tips.isOk?'success':'error'})
}
})
},
onWorkloadSubmit(){
getTask({id:this.xmTask.id}).then(res=>{
var tips = res.data.tips
if(tips.isOk){
if(res.data.data.length>0){
Object.assign(this.xmTask,res.data.data[0])
Object.assign(this.editForm,this.xmTask)
this.$emit('submit',this.editForm)
}
}
})
}
},//end method
mounted() {
this.$nextTick(() => {

9
src/views/xm/core/xmTaskWorkload/XmTaskWorkloadRecordDialog.vue

@ -1,6 +1,7 @@
<template>
<section>
<el-dialog append-to-body width="80%" top="20px" :visible.sync="visible" :title="'任务【'+editForm.name+'】工时登记'"><xm-task-workload-record :visible="visible" :xm-task="editForm"></xm-task-workload-record></el-dialog>
<el-dialog append-to-body width="80%" top="20px" :visible.sync="visible" :title="'任务【'+editForm.name+'】工时登记'">
<xm-task-workload-record :visible="visible" :xm-task="editForm" @edit-xm-task-some-fields="onEditXmTaskSomeFields" @submit="onWorkloadSubmit"></xm-task-workload-record></el-dialog>
</section>
</template>
@ -55,6 +56,12 @@
close(){
this.visible=false;
this.$emit("close");
},
onEditXmTaskSomeFields(data){
this.$emit('edit-xm-task-some-fields',data);
},
onWorkloadSubmit(data){
this.$emit('submit',data)
}
},//end method

16
src/views/xm/core/xmWorkItem/XmSubTaskList.vue

@ -33,7 +33,8 @@
<el-table-column prop="budgetWorkload" label="工时" width="100">
<template slot-scope="scope">
<div class="cell-text">
<span v-if="scope.row.actWorkload>0">{{scope.row.actWorkload}}&nbsp;/&nbsp;{{scope.row.budgetWorkload}}</span>
<span title="实际工时 / 预估工时 " >{{scope.row.actWorkload>0?scope.row.actWorkload:0}}&nbsp;/&nbsp;{{scope.row.budgetWorkload>0?scope.row.budgetWorkload:0}}</span>
</div>
<span class="cell-bar">
<el-button @click="workloadRecord(scope.row)">登记工时</el-button>
@ -78,7 +79,7 @@
<xm-group-dialog ref="xmGroupDialog" :isSelectSingleUser="true" :sel-project="linkProjectId?{id:linkProjectId}:null" :xm-product="parentXmMenu?{id:parentXmMenu.productId}:null" @user-confirm="selectCreateUserConfirm">
</xm-group-dialog>
<xm-task-workload-record-dialog ref="workloadRecordDialog" @submi="afterWorkloadSubmit"></xm-task-workload-record-dialog>
<xm-task-workload-record-dialog ref="workloadRecordDialog" @submi="afterWorkloadSubmit" @edit-xm-task-some-fields="onEditXmTaskSomeFields" @submit="onWorkloadSubmit"></xm-task-workload-record-dialog>
</el-row>
</template>
@ -157,6 +158,7 @@ export default {
})
},
workloadRecord(row){
this.editForm=row
this.$refs.workloadRecordDialog.open(row)
},
initData(){
@ -357,6 +359,16 @@ export default {
},
afterWorkloadSubmit(xmTask){
},
onEditXmTaskSomeFields(data){
debugger;
Object.assign(this.editForm,data)
this.$emit('edit-xm-task-some-fields',data);
},
onWorkloadSubmit(data){
Object.assign(this.editForm,data)
this.$emit('workload-submit',data)
}
}, //end methods
components: {

5
src/views/xm/core/xmWorkItem/XmSubWorkItem.vue

@ -31,7 +31,7 @@
</el-row>
<xm-sub-menu-list ref="menuList" :link-project-id="linkProjectId?linkProjectId:(xmProject?xmProject.id:null)" :parentXmMenu="parentXmMenu" @menus-change="onMenusChange" @add-submit="$emit('add-sub-menu',$event)"></xm-sub-menu-list>
<xm-sub-task-list ref="taskList" :link-project-id="linkProjectId?linkProjectId:(xmProject?xmProject.id:null)" :parentXmMenu="parentXmMenu" @tasks-change="onTasksChange"></xm-sub-task-list>
<xm-sub-task-list ref="taskList" :link-project-id="linkProjectId?linkProjectId:(xmProject?xmProject.id:null)" :parentXmMenu="parentXmMenu" @tasks-change="onTasksChange" @workload-submit="onWorkloadSubmit"></xm-sub-task-list>
<xm-sub-bug-list class="padding-top" ref="bugList" :link-project-id="linkProjectId?linkProjectId:(xmProject?xmProject.id:null)" :parentXmMenu="parentXmMenu" @bugs-change="onBugsChange"></xm-sub-bug-list>
</section>
@ -120,6 +120,9 @@ export default {
},
onTasksChange(tasks){
this.xmTasks=tasks
},
onWorkloadSubmit(xmTask){
this.$emit('workload-submit',xmTask)
}
/**end 自定义函数请在上面加**/
}, //end methods

Loading…
Cancel
Save