|
@@ -368,11 +368,17 @@
|
|
|
@click="openTargetDialog(), changeStatus('add')" round>添加评估对象</el-button>
|
|
|
</el-col>
|
|
|
<el-col :span="2"
|
|
|
- v-if="currentNode.nodeCode === 'GENERATE_STATEMENT' || currentNode.nodeCode === 'WRITE_REPORT'">
|
|
|
+ v-if="currentNode.nodeCode === 'GENERATE_STATEMENT' || currentNode.nodeCode === 'RECHECK_REPORT'">
|
|
|
<el-tooltip class="item" effect="dark" content="全选取主号,多次取号(主号-子号)" placement="right">
|
|
|
<el-button type="success" @click="takeAssetsProductionNo" round>产品取号</el-button>
|
|
|
</el-tooltip>
|
|
|
</el-col>
|
|
|
+ <el-col :span="2"
|
|
|
+ v-if="currentNode.nodeCode === 'GENERATE_STATEMENT' || currentNode.nodeCode === 'WRITE_REPORT'">
|
|
|
+ <el-tooltip class="item" effect="dark" content="请仔细确认产品内容" placement="right">
|
|
|
+ <el-button type="success" @click="openWriteProductionDialog" round>撰写产品信息</el-button>
|
|
|
+ </el-tooltip>
|
|
|
+ </el-col>
|
|
|
</el-row>
|
|
|
<el-table ref="multipleTable" :data="assetsEvaluationTarget" stripe @selection-change="targetSelectionChange"
|
|
|
:header-row-style="{ color: '#333333' }" border takeNumberItems style="width: 100%; margin-top:20px">
|
|
@@ -412,12 +418,12 @@
|
|
|
@click="getAssetsTargetDetail(scope.row.id), changeStatus('detail')">
|
|
|
查看
|
|
|
</el-button>
|
|
|
- <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text" size="small"
|
|
|
- @click="getAssetsTargetDetail(scope.row.id), changeStatus('edit')">
|
|
|
+ <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text"
|
|
|
+ size="small" @click="getAssetsTargetDetail(scope.row.id), changeStatus('edit')">
|
|
|
编辑
|
|
|
</el-button>
|
|
|
- <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text" size="small"
|
|
|
- @click="assetsTargetDelete(scope.row.id)">删除</el-button>
|
|
|
+ <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text"
|
|
|
+ size="small" @click="assetsTargetDelete(scope.row.id)">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -709,6 +715,140 @@
|
|
|
</div>
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+ <el-dialog :visible.sync="productionWriteDialogVisible">
|
|
|
+ <el-form ref="assetsProductionFrom" :model="assetsProductionFrom" :rules="assetsProductionFromRules">
|
|
|
+ <div class="createMajor-main-container">
|
|
|
+ <div class="postInfo-container">
|
|
|
+ <div>
|
|
|
+ <el-divider content-position="left">
|
|
|
+ <h3 class="title">
|
|
|
+ <div class="avatar-wrapper icon-title">产品</div>
|
|
|
+ <div class="icon-info">撰写产品信息</div>
|
|
|
+ </h3>
|
|
|
+ </el-divider>
|
|
|
+ </div>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="项目名称:" prop="assetsName" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-input v-model.number="assetsProductionFrom.assetsName" class="filter-item" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="签字人:" prop="signatory" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-select v-model="assetsProductionFrom.signatory" placeholder="请选择" multiple>
|
|
|
+ <el-option v-for="(u, id) in allUsers" :label="u.name" :value="u.id" :key="u.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="委托方名称:" prop="clientName" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-input v-model.number="assetsProductionFrom.clientName" class="filter-item" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="委托方电话:" prop="clientTel" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-input v-model.number="assetsProductionFrom.clientTel" class="filter-item" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="估价基准日:" prop="valuationBasisDate" label-width="120px"
|
|
|
+ class="postInfo-container-item">
|
|
|
+ <el-date-picker v-model="assetsProductionFrom.valuationBasisDate" type="date" placeholder="选择日期"
|
|
|
+ style="width:100%">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="评估面积:" prop="evaluateAcreage" label-width="140px" class="postInfo-container-item">
|
|
|
+ <el-input-number v-model="assetsProductionFrom.evaluateAcreage" controls-position="right" :precision="2"
|
|
|
+ :step="0.1"></el-input-number>
|
|
|
+ <span>(m²)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="评估单价:" prop="evaluatePrice" label-width="140px" class="postInfo-container-item">
|
|
|
+ <el-input-number v-model="assetsProductionFrom.evaluatePrice" controls-position="right" :precision="2"
|
|
|
+ :step="0.1"></el-input-number>
|
|
|
+ <span>(元)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="评估总价:" prop="evaluateAmount" label-width="140px" class="postInfo-container-item">
|
|
|
+ <el-input-number v-model="assetsProductionFrom.evaluateAmount" controls-position="right" :precision="2"
|
|
|
+ :step="0.1"></el-input-number>
|
|
|
+ <span>(万)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="资产持有人:" prop="owner" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-input v-model.number="assetsProductionFrom.owner" class="filter-item" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="产品打印份数:" prop="printCount" label-width="150px" class="postInfo-container-item">
|
|
|
+ <el-input v-model.number="assetsProductionFrom.printCount" class="filter-item" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="出具产品日期:" prop="createProductionDate" label-width="150px"
|
|
|
+ class="postInfo-container-item">
|
|
|
+ <el-date-picker v-model="assetsProductionFrom.createProductionDate" type="date" placeholder="选择日期"
|
|
|
+ style="width:100%">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item prop="filePath" label="资料附件:" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-upload action="/api/upload" :limit="3" :on-success="changeres" :on-exceed="handleExceed"
|
|
|
+ :on-preview="handleAttachmentPreview" :before-remove="beforeRemove" :file-list="fileList">
|
|
|
+ <el-button plain type="info" round style="width: 100%">上传附件<i
|
|
|
+ class="el-icon-upload el-icon--right"></i></el-button>
|
|
|
+ </el-upload>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-col>
|
|
|
+ <el-form-item label="特殊情况说明:" prop="comment" label-width="150px" class="postInfo-container-item">
|
|
|
+ <el-input v-model="assetsProductionFrom.comment" :autosize="{ minRows: 4, maxRows: 4 }"
|
|
|
+ class="filter-item" type="textarea" />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+ <el-row class="row-style">
|
|
|
+ <el-button v-if="productionChoiceStatus == 0" @click="assetsProductionSave"
|
|
|
+ style="width:100%;">提交</el-button>
|
|
|
+ <el-button v-if="productionChoiceStatus == 1" @click="assetsProductionUpdate"
|
|
|
+ style="width:100%;">提交</el-button>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
@@ -1070,6 +1210,8 @@ export default {
|
|
|
pNode: null,
|
|
|
// 产品选择表单可视状态
|
|
|
productionChoiceDialogVisible: false,
|
|
|
+ // 产品信息撰写表单可视状态
|
|
|
+ productionWriteDialogVisible: false,
|
|
|
// 0:新增,1:更新
|
|
|
productionChoiceStatus: 0,
|
|
|
// 产品表单
|
|
@@ -1077,16 +1219,19 @@ export default {
|
|
|
businessId: null,
|
|
|
productionNo: null,
|
|
|
productionType: null,
|
|
|
- signatory: null,
|
|
|
+ signatory: [],
|
|
|
clientName: null,
|
|
|
+ clientTel: null,
|
|
|
valuationBasisDate: null,
|
|
|
evaluateAcreage: null,
|
|
|
+ evaluatePrice: null,
|
|
|
evaluateAmount: null,
|
|
|
owner: null,
|
|
|
printCount: null,
|
|
|
createProductionDate: null,
|
|
|
comment: null,
|
|
|
- filePath: []
|
|
|
+ filePath: [],
|
|
|
+ assetsName: null
|
|
|
},
|
|
|
// 产品选择表单校验规则
|
|
|
assetsProductionFromRules: {
|
|
@@ -1096,6 +1241,36 @@ export default {
|
|
|
printCount: [
|
|
|
{ required: true, message: '请填写打印份数', trigger: 'blur' },
|
|
|
{ type: 'number', message: '请填写数字' }
|
|
|
+ ],
|
|
|
+ signatory: [
|
|
|
+ { required: true, message: '请选择签字人', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ clientName: [
|
|
|
+ { required: true, message: '请填写委托方名称', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ clientTel: [
|
|
|
+ { required: true, message: '请填写委托方电话', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ valuationBasisDate: [
|
|
|
+ { required: true, message: '请选择估价基准日', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ evaluateAcreage: [
|
|
|
+ { required: true, message: '请填写评估面积', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ evaluatePrice: [
|
|
|
+ { required: true, message: '请填写评估单价', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ owner: [
|
|
|
+ { required: true, message: '请填写持有人', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ createProductionDate: [
|
|
|
+ { required: true, message: '请选择产品出具日期', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ filePath: [
|
|
|
+ { required: true, message: '请上传附件资料', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ assetsName: [
|
|
|
+ { required: true, message: '请填写项目名称', trigger: 'change' }
|
|
|
]
|
|
|
},
|
|
|
// 资产业务取号dto
|
|
@@ -1531,6 +1706,7 @@ export default {
|
|
|
let aETargetListSelectDTO = { businessId: null, productionNo: null }
|
|
|
aETargetListSelectDTO.businessId = this.assetsForm.id;
|
|
|
aETargetListSelectDTO.productionNo = this.pageParams.row.productionNo;
|
|
|
+
|
|
|
this.$api.assets.getAETargetListByAssetsId(aETargetListSelectDTO).then(res => {
|
|
|
if (res.code === 200) {
|
|
|
this.assetsEvaluationTarget = res.data;
|
|
@@ -1870,6 +2046,7 @@ export default {
|
|
|
type: 'success',
|
|
|
duration: 2000
|
|
|
});
|
|
|
+ this.pageParams.row.productionNo = res.data;
|
|
|
this.getAETargetListByAssetsId();
|
|
|
}
|
|
|
})
|
|
@@ -1895,6 +2072,24 @@ export default {
|
|
|
} else {
|
|
|
return true;
|
|
|
}
|
|
|
+ },
|
|
|
+ openWriteProductionDialog() {
|
|
|
+ this.productionWriteDialogVisible = true;
|
|
|
+ this.getAssetsProductionDetail();
|
|
|
+ },
|
|
|
+ // 根据业务id与产品号获取资产产品详细信息
|
|
|
+ getAssetsProductionDetail() {
|
|
|
+ let assetsProductionDetailDTO = { businessId: null, productionNo: null };
|
|
|
+ assetsProductionDetailDTO.businessId = this.assetsForm.id;
|
|
|
+ assetsProductionDetailDTO.productionNo = this.pageParams.row.productionNo;
|
|
|
+ this.$api.assets.getAssetsProductionDetail(assetsProductionDetailDTO).then(res => {
|
|
|
+ if (res.code == 200 && res.data !== null) {
|
|
|
+ this.assetsProductionFrom = res.data;
|
|
|
+ this.assetsProductionFrom.assetsName = this.assetsForm.name;
|
|
|
+ this.assetsProductionFrom.owner = this.assetsEvaluationTarget[0].theHolder;
|
|
|
+ this.assetsProductionFrom.valuationBasisDate = this.assetsEvaluationTarget[0].valuationBasisDate;
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
}
|