Przeglądaj źródła

修改生成致委托人函

wucl 7 miesięcy temu
rodzic
commit
7e74279be1

+ 12 - 0
src/api/globalConfig.js

@@ -0,0 +1,12 @@
+import request from '@/utils/request'
+
+const globalConfig = {
+
+    getByType(param){
+        return request.get(`/globalConfig/type?type=${param}`)
+    },
+}
+
+export default globalConfig
+
+

+ 18 - 0
src/api/houseGuarantyBase.js

@@ -0,0 +1,18 @@
+import request from '@/utils/request'
+
+const houseGuarantyBase = {
+
+    save(param) {
+        return request.post(`/houseGuarantyBase`,param)
+    },
+
+    getByDocId(param){
+        return request.get(`/houseGuarantyBase/${param}`)
+    },
+
+
+}
+
+export default houseGuarantyBase
+
+

+ 2 - 2
src/components/SheetView/index.vue

@@ -1,9 +1,9 @@
 <template>
     <div>
       <input type="file" @change="readExcel" id="upload"/>
-      <div v-if="viewExcelData" style="height: 600px; text-align: center;">
+      <div v-if="viewExcelData" style="text-align: center;">
         <el-button type="text" class="fsbtn" @click="fullScreenDialog = true">全屏预览</el-button>
-        <div style="float: left; height: 600px; margin-top: -60px;">
+        <div style="float: left; margin-top: -60px;">
           <h3>估价结果一览表(预览)</h3>
           <div v-html="viewExcelData"></div>
         </div>

+ 211 - 14
src/views/house/workbench/consignor.vue

@@ -2,7 +2,7 @@
     <div class="contrl">
         <div style="width: 95%;">
             <div class="title-div">
-                <span>上传估价结果一览表-表单</span>
+                <span>1.上传估价结果一览表</span>
             </div>
         </div>
         <div class="download-btn">
@@ -17,19 +17,146 @@
             <SheetView :uploadUrl="'/api/file/house/guaranty/target'" @getExcelDate="excelDate"
                 @getUploadReture="uploadReture" v-model:targetsHtml="process.targetsHtml"></SheetView>
         </div>
-        <el-button style="float: right;" v-if="excelHtml" plain type="danger" @click="genarate()">
+        <div class="title1-div">
+                <span>2.完善基本信息</span>
+            </div>
+        <div>
+            <el-form :model="baseInfo" label-width="120" label-position="left" style="max-width: 100%; margin-top: 20px"
+            :inline="true">
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="委托人:" class="form-item">
+                        <el-input v-model="baseInfo.consignor" />
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="报告号:" class="form-item">
+                        <el-input v-model="baseInfo.docNo" />
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="估价师1:" class="form-item">
+                        <el-select v-model="baseInfo.appraiser1" clearable placeholder="请选择" @change="changeAppr1()">
+                            <el-option v-for="(a ,id) in apprisers" :value="a.key">{{ a.key }}</el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="估价师2:" class="form-item">
+                        <el-select v-model="baseInfo.appraiser2" clearable placeholder="请选择" @change="changeAppr2()">
+                            <el-option v-for="(a ,id) in apprisers" :value="a.key">{{ a.key }}</el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="出具报告日期:" class="form-item">
+                        <el-date-picker v-model="baseInfo.docDate" type="date" placeholder="请选择" style="width: 100%;"
+                            format="YYYY年MM月DD日" value-format="YYYY年MM月DD日" />
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="价值时点:" class="form-item">
+                        <el-date-picker v-model="baseInfo.valueTiming" type="date" placeholder="请选择" style="width: 100%;"
+                            format="YYYY年MM月DD日" value-format="YYYY年MM月DD日" />
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="委托人类型:" class="form-item">
+                        <el-input v-model="baseInfo.consignorType" />
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="委托人住所:" class="form-item">
+                        <el-input v-model="baseInfo.consignorAddress" />
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="法定代表人:" class="form-item">
+                        <el-input v-model="baseInfo.consignorPerson" />
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="注册资本:" class="form-item">
+                        <el-input v-model="baseInfo.consignorMoney" />
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="统一社会信用代码:" class="form-item">
+                        <el-input v-model="baseInfo.creditCode" />
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="评估方法:" class="form-item">
+                        <el-checkbox-group v-model="baseInfo.methodList">
+                        <el-checkbox  label="成本法" value="成本法">
+                        </el-checkbox>
+                        <el-checkbox  label="收益法" value="收益法">
+                        </el-checkbox>
+                    </el-checkbox-group>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="是否提供技术报告:" class="form-item">
+                        <el-radio-group v-model="baseInfo.hasTechReport" clearable>
+                            <el-radio :value="true">是</el-radio>
+                            <el-radio :value="false">否</el-radio>
+                        </el-radio-group>
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-row :gutter="24">
+                <el-col :span="12">
+                    <el-form-item label="是否是农商银行项目:" class="form-item">
+                        <el-radio-group v-model="baseInfo.isNsBank" clearable>
+                            <el-radio :value="true">是</el-radio>
+                            <el-radio :value="false">否</el-radio>
+                        </el-radio-group>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="是否审核权属原件:" class="form-item">
+                        <el-radio-group v-model="baseInfo.isCheckOriginCertificate" clearable>
+                            <el-radio :value="true">是</el-radio>
+                            <el-radio :value="false">否</el-radio>
+                        </el-radio-group>
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            </el-form>
+        </div>
+        <el-button style="float: right;" plain type="danger" @click="genarate()">
                 生成致委托人函
                 <el-icon style="vertical-align: -20%;">
                     <ArrowRightBold />
                 </el-icon>
             </el-button>
-        <Steps :stepArray="stepArray" ref="steps" :stepsDialogVisible="stepDialog"></Steps>
+            <el-button style="float: right;" plain type="danger" @click="saveBaseInfo()">
+                保存基本信息
+                <el-icon style="vertical-align: -20%;">
+                    <ArrowRightBold />
+                </el-icon>
+            </el-button>
+        <!-- <Steps :stepArray="stepArray" ref="steps" :stepsDialogVisible="stepDialog"></Steps> -->
     </div>
 </template>
 
 <script>
 import SheetView from '../../../components/SheetView/index.vue'
 import houseGuaranty from '@/api/houseGuaranty';
+import globalConfig from '@/api/globalConfig';
+import houseGuarantyBase from '@/api/houseGuarantyBase';
 import fileUtil from '@/utils/file'
 import Steps from '../../../components/Steps/index.vue'
 
@@ -59,14 +186,40 @@ export default {
                 {name:'解析估价对象一览表'},
                 {name:'生成致委托人函'},
                 {name:'完成'}
-          ]
+            ],
+            baseInfo:{
+                id:null,
+                docId:null,
+                consignor:null,
+                docNo:null,
+                appraiser1:null,
+                appraiser2:null,
+                appraNo1:null,
+                appraNo2:null,
+                docDate:null,
+                valueTiming:null,
+                methodList:[],
+                hasTechReport:false,
+                isNsBank:false,
+                isCheckOriginCertificate:false,
+                consignorType:'有限责任公司',
+                consignorAddress:null,
+                consignorPerson:null,
+                consignorMoney:null,
+                creditCode:null,
+                processId:null
+            },
+            apprisers:[]
         }
     },
 
     created() {
         this.docId = this.$route.query.id;
         this.getProcess();
-        this.$emit('getDocumentId',this.docId)
+        this.$emit('getDocumentId',this.docId);
+        this.getBaseInfo();
+        this.getApprisers();
+
     },
 
     methods: {
@@ -117,15 +270,15 @@ export default {
                 const param = new Object();
                 param.html = this.excelHtml;
                 param.homePath = this.upload.filePath;
+                param.baseId = this.baseInfo.id;
                 let result = true;
                 await houseGuaranty.genTargetsTableWord(param).then(res => {
                     if (res.code === 200) {
+                        this.baseInfo.processId = res.data;
                         this.processId = res.data;
                     }else{
                         result = false;
                     }
-                    this.$refs.steps.next(res.code)
-                    
                 })
                 if (result){
                     await houseGuaranty.analysisCollect1(this.processId).then(res => {
@@ -135,7 +288,6 @@ export default {
                             this.docId = res.data;
                         }
 
-                        this.$refs.steps.next(res.code)
                     })
                 }
                 if (result){
@@ -151,15 +303,9 @@ export default {
                         }else{
                             result = false;
                         }
-                        this.$refs.steps.next(res.code);
 
                     })
                 }
-                if (result){
-                    setTimeout(()=>{
-                    this.$refs.steps.next(200);
-                    },500)
-             }
                 
             }
            
@@ -179,6 +325,50 @@ export default {
         downloadCollect1(){
             fileUtil.download("/file/download/house/guaranty/collect1");
         },
+
+        getApprisers(){
+            globalConfig.getByType("APPRAISER").then(res=>{
+                if (res.code===200){
+                    this.apprisers = res.data;
+                }
+            })
+        },
+
+        changeAppr1(){
+            let apprNo = this.apprisers.filter(item=>item.key==this.baseInfo.appraiser1);
+            this.baseInfo.appraNo1 = apprNo[0].value;
+            console.log(this.baseInfo)
+        },
+        changeAppr2(){
+            let apprNo = this.apprisers.filter(item=>item.key==this.baseInfo.appraiser2);
+            this.baseInfo.appraNo2 = apprNo[0].value;
+            console.log(this.baseInfo)
+        },
+        getBaseInfo(){
+            if (this.docId){
+                houseGuarantyBase.getByDocId(this.docId).then(res=>{
+                    if (res.code === 200){
+                        this.baseInfo = res.data;
+                        this.baseInfo.methodList = JSON.parse(res.data.methods)
+                    }
+                })
+            }
+           
+        },
+        saveBaseInfo(){
+            this.baseInfo.processId = this.processId;
+            this.baseInfo.methods = JSON.stringify(this.baseInfo.methodList);
+            houseGuarantyBase.save(this.baseInfo).then(res=>{
+                if (res.code===200 && res.data){
+                    this.baseInfo.id = res.data
+                    ElMessage({
+                        message: '基本信息保存成功',
+                        type: 'success',
+                        plain: true
+                    })
+                }
+            })
+        }
      
     }
 }
@@ -235,4 +425,11 @@ export default {
     font-size: 20px;
     font-weight: 900;
 }
+.title1-div {
+    height: 80px;
+    line-height: 80px;
+    width: 300px;
+    font-size: 20px;
+    font-weight: 900;
+}
 </style>