Browse Source

优化

master
陈裕财 3 years ago
parent
commit
756c1fc507
  1. 28
      src/components/DateField/index.vue
  2. 251
      src/components/DateRangeField/index.vue
  3. 2
      src/main.js
  4. 4
      src/views/xm/core/components/XmIterationSelect.vue
  5. 193
      src/views/xm/core/xmIteration/XmIterationAdd.vue
  6. 4
      src/views/xm/core/xmIteration/XmIterationBox.vue
  7. 76
      src/views/xm/core/xmIteration/XmIterationEdit.vue
  8. 4
      src/views/xm/core/xmIteration/XmIterationForLinkComplex.vue
  9. 2
      src/views/xm/core/xmIteration/XmIterationInfo.vue
  10. 4
      src/views/xm/core/xmIteration/XmIterationMng.vue
  11. 6
      src/views/xm/core/xmProduct/XmProductEdit.vue
  12. 6
      src/views/xm/core/xmProject/XmProjectEdit.vue

28
src/components/DateField/index.vue

@ -96,38 +96,22 @@
if(!item){ if(!item){
return "" return ""
}else{ }else{
return item.icon?"":item.name
return item
} }
}, },
getMyColor(item){ getMyColor(item){
if(item){
if(this.getColor){
return this.getColor(item)
}
return util.getColor(item)
if(this.getColor){
return this.getColor(item)
}else{ }else{
if(this.getColor){
return this.getColor(this.myVal)
}else{
return util.getColor(this.myVal)
}
}
return util.getColor(item)
}
}, },
getMyIcon(item){ getMyIcon(item){
if(item){
if(this.getIcon){
if(this.getIcon){
return this.getIcon(item) return this.getIcon(item)
}
return "el-icon-date";
}else{
if(this.getIcon){
return this.getIcon(this.myVal)
}else{ }else{
return "el-icon-date" return "el-icon-date"
} }
}
}, },
initData(){ initData(){
this.myVal=this.value this.myVal=this.value

251
src/components/DateRangeField/index.vue

@ -0,0 +1,251 @@
<template>
<div class="field-box">
<el-avatar class="avater" :icon="getMyIcon(dateRange)" :style="{backgroundColor:getMyColor(dateRange)}">{{getMyAvaterInfo(dateRange)}}</el-avatar>
<div class="field-info">
<slot name="field-info" :value="dateRange">
<span class="field-value">{{formatDateRange(dateRange) }} </span>
<slot name="label">
<span class="field-label">{{label}}</span>
</slot>
</slot>
</div>
<div v-if="disabled!==true" class="my-select" name="select" :value="dateRange">
<el-date-picker :type="type" :style="styleObj" v-model="dateRange" :value-format="valueFormat" :format="format"
unlink-panels
:range-separator="rangeSepaSrator"
:start-placeholder="startPlaceholder"
:end-placeholder="endPlaceholder"
:default-range="[-30,0]"
@change="onDateRangeChange"
:picker-options="pickerOptions"
></el-date-picker>
</div>
</div>
</template>
<script>
import util from '@/common/js/util'
export default {
name: 'date-range',
components: { },
computed: {
},
data(){
return {
dateRange:[],
}
},
watch:{
dateRange(){
},
value:{
deep:true,
handler(){
this.initData();
}
}
},
props: {
value: {
},
label:{
type:String,
default:'起止时间',
},
type: {
type: String,
default: 'daterange'
},
startKey: {
type: String,
default: 'startTime'
},
styleObj:{
typeof:Object,
default:function(){return { maxWidth:'100%' }}
},
endKey: {
type: String,
default: 'endTime'
},
valueFormat: {
type: String,
default: 'yyyy-MM-dd HH:mm:ss'
},
format: {
type: String,
default: 'yyyy-MM-dd'
},
startPlaceholder: {
type: String,
default: '开始日期'
},
endPlaceholder: {
type: String,
default: '结束日期'
},
rangeSepaSrator:{
type: String,
default: '~'
},
pickerOptions:{
typeof:Object,
default:function(){return util.getPickerOptions('datarange')}
},
autoDefault:{
type:Boolean,
default:true,
},
defaultRange:{
type:Array,
default:function(){
return [-15,15]
}
}
},
methods: {
formatDateRange(dateRange){
if(!dateRange||dateRange.length==0){
return ""
}else{
if(dateRange.length==1){
return util.formatDate(new Date(dateRange[0]),this.format)
}else if(dateRange.length==2){
return util.formatDate(new Date(dateRange[0]),this.format)+this.rangeSepaSrator+util.formatDate(new Date(dateRange[1]),this.format)
}
}
},
initData(){
this.dateRange=[];
if(this.value instanceof Array){
this.dateRange=this.value
}else if(this.value instanceof Object){
if(this.value && this.value[this.startKey] && this.value[this.endKey]){
this.dateRange=[this.value[this.startKey],this.value[this.endKey]]
}
}
if( !this.dateRange || this.dateRange.length===0){
if(this.autoDefault===true || (this.autoDefault!==false && this.defaultRange && this.defaultRange.length==2)){
var now=new Date();
var start=new Date();
var end=new Date();
start.setTime(now.getTime() + 3600 * 1000 * 24 * this.defaultRange[0]);
end.setTime(now.getTime() + 3600 * 1000 * 24 * this.defaultRange[1]);
this.dateRange.push(util.formatDate(start,this.valueFormat))
this.dateRange.push(util.formatDate(end,this.valueFormat))
this.onDateRangeChange(this.dateRange);
}
}
},
onDateRangeChange(dates){
if(this.value && this.value instanceof Object){
if(dates && dates.length===2){
this.value[this.startKey]=dates[0]
this.value[this.endKey]=dates[1]
}else if(dates && dates.length===1){
this.value[this.startKey]=dates[0]
this.value[this.endKey]=null
}else if(dates && dates.length===0){
this.value[this.startKey]=null
this.value[this.endKey]=null
}
this.$emit('input',this.value)
}else if(this.value instanceof Array){
this.$emit('input',dates)
}
this.$emit('change',dates)
},
getMyAvaterInfo(item){
if(!item||item.length==0){
return ""
}else{
return item[0]
}
},
getMyColor(item){
if(this.getColor){
return this.getColor(item)
}
if(item && item.length>0){
return util.getColor(item[0])
}else{
return util.getColor("")
}
},
getMyIcon(item){
if(this.getIcon){
return this.getIcon(item)
}else{
return "el-icon-date";
}
},
},
mounted(){
this.initData();
}
}
</script>
<style lang="scss" scoped>
.field-box {
display: flex;
margin-right:5px;
align-items: center;
cursor: pointer;
.avater {
background-color:#FF9F73;
}
.field-info {
margin-left: 10px;
display: flex;
flex-direction: column;
.field-value {
font-size: 16px;
}
.field-label{
font-size: 14px;
color: #C0C4CC;
}
}
.my-select{
margin-left: 5px;
margin-right:5px;
display: none;
}
.btn{
margin-top: 0px;
visibility:hidden;
}
}
.field-box:hover .btn{
visibility: visible !important;
}
.field-box:hover .my-select{
margin-left: 5px;
display: inline;
}
.field-box:hover .field-info{
display: none;
}
</style>

2
src/main.js

@ -29,6 +29,7 @@ import DictTag from '@/components/DictTag/index'
import DictField from '@/components/DictField/index' import DictField from '@/components/DictField/index'
import MyInput from '@/components/MDinput/index' import MyInput from '@/components/MDinput/index'
import DateField from '@/components/DateField/index' import DateField from '@/components/DateField/index'
import DateRangeField from '@/components/DateRangeField/index'
import UserField from '@/components/UserField/index' import UserField from '@/components/UserField/index'
Vue.prototype.$echarts = echarts Vue.prototype.$echarts = echarts
@ -39,6 +40,7 @@ Vue.component('dict-tag',DictTag)
Vue.component('dict-field',DictField) Vue.component('dict-field',DictField)
Vue.component('my-input',MyInput) Vue.component('my-input',MyInput)
Vue.component('date-field',DateField) Vue.component('date-field',DateField)
Vue.component('date-range-field',DateRangeField)
Vue.component('user-field',UserField) Vue.component('user-field',UserField)
Vue.use(Element, { Vue.use(Element, {
size: 'small', // set element-ui default size size: 'small', // set element-ui default size

4
src/views/xm/core/components/XmIterationSelect.vue

@ -116,7 +116,7 @@
<el-dialog append-to-body :visible.sync="addIterationVisible" width="70%"> <el-dialog append-to-body :visible.sync="addIterationVisible" width="70%">
<xm-iteration-add
<xm-iteration-add op-type="add"
:xm-product="productId?{ id: productId, name: '' }:null" :xm-product="productId?{ id: productId, name: '' }:null"
:sel-project="linkProjectId?{id:linkProjectId,name:''}:null" :sel-project="linkProjectId?{id:linkProjectId,name:''}:null"
@cancel="addIterationVisible = false" @cancel="addIterationVisible = false"
@ -136,7 +136,7 @@
const map=new Map(); const map=new Map();
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import XmIterationAdd from "../xmIteration/XmIterationAdd.vue";
import XmIterationAdd from "../xmIteration/XmIterationEdit.vue";
export default { export default {
computed: { computed: {

193
src/views/xm/core/xmIteration/XmIterationAdd.vue

@ -1,193 +0,0 @@
<template>
<section class="padding border">
<el-row>
<!--新增界面 XmIteration 迭代定义-->
<el-form :model="addForm" label-width="120px" :rules="addFormRules" ref="addForm">
<el-form-item label="归属产品" prop="productId">
<xm-product-select v-if="!xmProduct||!xmProduct.id" ref="xmProductSelect" :auto-select="true" :link-project-id="selProject?selProject.id:null" @row-click="onProductRowClick" @clear="onProductClearSelect" @close="productSelectVisible=false"></xm-product-select>
<span v-else>{{addForm.productName?addForm.pproductName:addForm.productId}}</span>
</el-form-item>
<el-form-item label="上线时间" prop="onlineTime">
<el-date-picker type="date" placeholder="选择日期" v-model="addForm.onlineTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" @change="editSomeFields(editForm,'onlineTime',$event)"></el-date-picker>
</el-form-item>
<el-form-item label="起止时间" prop="startTime">
<date-range :auto-default="true" start-key="startTime" end-key="endTime" v-model="addForm" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" ></date-range>
</el-form-item>
<el-form-item label="迭代名称" prop="iterationName">
<el-input v-model="addForm.iterationName" placeholder="迭代名称" minlength="10"></el-input>
<font color="blue">格式如下 上线日期+主题+V版本号 例如 2021.6.15购书商城V1.0.9 &nbsp;&nbsp;留空选日期后自动填写迭代名称</font>
</el-form-item>
<el-form-item label="负责人姓名" prop="adminUsername">
{{addForm.adminUsername}} <el-button @click="userSelectVisible=true">选择负责人</el-button>
</el-form-item>
<el-form-item style="float:right;">
<el-button @click.native="handleCancel">取消</el-button>
<el-button v-loading="load.add" type="primary" @click.native="addSubmit" :disabled="load.add==true">提交</el-button>
</el-form-item>
</el-form>
</el-row>
<el-drawer append-to-body title="选择员工" :visible.sync="userSelectVisible" size="60%">
<users-select :select-userids="[]" @confirm="onUserSelected" ref="usersSelect"></users-select>
</el-drawer>
</section>
</template>
<script>
import util from '@/common/js/util';//
import { initSimpleDicts } from '@/api/mdp/meta/item';//
import { addXmIteration } from '@/api/xm/core/xmIteration';
import { mapGetters } from 'vuex'
import UsersSelect from "@/views/mdp/sys/user/UsersSelect";
import XmProductSelect from '@/views/xm/core/components/XmProductSelect.vue'
export default {
computed: {
...mapGetters([
'userInfo','roles'
])
},
props:['xmIteration','visible', 'selProject','xmProduct'],
watch: {
'xmIteration':function( xmIteration ) {
this.addForm = xmIteration;
},
'visible':function(visible) {
if(visible==true){
this.addForm.cuserid=this.userInfo.userid
this.addForm.cusername=this.userInfo.username
this.addForm.adminUserid=this.userInfo.userid
this.addForm.adminUsername=this.userInfo.username;
if(this.xmProduct && this.xmProduct.id){
this.addForm.productId=this.xmProduct.id
this.addForm.productName=this.xmProduct.productName;
}
}
},
'addForm.onlineTime':function(val){
if(!val){
return;
}
var date=val.substr(0,10)
date=date.replaceAll('-','');
this.addForm.iterationName=date+(this.addForm.productName?this.addForm.productName:'-请修改-')+'V1.0.0'
},
'addForm.productName':function(val){
var date=this.addForm.onlineTime
if(!date){
return;
}
date=date.substr(0,10)
date=date.replaceAll('-','');
this.addForm.iterationName=date+(this.addForm.productName?this.addForm.productName:'-请修改-')+'V1.0.0'
}
},
data() {
return {
dicts:{},// params=[{categoryId:'0001',itemCode:'sex'}] {'sex':[{optionValue:'1',optionName:'',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'',seqOrder:'2',fp:'',isDefault:'0'}]}
load:{ list: false, edit: false, del: false, add: false },//...
addFormRules: {
iterationName: [
{ required: true, message: '迭代名称不能为空', trigger: 'change' },
{ min:10,max:250, message: '名称长度在10-250个字符', trigger: 'change' }
],
productId: [
{ required: true, message: '产品编号不能为空', trigger: 'change' }
],
onlineTime: [
{ required: true, message: '上线时间不能为空', trigger: 'change' }
],
startTime:[
{ required: true, message: '开始时间不能为空', trigger: 'change' }
],
},
// ,
addForm: {
id:'',branchId:'',iterationName:'',startTime:'',endTime:'',onlineTime:'',pid:'',adminUserid:'',adminUsername:'',ctime:'',budgetCost:'',budgetWorkload:'',seqNo:'',istatus:'',cuserid:'',cusername:'',remark:'',iphase:'',isTpl:'',productId:''
},
/**begin 在下面加自定义属性,记得补上面的一个逗号**/
userSelectVisible:false,
productSelectVisible:false,
/**end 在上面加自定义属性**/
}//end return
},//end data
methods: {
// @cancel="addFormVisible=false"
handleCancel:function(){
this.$emit('cancel');
},
//XmIteration @submit="afterAddSubmit"
addSubmit: function () {
this.$refs.addForm.validate((valid) => {
if (valid) {
var params={...this.addForm}
this.$confirm('确认提交迭代吗?', '提示', {}).then(() => {
this.load.add=true
addXmIteration(params).then((res) => {
this.load.add=false
var tips=res.data.tips;
if(tips.isOk){
this.$emit('submit',res.data.data);// @submit="afterAddSubmit"
}
this.$notify({position:'bottom-left',showClose:true,message: tips.msg, type: tips.isOk?'success':'error' });
}).catch( err => this.load.add=false);
});
}else{
this.$notify({position:'bottom-left',showClose:true,message: "表单验证不通过", type: 'error' });
}
});
},
/**begin 在下面加自定义方法,记得补上面的一个逗号**/
onUserSelected: function(users) {
if(users.length>1){
this.$notify.error("只能选一个人");
return;
}
var user=users[0]
this.addForm.adminUserid=user.userid
this.addForm.adminUsername=user.username
this.userSelectVisible = false;
},
onProductRowClick(product){
this.addForm.productId=product.id
this.addForm.productName=product.productName
this.productSelectVisible=false;
},
onProductClearSelect(){
this.addForm.productId=''
this.addForm.productName=''
this.productSelectVisible=false;
}
/**end 在上面加自定义方法**/
},//end method
components: {
// 'xm-iteration-edit':XmIterationEdit
UsersSelect,XmProductSelect,
},
mounted() {
this.addForm=Object.assign(this.addForm, this.xmIteration);
this.addForm.cuserid=this.userInfo.userid
this.addForm.cusername=this.userInfo.username
this.addForm.adminUserid=this.userInfo.userid
this.addForm.adminUsername=this.userInfo.username;
if(this.xmProduct && this.xmProduct.id){
this.addForm.productId=this.xmProduct.id
this.addForm.productName=this.xmProduct.productName;
}
/**在下面写其它函数***/
}//end mounted
}
</script>
<style scoped>
</style>

4
src/views/xm/core/xmIteration/XmIterationBox.vue

@ -92,7 +92,7 @@
<!--新增 XmIteration 迭代定义界面--> <!--新增 XmIteration 迭代定义界面-->
<el-drawer title="新增迭代定义" :visible.sync="addFormVisible" size="50%" append-to-body :close-on-click-modal="false"> <el-drawer title="新增迭代定义" :visible.sync="addFormVisible" size="50%" append-to-body :close-on-click-modal="false">
<xm-iteration-add :xm-iteration="addForm" :parent-iteration="parentIteration" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></xm-iteration-add>
<xm-iteration-add op-type="add" :xm-iteration="addForm" :parent-iteration="parentIteration" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></xm-iteration-add>
</el-drawer> </el-drawer>
<!--新增 XmIteration 迭代定义界面--> <!--新增 XmIteration 迭代定义界面-->
@ -115,7 +115,7 @@
import { loadTasksToXmIterationState } from '@/api/xm/core/xmIterationState'; import { loadTasksToXmIterationState } from '@/api/xm/core/xmIterationState';
import { addXmIterationLink,delXmIterationLink } from '@/api/xm/core/xmIterationLink'; import { addXmIterationLink,delXmIterationLink } from '@/api/xm/core/xmIterationLink';
import XmIterationAdd from './XmIterationAdd';//
import XmIterationAdd from './XmIterationEdit';//
import XmIterationEdit from './XmIterationEdit';// import XmIterationEdit from './XmIterationEdit';//
import XmIterationStateMng from '../xmIterationState/XmIterationStateMng';// import XmIterationStateMng from '../xmIterationState/XmIterationStateMng';//
import XmGantt from '../components/xm-gantt'; import XmGantt from '../components/xm-gantt';

76
src/views/xm/core/xmIteration/XmIterationEdit.vue

@ -1,39 +1,44 @@
<template> <template>
<section class="padding border">
<el-row style="padding-left:70px;">
<font color="blue" style="text-align:center;">注意请尽量在评审会阶段把需求明确.<br/>进入计划会后不允许再添加需求进入迭代原则上需求评审后需求只出不进</font>
</el-row>
<section class="padding border">
<el-row> <el-row>
<!--新增界面 XmIteration 迭代定义--> <!--新增界面 XmIteration 迭代定义-->
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editForm">
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editForm" label-position="left">
<el-form-item label="迭代名称" prop="iterationName"> <el-form-item label="迭代名称" prop="iterationName">
<el-input v-model="editForm.iterationName" placeholder="迭代名称" @change="editSomeFields(editForm,'iterationName',$event)"></el-input>
<el-input v-model="editForm.iterationName" placeholder="迭代名称 选择上线日期后会自动生成名字" @change="editSomeFields(editForm,'iterationName',$event)"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="序号" prop="seqNo">
<el-form-item label="序号" prop="seqNo" v-if="opType!=='add'">
<el-input v-model="editForm.seqNo" placeholder="如1.0,2.0,1.1.1等" @change="editSomeFields(editForm,'seqNo',$event)"></el-input> <el-input v-model="editForm.seqNo" placeholder="如1.0,2.0,1.1.1等" @change="editSomeFields(editForm,'seqNo',$event)"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="istatus">
<el-select v-model="editForm.istatus" @change="editSomeFields(editForm,'istatus',$event)">
<el-option v-for="(item,index) in dicts['iterationStatus']" :key="index" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
<el-form-item label="起止时间" prop="startTime">
<date-range :auto-default="false" start-key="startTime" end-key="endTime" v-model="editForm" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" @change="editSomeFields(editForm,'startTime',$event)"></date-range>
</el-form-item>
<el-form-item label="上线时间" prop="onlineTime">
<el-date-picker type="date" placeholder="选择日期" v-model="editForm.onlineTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" @change="editSomeFields(editForm,'onlineTime',$event)"></el-date-picker>
</el-form-item>
<el-form-item label="负责人姓名" prop="adminUsername">
{{editForm.adminUsername}} <el-button type="text" @click="userSelectVisible=true">选择负责人</el-button>
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item prop="onlineTime" label-width="0px">
<date-field label="上线时间" type="date" placeholder="选择日期" v-model="editForm.onlineTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" @change="editSomeFields(editForm,'onlineTime',$event)"></date-field>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="startTime" label-width="0px">
<date-range-field label="起止时间" :auto-default="false" start-key="startTime" end-key="endTime" v-model="editForm" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" @change="editSomeFields(editForm,'startTime',$event)"></date-range-field>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item prop="adminUserid" label-width="0px">
<xm-user-field label="负责人姓名" v-model="editForm" userid-key="adminUserid" username-key="adminUsername" @change="editSomeFields(editForm,'adminUserid',$event)"></xm-user-field>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="istatus" label-width="0px">
<dict-field label="状态" :dict="dicts['iterationStatus']" v-model="editForm.istatus" @change="editSomeFields(editForm,'istatus',$event)"></dict-field>
</el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
</el-row>
<el-drawer append-to-body title="选择员工" :visible.sync="userSelectVisible" size="60%">
<users-select v-if="userSelectVisible" :select-userids="[]" @confirm="onUserSelected" ref="usersSelect"></users-select>
</el-drawer>
</el-row>
</section> </section>
</template> </template>
@ -41,8 +46,8 @@
import util from '@/common/js/util';// import util from '@/common/js/util';//
import { initDicts,editXmIteration,editSomeFieldsXmIteration } from '@/api/xm/core/xmIteration'; import { initDicts,editXmIteration,editSomeFieldsXmIteration } from '@/api/xm/core/xmIteration';
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import UsersSelect from "@/views/mdp/sys/user/UsersSelect";
import XmUserField from "@/views/xm/core/components/XmUserField";
export default { export default {
computed: { computed: {
@ -63,7 +68,7 @@
} }
} }
}, },
props:['xmIteration','visible'],
props:['xmIteration','visible','opType'],
watch: { watch: {
'xmIteration':{ 'xmIteration':{
handler(){ handler(){
@ -121,11 +126,14 @@
}, },
editSomeFields(row,fieldName,$event){ editSomeFields(row,fieldName,$event){
if(this.opType==='add'){
return;
}
let params={}; let params={};
params['ids']=[row].map(i=>i.id) params['ids']=[row].map(i=>i.id)
if(fieldName=='adminUserid'){ if(fieldName=='adminUserid'){
params['adminUserid']=$event.userid
params['adminUsername']=$event.username
params['adminUserid']=$event[0].userid
params['adminUsername']=$event[0].username
}else if(fieldName=='startTime'){ }else if(fieldName=='startTime'){
params['startTime']=row.startTime params['startTime']=row.startTime
params['endTime']=row.endTime params['endTime']=row.endTime
@ -151,7 +159,7 @@
},//end method },//end method
components: { components: {
// 'xm-iteration-edit':XmIterationEdit // 'xm-iteration-edit':XmIterationEdit
UsersSelect
XmUserField
}, },
mounted() { mounted() {
this.$nextTick(()=>{ this.$nextTick(()=>{

4
src/views/xm/core/xmIteration/XmIterationForLinkComplex.vue

@ -325,7 +325,7 @@
</el-row> </el-row>
<el-dialog width="60%" top="20px" :visible.sync="iterationAddVisible" append-to-body> <el-dialog width="60%" top="20px" :visible.sync="iterationAddVisible" append-to-body>
<xm-iteration-add :xm-product="xmProduct" :sel-project="selProject" :visible="iterationAddVisible" @cancel="iterationAddVisible=false" @submit="afterIterationAddSubmit"></xm-iteration-add>
<xm-iteration-add op-type="add" :xm-product="xmProduct" :sel-project="selProject" :visible="iterationAddVisible" @cancel="iterationAddVisible=false" @submit="afterIterationAddSubmit"></xm-iteration-add>
</el-dialog> </el-dialog>
</section> </section>
</template> </template>
@ -347,7 +347,7 @@
import XmIterationOverview from "./XmIterationOverview"; import XmIterationOverview from "./XmIterationOverview";
import XmIterationEdit from './XmIterationEdit.vue'; import XmIterationEdit from './XmIterationEdit.vue';
import XmIterationAdd from './XmIterationAdd';//
import XmIterationAdd from './XmIterationEdit';//
import XmReport from "@/views/xm/rpt/reportIndex"; import XmReport from "@/views/xm/rpt/reportIndex";
import XmIterationMenuMng from '../xmIterationMenu/XmIterationMenuMng.vue'; import XmIterationMenuMng from '../xmIterationMenu/XmIterationMenuMng.vue';

2
src/views/xm/core/xmIteration/XmIterationInfo.vue

@ -388,7 +388,7 @@
</el-row> </el-row>
<el-dialog width="60%" top="20px" :visible.sync="iterationAddVisible" append-to-body> <el-dialog width="60%" top="20px" :visible.sync="iterationAddVisible" append-to-body>
<xm-iteration-add :xm-product="xmProduct" :sel-project="selProject" :visible="iterationAddVisible" @cancel="iterationAddVisible=false" @submit="afterIterationAddSubmit"></xm-iteration-add>
<xm-iteration-add op-type="add" :xm-product="xmProduct" :sel-project="selProject" :visible="iterationAddVisible" @cancel="iterationAddVisible=false" @submit="afterIterationAddSubmit"></xm-iteration-add>
</el-dialog> </el-dialog>
</section> </section>
</template> </template>

4
src/views/xm/core/xmIteration/XmIterationMng.vue

@ -253,7 +253,7 @@
append-to-body append-to-body
:close-on-click-modal="false" :close-on-click-modal="false"
> >
<xm-iteration-add
<xm-iteration-add op-type="add"
:xm-product="xmProduct" :xm-product="xmProduct"
:sel-project="selProject" :sel-project="selProject"
:xm-iteration="addForm" :xm-iteration="addForm"
@ -312,7 +312,7 @@ import {
delXmIterationLink, delXmIterationLink,
} from "@/api/xm/core/xmIterationLink"; } from "@/api/xm/core/xmIterationLink";
import XmIterationAdd from "./XmIterationAdd"; //
import XmIterationAdd from "./XmIterationEdit"; //
import XmIterationEdit from "./XmIterationEdit"; // import XmIterationEdit from "./XmIterationEdit"; //
import XmIterationStateMng from "../xmIterationState/XmIterationStateMng"; // import XmIterationStateMng from "../xmIterationState/XmIterationStateMng"; //
import XmGantt from "../components/xm-gantt"; import XmGantt from "../components/xm-gantt";

6
src/views/xm/core/xmProduct/XmProductEdit.vue

@ -312,9 +312,9 @@ export default {
} }
let params = {}; let params = {};
params["ids"] = [row].map((i) => i.id); params["ids"] = [row].map((i) => i.id);
if (fieldName == "adminUserid") {
params["adminUserid"] = $event[0].userid;
params["adminUsername"] = $event[0].username;
if (fieldName == "admUserid") {
params["admUserid"] = $event[0].userid;
params["admUsername"] = $event[0].username;
} else if (fieldName == "assUserid") { } else if (fieldName == "assUserid") {
params["assUserid"] = $event[0].userid; params["assUserid"] = $event[0].userid;
params["assUsername"] = $event[0].username; params["assUsername"] = $event[0].username;

6
src/views/xm/core/xmProject/XmProjectEdit.vue

@ -880,9 +880,9 @@
if (fieldName == "adminUserid") {
params["adminUserid"] = $event[0].userid;
params["adminUsername"] = $event[0].username;
if (fieldName == "admUserid") {
params["admUserid"] = $event[0].userid;
params["admUsername"] = $event[0].username;
} else if (fieldName == "assUserid") { } else if (fieldName == "assUserid") {
params["assUserid"] = $event[0].userid; params["assUserid"] = $event[0].userid;
params["assUsername"] = $event[0].username; params["assUsername"] = $event[0].username;

Loading…
Cancel
Save