Browse Source

优化编辑需求

master
陈裕财 4 years ago
parent
commit
eb32bd3802
  1. 47
      src/views/xm/core/xmMenu/XmMenuEdit.vue
  2. 19
      src/views/xm/core/xmMenu/XmMenuMng.vue
  3. 1
      src/views/xm/core/xmTask/XmTaskMng.vue

47
src/views/xm/core/xmMenu/XmMenuEdit.vue

@ -65,7 +65,7 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="截止时间" prop="startTime" > <el-form-item label="截止时间" prop="startTime" >
<el-date-picker type="daterange" style="width:220px;" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" v-model="dateRanger" @change="editXmMenuSomeFields(editForm,'startTime',dateRanger)"></el-date-picker>
<date-range type="daterange" :auto-default="false" style="width:220px;" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" v-model="editForm" start-key="startTime" end-key="endTime" @change="editXmMenuSomeFields(editForm,'startTime',editForm)"></date-range>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -250,13 +250,10 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
if(this.reload==true){ if(this.reload==true){
this.searchXmMenus(); this.searchXmMenus();
}else{ }else{
this.editForm = {...this.xmMenu};
if(this.editForm.startTime && this.editForm.endTime){
this.dateRanger=[]
this.dateRanger.push(this.editForm.startTime)
this.dateRanger.push(this.editForm.endTime)
}
this.editForm = {...this.xmMenu};
} }
this.editFormBak=Object.assign({},this.editForm)
} }
}, },
'editForm.actWorkload':function(val,oldVal){ 'editForm.actWorkload':function(val,oldVal){
@ -305,7 +302,7 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
// //
editForm: { editForm: {
menuId:'',menuName:'',pmenuId:'',productId:'',remark:'',status:'',online:'',demandUrl:'',codeUrl:'',designUrl:'',docUrl:'',helpUrl:'',operDocUrl:'',seqNo:'1',mmUserid:'',mmUsername:'',ntype:'0',childrenCnt:0,sinceVersion:'', menuId:'',menuName:'',pmenuId:'',productId:'',remark:'',status:'',online:'',demandUrl:'',codeUrl:'',designUrl:'',docUrl:'',helpUrl:'',operDocUrl:'',seqNo:'1',mmUserid:'',mmUsername:'',ntype:'0',childrenCnt:0,sinceVersion:'',
proposerId:'',proposerName:'',dlvl:'',dtype:'',priority:'',source:'',calcType:'1',actWorkload:0,actAt:0,finishRate:0,ctime:'',dclass:'1'
proposerId:'',proposerName:'',dlvl:'',dtype:'',priority:'',source:'',calcType:'1',actWorkload:0,actAt:0,finishRate:0,ctime:'',dclass:'1',startTime:'',endTime:''
}, },
proposerSelectVisible:false, proposerSelectVisible:false,
mmUserSelectVisible:false, mmUserSelectVisible:false,
@ -324,8 +321,7 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
{id:"9", name:"已删除"}, {id:"9", name:"已删除"},
] ]
}, },
tagSelectVisible:false,
dateRanger:[],
tagSelectVisible:false,
subWorkItemNum:-1, subWorkItemNum:-1,
activateTabPaneName:'1' activateTabPaneName:'1'
/**begin 在下面加自定义属性,记得补上面的一个逗号**/ /**begin 在下面加自定义属性,记得补上面的一个逗号**/
@ -348,11 +344,7 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
this.$confirm('确认提交吗?', '提示', {}).then(() => { this.$confirm('确认提交吗?', '提示', {}).then(() => {
this.load.edit=true this.load.edit=true
let params = Object.assign({}, this.editForm);
if(this.dateRanger.length>1){
params.startTime=this.dateRanger[0]
params.endTime=this.dateRanger[1]
}
let params = Object.assign({}, this.editForm);
editXmMenu(params).then((res) => { editXmMenu(params).then((res) => {
this.load.edit=false this.load.edit=false
var tips=res.data.tips; var tips=res.data.tips;
@ -440,8 +432,8 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
params.mmUserid=$event[0].userid params.mmUserid=$event[0].userid
params.mmUsername=$event[0].username params.mmUsername=$event[0].username
}else if(fieldName==='startTime'){ }else if(fieldName==='startTime'){
params.startTime=$event[0]
params.endTime=$event[1]
params.startTime=$event.startTime
params.endTime=$event.endTime
}else{ }else{
if(typeof $event ==='string'){ if(typeof $event ==='string'){
params[fieldName]=$event params[fieldName]=$event
@ -450,15 +442,17 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
} }
} }
editXmMenuSomeFields(params).then(res=>{
editXmMenuSomeFields(params).then(res=>{
var tips = res.data.tips; var tips = res.data.tips;
if(tips.isOk){ if(tips.isOk){
Object.assign(row,params) Object.assign(row,params)
Object.assign(this.editFormBak,row)
this.$emit("edit-fields",params); this.$emit("edit-fields",params);
if(fieldName==='remark'||fieldName==='link'){ if(fieldName==='remark'||fieldName==='link'){
this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'}) this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'})
} }
}else{
}else{
Object.assign(this.editForm,this.editFormBak)
this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'}) this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'})
} }
}) })
@ -471,12 +465,8 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
let callback= (res)=>{ let callback= (res)=>{
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){ if(tips.isOk){
this.editForm=res.data.data[0]
if(this.editForm.startTime && this.editForm.endTime){
this.dateRanger=[]
this.dateRanger.push(this.editForm.startTime)
this.dateRanger.push(this.editForm.endTime)
}
this.editForm=res.data.data[0]
this.editFormBak=Object.assign({},this.editForm)
}else{ }else{
this.$notify({position:'bottom-left',showClose:true,message: tips.msg, type: 'error' }); this.$notify({position:'bottom-left',showClose:true,message: tips.msg, type: 'error' });
} }
@ -502,11 +492,8 @@ import XmMenuExchangeMng from '../xmMenuExchange/XmMenuExchangeMng.vue';
initSimpleDicts('all',['demandSource','demandLvl','demandType','priority','menuStatus'] ).then(res=>{ initSimpleDicts('all',['demandSource','demandLvl','demandType','priority','menuStatus'] ).then(res=>{
this.dicts=res.data.data; this.dicts=res.data.data;
}) })
this.editForm=Object.assign(this.editForm, this.xmMenu);
if(this.editForm.startTime && this.editForm.endTime){
this.dateRanger.push(this.editForm.startTime)
this.dateRanger.push(this.editForm.endTime)
}
this.editForm=Object.assign(this.editForm, this.xmMenu);
this.editFormBak=Object.assign({},this.editForm)
if(this.reload==true){ if(this.reload==true){
this.searchXmMenus(); this.searchXmMenus();
} }

19
src/views/xm/core/xmMenu/XmMenuMng.vue

@ -218,7 +218,7 @@
<el-button style="display:block;" :type="item.className" plain round v-for="(item,index) in formatterMenuStatusDicts(scope.row.status)" :key="index">{{item.name}}</el-button> <el-button style="display:block;" :type="item.className" plain round v-for="(item,index) in formatterMenuStatusDicts(scope.row.status)" :key="index">{{item.name}}</el-button>
</div> </div>
<span class="cell-bar"> <span class="cell-bar">
<el-select v-model="scope.row.status" placeholder="需求状态" style="display:block;" @change="editXmMenuSomeFields(scope.row,'status',$event)">
<el-select @visible-change="selectVisible(scope.row,$event)" v-model="scope.row.status" placeholder="需求状态" style="display:block;" @change="editXmMenuSomeFields(scope.row,'status',$event)">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.menuStatus" :key="index"></el-option> <el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.menuStatus" :key="index"></el-option>
</el-select> </el-select>
</span> </span>
@ -230,7 +230,7 @@
<el-button style="display:block;" :type="item.className" plain round v-for="(item,index) in formatterPriorityDicts(scope.row.priority)" :key="index">{{item.name}}</el-button> <el-button style="display:block;" :type="item.className" plain round v-for="(item,index) in formatterPriorityDicts(scope.row.priority)" :key="index">{{item.name}}</el-button>
</div> </div>
<span class="cell-bar"> <span class="cell-bar">
<el-select v-model="scope.row.priority" placeholder="优先级" style="display:block;" @change="editXmMenuSomeFields(scope.row,'priority',$event)">
<el-select @visible-change="selectVisible(scope.row,$event)" v-model="scope.row.priority" placeholder="优先级" style="display:block;" @change="editXmMenuSomeFields(scope.row,'priority',$event)">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.priority" :key="index"> </el-option> <el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.priority" :key="index"> </el-option>
</el-select> </el-select>
</span> </span>
@ -242,7 +242,7 @@
{{formaterByDicts(scope.row,'dtype',scope.row.dtype)}} {{formaterByDicts(scope.row,'dtype',scope.row.dtype)}}
</div> </div>
<span class="cell-bar"> <span class="cell-bar">
<el-select v-model="scope.row.dtype" placeholder="类型" style="display:block;" @change="editXmMenuSomeFields(scope.row,'dtype',$event)">
<el-select @visible-change="selectVisible(scope.row,$event)" v-model="scope.row.dtype" placeholder="类型" style="display:block;" @change="editXmMenuSomeFields(scope.row,'dtype',$event)">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandType" :key="index"></el-option> <el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandType" :key="index"></el-option>
</el-select> </el-select>
</span> </span>
@ -254,7 +254,7 @@
{{formaterByDicts(scope.row,'source',scope.row.source)}} {{formaterByDicts(scope.row,'source',scope.row.source)}}
</div> </div>
<span class="cell-bar"> <span class="cell-bar">
<el-select v-model="scope.row.source" placeholder="来源" style="display:block;" @change="editXmMenuSomeFields(scope.row,'source',$event)">
<el-select @visible-change="selectVisible(scope.row,$event)" v-model="scope.row.source" placeholder="来源" style="display:block;" @change="editXmMenuSomeFields(scope.row,'source',$event)">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandSource" :key="index"></el-option> <el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandSource" :key="index"></el-option>
</el-select> </el-select>
</span> </span>
@ -266,7 +266,7 @@
{{formaterByDicts(scope.row,'dlvl',scope.row.dlvl)}} {{formaterByDicts(scope.row,'dlvl',scope.row.dlvl)}}
</div> </div>
<span class="cell-bar"> <span class="cell-bar">
<el-select v-model="scope.row.dlvl" placeholder="层次" style="display:block;" @change="editXmMenuSomeFields(scope.row,'dlvl',$event)">
<el-select @visible-change="selectVisible(scope.row,$event)" v-model="scope.row.dlvl" placeholder="层次" style="display:block;" @change="editXmMenuSomeFields(scope.row,'dlvl',$event)">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandLvl" :key="index"></el-option> <el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.demandLvl" :key="index"></el-option>
</el-select> </el-select>
</span> </span>
@ -543,6 +543,11 @@
} }
},//end data },//end data
methods: { methods: {
selectVisible(row,visible){
if(visible){
this.rowClick(row)
}
},
handleSizeChange(pageSize) { handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize; this.pageInfo.pageSize=pageSize;
this.getXmMenus(); this.getXmMenus();
@ -847,6 +852,8 @@
}, },
rowClick: function(row, event, column){ rowClick: function(row, event, column){
this.editForm=row
this.editFormBak=Object.assign({},row)
this.$emit('row-click',row, event, column);// @row-click="rowClick" this.$emit('row-click',row, event, column);// @row-click="rowClick"
}, },
handleExport() { handleExport() {
@ -1229,7 +1236,9 @@
}else{ }else{
Object.assign(row,params) Object.assign(row,params)
} }
Object.assign(this.editFormBak,row)
}else{ }else{
Object.assign(this.editForm,this.editFormBak)
this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'}) this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'})
} }
}) })

1
src/views/xm/core/xmTask/XmTaskMng.vue

@ -2389,6 +2389,7 @@ export default {
}else{ }else{
Object.assign(row,params) Object.assign(row,params)
} }
Object.assign(this.editFormBak,this.editForm)
}else{ }else{
Object.assign(this.editForm,this.editFormBak) Object.assign(this.editForm,this.editFormBak)
this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'}) this.$notify({position:'bottom-left',showClose:true,message:tips.msg,type:tips.isOk?'success':'error'})

Loading…
Cancel
Save