|
@@ -61,14 +61,14 @@
|
|
|
<el-tab-pane label="分配WBS模版" name="2">
|
|
|
<div>
|
|
|
<div class="text-align-c">
|
|
|
- <el-radio-group v-model="templateType" @change="templateTypeChange">
|
|
|
+ <el-radio-group v-model="templateType" @change="templateTypeChange" :disabled="selected">
|
|
|
<el-radio :label="2">试验</el-radio>
|
|
|
<el-radio :label="1">质检</el-radio>
|
|
|
</el-radio-group>
|
|
|
</div>
|
|
|
<div class="text-align-c mg-t-20">
|
|
|
<span class="mg-r-20">选择WBS</span>
|
|
|
- <el-select v-model="wbsId" @change="wbsChange" placeholder="请选择WBS" style="width:500px;">
|
|
|
+ <el-select v-model="wbsId" @change="wbsChange" :disabled="selected" placeholder="请选择WBS" style="width:500px;">
|
|
|
<el-option-group
|
|
|
v-for="group in treeList"
|
|
|
:key="group.label"
|
|
@@ -160,6 +160,23 @@
|
|
|
treeTree
|
|
|
},
|
|
|
data() {
|
|
|
+ var checkDate = (rule, value, callback) => {
|
|
|
+ if (value && this.projectForm.planStartTime) {
|
|
|
+ if(Date.parse(value) < Date.parse(this.projectForm.planStartTime)){
|
|
|
+ callback(new Error('计划完工日期不能小于开工日期'));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ callback();
|
|
|
+ };
|
|
|
+ var checkDate2 = (rule, value, callback) => {
|
|
|
+ if (value && this.projectForm.actualStartTime) {
|
|
|
+ if(Date.parse(value) < Date.parse(this.projectForm.actualStartTime)){
|
|
|
+ callback(new Error('实际完工日期不能小于开工日期'));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ callback();
|
|
|
+ };
|
|
|
+
|
|
|
return {
|
|
|
activeType:'1',
|
|
|
typeChang:{
|
|
@@ -173,7 +190,9 @@
|
|
|
highwayGradeList:[],
|
|
|
radioType:'总里程',
|
|
|
|
|
|
- projectForm:{},
|
|
|
+ projectForm:{
|
|
|
+ estimatedAmount:0
|
|
|
+ },
|
|
|
projectRules:{
|
|
|
projectName: [
|
|
|
{ required: true, message: '请输入项目名称', trigger: 'blur' },
|
|
@@ -181,6 +200,12 @@
|
|
|
projectAlias: [
|
|
|
{ required: true, message: '请输入项目别名', trigger: 'blur' },
|
|
|
],
|
|
|
+ planEndTime:[
|
|
|
+ {validator: checkDate,trigger: 'blur'}
|
|
|
+ ],
|
|
|
+ actualEndTime:[
|
|
|
+ {validator: checkDate2,trigger: 'blur'}
|
|
|
+ ]
|
|
|
},
|
|
|
|
|
|
contractList:[],
|
|
@@ -199,6 +224,7 @@
|
|
|
templateType:1,
|
|
|
treeList:[],
|
|
|
wbsId:'',
|
|
|
+ selected:false,
|
|
|
leftTreeData:[],
|
|
|
}
|
|
|
},
|
|
@@ -223,6 +249,7 @@
|
|
|
if(refId && refId>0){
|
|
|
//有引用id,回显
|
|
|
this.wbsId = refId;
|
|
|
+ this.selected = true;
|
|
|
let projectTree = await findProjectTree(this.projectForm.id,refId)
|
|
|
if(Array.isArray(projectTree.data.data)){
|
|
|
this.templateType = projectTree.data.data[0].wbsType;
|
|
@@ -374,6 +401,18 @@
|
|
|
projectId:this.projectForm.id,
|
|
|
wbsTreeIds:ids
|
|
|
}
|
|
|
+ if(this.wbsId.toString().indexOf(',') >= 0){
|
|
|
+ //私有库
|
|
|
+ obj.referenceType = "private";
|
|
|
+ let ids = this.wbsId.toString().split(',');
|
|
|
+ obj.wbsId = ids[0];
|
|
|
+ obj.referencePrivateWbsProjectId = ids[1];
|
|
|
+ obj.primaryKeyId = this.leftTreeData[0].primaryKeyId;
|
|
|
+ }else{
|
|
|
+ //公有库
|
|
|
+ obj.referenceType = "public";
|
|
|
+ }
|
|
|
+
|
|
|
return submitWbsTreeInProject(obj);
|
|
|
},
|
|
|
|
|
@@ -462,9 +501,9 @@
|
|
|
getDictionary({
|
|
|
code:'highway_grade'
|
|
|
}).then((res)=>{
|
|
|
- res.data.data.forEach(element => {
|
|
|
- element.dictKey = Number(element.dictKey)
|
|
|
- });
|
|
|
+ // res.data.data.forEach(element => {
|
|
|
+ // element.dictKey = Number(element.dictKey)
|
|
|
+ // });
|
|
|
this.highwayGradeList = res.data.data;
|
|
|
})
|
|
|
},
|