Bläddra i källkod

Merge branch 'master' of http://47.108.172.52:3000/dayou/item-management-web

GouGengquan 1 år sedan
förälder
incheckning
94e1159004
3 ändrade filer med 442 tillägg och 444 borttagningar
  1. 1 4
      src/views/major/todoDetail.vue
  2. 298 348
      src/views/personal/readonlyDetail.vue
  3. 143 92
      src/views/personal/todoDetail.vue

+ 1 - 4
src/views/major/todoDetail.vue

@@ -1652,10 +1652,7 @@ export default {
             this.validFeed = true;
           }
           else if (ps.includes("REPORT") && ps.includes("LETTER")) {
-            this.$message({
-              message: '报告和复评函只能选其一。',
-              type: 'error'
-            });
+           
             this.validFeed = true;
           } else if ((ps.includes("REPORT") && ps.includes("NONE")) || (ps.includes("LETTER") && ps.includes("NONE"))) {
             this.$message({

+ 298 - 348
src/views/personal/readonlyDetail.vue

@@ -332,7 +332,7 @@
           </div>
         </el-form>
       </el-tab-pane>
-      <el-tab-pane id="evaluteObject" name="evaluate" class="pane-class" :lazy=true>
+      <el-tab-pane  name="evaluate" class="pane-class" :lazy=true>
         <span slot="label"><i class="el-icon-office-building"></i> 评估对象</span>
         <el-form ref="targetForm" :model="target">
           <div class="createMajor-main-container">
@@ -348,15 +348,30 @@
             </div>
           </div>
           <el-row class="row-style">
-            <el-col :xs="24" :sm="12" :lg="2" :span="6">
-              <el-form-item label="线上计算:" prop="acreage" label-width="140px" class="postInfo-container-item">
-                <el-switch v-model="target.isOnline" active-color="#13ce66" inactive-color="#ff4949" readonly
-                  disabled></el-switch>
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="流程:" prop="acreage" label-width="140px" class="postInfo-container-item" >
+                <el-switch :value="target.isOnline" disabled style="margin-bottom: 5px;" active-text="线上" inactive-text="线下"
+                  >
+                </el-switch>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row class="row-style">
+            <el-col :xs="12" :sm="12" :lg="18" :span="6">
+              <el-form-item label="项目名称:" prop="location" label-width="140px" class="postInfo-container-item">
+                <el-input :value="personal.location"  disabled readonly class="filter-item"  />
               </el-form-item>
             </el-col>
-            <el-col :xs="12" :sm="12" :lg="20" :span="6">
-              <el-form-item label="坐落:" prop="location" label-width="140px" class="postInfo-container-item">
-                <el-input :value="target.location" class="filter-item" disabled readonly style=" width: 100%" />
+          </el-row>
+          <el-row class="row-style">
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="委托方1:" prop="bailorA" label-width="140px" class="postInfo-container-item">
+                <el-input :value="personal.bailorA"  disabled readonly class="filter-item"  />
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="委托方2:" prop="bailorB" label-width="140px" class="postInfo-container-item">
+                <el-input :value="personal.bailorB" disabled readonly class="filter-item"  />
               </el-form-item>
             </el-col>
           </el-row>
@@ -364,32 +379,42 @@
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估面积(平):" prop="acreage" label-width="140px"
                 :rules="{ required: true, message: '评估面积不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                <el-input-number v-model="target.acreage" size="medium" controls-position="right" :min="0" :step="0.1"
-                  :max="10000"></el-input-number>
+                <el-input :value="target.acreage"  disabled readonly 
+                 style="width: 100%;">
+                  <template slot="append">
+                    <span>元</span>
+                  </template>
+                </el-input>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估单价(元):" prop="price" label-width="140px"
                 :rules="{ required: true, message: '评估单价不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                <el-input-number v-model="target.price" size="medium" controls-position="right"
-                  :min="0"></el-input-number>
+                <el-input :value="target.price"  disabled readonly 
+                   style="width: 100%;">
+                   <template slot="append">
+                    <span>元</span>
+                  </template>
+                  </el-input>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估总价(元):" prop="amount" label-width="140px"
                 :rules="{ required: true, message: '评估总价不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                <el-input-number v-model="target.amount" size="medium" controls-position="right"
-                  :min="0"></el-input-number>
+                <el-input :value="target.amount"  disabled readonly 
+                   style="width: 100%;">
+                   <template slot="append">
+                    <span>元</span>
+                  </template>
+                  </el-input>
               </el-form-item>
             </el-col>
-            <el-col :xs="24" :sm="12" :lg="6" :span="6">
-              <el-button v-show="!target.isOnline" type="text" @click="savePrice()"
-                v-if="currentNode.nodeCode === 'DETERMINE_PRICE'">保存价格</el-button>
-            </el-col>
           </el-row>
         </el-form>
-        <el-form ref="compareToForm" :model="compareList" v-if="target.isOnline">
-          <div class="createMajor-main-container">
+      </el-tab-pane>
+      <el-tab-pane name="comparable" class="pane-class" :lazy=true>
+        <span slot="label"><i class="el-icon-office-building"></i> 可比实例</span>
+        <div class="createMajor-main-container">
             <div class="postInfo-container">
               <div>
                 <el-divider content-position="left">
@@ -400,274 +425,264 @@
                 </el-divider>
               </div>
             </div>
-          </div>
-          <el-card class="box-card">
-            <el-row class="row-style">
-              <el-col :xs="24" :sm="12" :lg="5" :span="6">
-                <el-form-item label="修正系数:" prop="fixValue" label-width="120px"
-                  :rules="{ required: true, message: '修正系数不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                  <el-input-number v-model="compareList.fixValue" :step="0.1" :min="1" size="medium"
+            <el-form ref="compareToForm" :model="compareList" v-if="target.isOnline">
+          <el-row class="row-style">
+            <el-col :xs="24" :sm="12" :lg="4" :span="6">
+              <el-form-item label="修正系数:" prop="fixValue" label-width="120px"
+                :rules="{ required: true, message: '修正系数不能为空', trigger: 'blur' }" class="postInfo-container-item">
+                <el-input-number v-model="compareList.fixValue" :step="0.1" :min="1" size="medium" style="width: 100%;"
+                  controls-position="right"></el-input-number>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="4" :span="6">
+              <el-form-item label="是否划拨:" prop="rightsType" label-width="120px"
+                :rules="{ required: true, message: '是否划拨不能为空', trigger: 'blur' }" class="postInfo-container-item">
+                <el-select v-model="compareList.rightsType" placeholder="请选择" @change="selectRightsType()">
+                  <el-option label="划拨" value="ALLOT">划拨</el-option>
+                  <el-option label="出让" value="SELL">出让</el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="4" :span="6" v-show="compareList.rightsType === 'ALLOT'">
+              <el-form-item label="环线位置:" prop="rollingLevel" label-width="120px"
+                :rules="{ required: compareList.rightsType === 'ALLOT', message: '是否划拨不能为空', trigger: 'blur' }"
+                class="postInfo-container-item">
+                <el-select v-model="compareList.rollingLevel" placeholder="请选择" @change="selectRoll()">
+                  <el-option label="二环内" :value=1>二环内</el-option>
+                  <el-option label="二至三环" :value=2>二至三环</el-option>
+                  <el-option label="三环外" :value=3>三环外</el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="4" :span="6">
+              <el-form-item label="计算方式:" prop="calculateType" label-width="120px"
+                :rules="{ required: true, message: '计算方式不能为空', trigger: 'blur' }" class="postInfo-container-item">
+                <el-select v-model="compareList.calculateType" clearable placeholder="请选择"
+                  @change="selectCalculateType()">
+                  <el-option label="简单算术平均" value="SIMPLE">简单算术平均</el-option>
+                  <el-option label="加权算术平均" value="WEIGHT">加权算术平均</el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-table v-loading="calculating" element-loading-text="正在计算..." element-loading-spinner="el-icon-loading"
+            element-loading-background="rgba(144, 147, 153, 0.5)" :data="compareList.analysisData" border="border"
+            stripe :header-cell-style="{ color: '#333333' }" style="
+                              border-left: 1px solid #ebeced;
+                              border-right: 1px solid #ebeced;
+                              color: #333333; font-size: 16px;">
+            <el-table-column prop="index" label="指标" width="180" align="center">
+              <template scope="scope">
+                <span v-if="requiredIndex.includes(scope.row.index)" style="color:red">* </span>
+                <span>{{ scope.row.index }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="compareA" label="实例A" align="center">
+              <template scope="scope" style="float:right">
+                <div v-if="needWeight.includes(scope.row.index)">
+                  <el-input style="width:60%" v-model="scope.row.compareA.valueA" />
+                  <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '市场状况'">
+                  <el-date-picker v-model="scope.row.compareA.valueA" type="month" style="width:60%" placeholder="选择月">
+                  </el-date-picker>
+                  <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '楼层/总楼层'">
+                  <el-input style="width:26%" v-model="scope.row.compareA.valueA" />
+                  <span style="margin-left:2%;margin-right:2%">/</span>
+                  <el-input style="width:26%" v-model="scope.row.compareA.valueB" />
+                  <el-input-number v-model="scope.row.compareA.weight" :min="1" :max="150" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '修正后价格'">
+                  <span v-if="scope.row.compareA.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{ parseFloat(scope.row.compareA.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '权重'">
+                  <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareA.valueA"
+                    style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
+                    controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '总价(元)'">
+                  <span v-if="scope.row.compareA.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{ parseFloat(scope.row.compareA.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '单价(元)'">
+                  <el-input-number v-model="scope.row.compareA.valueA" style="width:100%;" :min="0" size="small"
                     controls-position="right"></el-input-number>
-                </el-form-item>
-              </el-col>
-              <el-col :xs="24" :sm="12" :lg="5" :span="6">
-                <el-form-item label="是否划拨:" prop="rightsType" label-width="120px"
-                  :rules="{ required: true, message: '是否划拨不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                  <el-select v-model="compareList.rightsType" placeholder="请选择" @change="selectRightsType()">
-                    <el-option label="划拨" value="ALLOT">划拨</el-option>
-                    <el-option label="出让" value="SELL">出让</el-option>
+                </div>
+                <div v-else-if="scope.row.index === '室内装饰'">
+                  <el-select v-model="scope.row.compareA.valueA" placeholder="请选择" style="width:60%">
+                    <el-option label="精装" value="精装">精装</el-option>
+                    <el-option label="中等装修" value="中等装修">中等装修</el-option>
+                    <el-option label="简装" value="简装">简装</el-option>
+                    <el-option label="清水" value="清水">清水</el-option>
                   </el-select>
-                </el-form-item>
-              </el-col>
-              <el-col :xs="24" :sm="12" :lg="5" :span="6" v-if="compareList.rightsType === 'ALLOT'">
-                <el-form-item label="环线位置:" prop="rollingLevel" label-width="120px"
-                  :rules="{ required: compareList.rightsType === 'ALLOT', message: '是否划拨不能为空', trigger: 'blur' }"
-                  class="postInfo-container-item">
-                  <el-select v-model="compareList.rollingLevel" placeholder="请选择" @change="selectRoll()">
-                    <el-option label="二环内" :value=1>二环内</el-option>
-                    <el-option label="二至三环" :value=2>二至三环</el-option>
-                    <el-option label="三环外" :value=3>三环外</el-option>
+                  <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else>
+                  <el-input style="width:100%" v-model="scope.row.compareA.valueA" />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column prop="compareB" label="实例B" align="center">
+              <template scope="scope" style="float:right">
+                <div v-if="needWeight.includes(scope.row.index)">
+                  <el-input style="width:60%" v-model="scope.row.compareB.valueA" />
+                  <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '市场状况'">
+                  <el-date-picker v-model="scope.row.compareB.valueA" type="month" style="width:60%" placeholder="选择月">
+                  </el-date-picker>
+                  <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '楼层/总楼层'">
+                  <el-input style="width:26%" v-model="scope.row.compareB.valueA" />
+                  <span style="margin-left:2%;margin-right:2%">/</span>
+                  <el-input style="width:26%" v-model="scope.row.compareB.valueB" />
+                  <el-input-number v-model="scope.row.compareB.weight" :min="1" :max="150" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '修正后价格'">
+                  <span v-if="scope.row.compareB.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{ parseFloat(scope.row.compareB.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '权重'">
+                  <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareB.valueA"
+                    style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
+                    controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '总价(元)'">
+                  <span v-if="scope.row.compareB.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{ parseFloat(scope.row.compareB.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '单价(元)'">
+                  <el-input-number v-model="scope.row.compareB.valueA" style="width:100%;" :min="0" size="small"
+                    controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '室内装饰'">
+                  <el-select v-model="scope.row.compareB.valueA" placeholder="请选择" style="width:60%">
+                    <el-option label="精装" value="精装">精装</el-option>
+                    <el-option label="中等装修" value="中等装修">中等装修</el-option>
+                    <el-option label="简装" value="简装">简装</el-option>
+                    <el-option label="清水" value="清水">清水</el-option>
                   </el-select>
-                </el-form-item>
-              </el-col>
-              <el-col :xs="24" :sm="12" :lg="5" :span="6">
-                <el-form-item label="计算方式:" prop="calculateType" label-width="120px"
-                  :rules="{ required: true, message: '计算方式不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                  <el-select v-model="compareList.calculateType" clearable placeholder="请选择"
-                    @change="selectCalculateType()">
-                    <el-option label="简单算术平均" value="SIMPLE">简单算术平均</el-option>
-                    <el-option label="加权算术平均" value="WEIGHT">加权算术平均</el-option>
+                  <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else>
+                  <el-input style="width:100%" v-model="scope.row.compareB.valueA" />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column prop="compareC" label="实例C" align="center">
+              <template scope="scope" style="float:right">
+                <div v-if="needWeight.includes(scope.row.index)">
+                  <el-input style="width:60%" v-model="scope.row.compareC.valueA" />
+                  <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '市场状况'">
+                  <el-date-picker v-model="scope.row.compareC.valueA" type="month" style="width:60%" placeholder="选择月">
+                  </el-date-picker>
+                  <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '楼层/总楼层'">
+                  <el-input style="width:26%" v-model="scope.row.compareC.valueA" />
+                  <span style="margin-left:2%;margin-right:2%">/</span>
+                  <el-input style="width:26%" v-model="scope.row.compareC.valueB" />
+                  <el-input-number v-model="scope.row.compareC.weight" :min="1" :max="150" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '修正后价格'">
+                  <span v-if="scope.row.compareC.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{ parseFloat(scope.row.compareC.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '权重'">
+                  <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareC.valueA"
+                    style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
+                    controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '总价(元)'">
+                  <span v-if="scope.row.compareC.valueA"
+                    style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{ parseFloat(scope.row.compareC.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '单价(元)'">
+                  <el-input-number v-model="scope.row.compareC.valueA" style="width:100%;" :min="0" size="small"
+                    controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '室内装饰'">
+                  <el-select v-model="scope.row.compareC.valueA" placeholder="请选择" style="width:60%">
+                    <el-option label="精装" value="精装">精装</el-option>
+                    <el-option label="中等装修" value="中等装修">中等装修</el-option>
+                    <el-option label="简装" value="简装">简装</el-option>
+                    <el-option label="清水" value="清水">清水</el-option>
                   </el-select>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-table v-loading="calculating" element-loading-text="正在计算..." element-loading-spinner="el-icon-loading"
-              element-loading-background="rgba(144, 147, 153, 0.5)" :data="compareList.analysisData" border="border"
-              stripe :header-cell-style="{ color: '#333333' }" style="
-                              border-left: 1px solid #ebeced;
-                              border-right: 1px solid #ebeced;
-                              color: #333333; font-size: 16px;">
-              <el-table-column prop="index" label="指标" width="180" align="center">
-                <template scope="scope">
-                  <span v-if="requiredIndex.includes(scope.row.index)" style="color:red">* </span>
-                  <span>{{ scope.row.index }}</span>
-                </template>
-              </el-table-column>
-              <el-table-column prop="compareA" label="实例A" align="center">
-                <template scope="scope" style="float:right">
-                  <div v-if="needWeight.includes(scope.row.index)">
-                    <el-input style="width:60%" v-model="scope.row.compareA.valueA" />
-                    <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '市场状况'">
-                    <el-date-picker v-model="scope.row.compareA.valueA" type="month" style="width:60%"
-                      placeholder="选择月">
-                    </el-date-picker>
-                    <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '楼层/总楼层'">
-                    <el-input style="width:26%" v-model="scope.row.compareA.valueA" />
-                    <span style="margin-left:2%;margin-right:2%">/</span>
-                    <el-input style="width:26%" v-model="scope.row.compareA.valueB" />
-                    <el-input-number v-model="scope.row.compareA.weight" :min="1" :max="150" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '修正后价格'">
-                    <span v-if="scope.row.compareA.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{
-                        parseFloat(scope.row.compareA.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '权重'">
-                    <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareA.valueA"
-                      style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '总价(元)'">
-                    <span v-if="scope.row.compareA.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{
-                        parseFloat(scope.row.compareA.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '单价(元)'">
-                    <el-input-number v-model="scope.row.compareA.valueA" style="width:100%;" :min="0" size="small"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '室内装饰'">
-                    <el-select v-model="scope.row.compareA.valueA" placeholder="请选择" style="width:60%">
-                      <el-option label="精装" value="精装">精装</el-option>
-                      <el-option label="中等装修" value="中等装修">中等装修</el-option>
-                      <el-option label="简装" value="简装">简装</el-option>
-                      <el-option label="清水" value="清水">清水</el-option>
-                    </el-select>
-                    <el-input-number v-model="scope.row.compareA.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else>
-                    <el-input style="width:100%" v-model="scope.row.compareA.valueA" />
-                  </div>
-                </template>
-              </el-table-column>
-              <el-table-column prop="compareB" label="实例B" align="center">
-                <template scope="scope" style="float:right">
-                  <div v-if="needWeight.includes(scope.row.index)">
-                    <el-input style="width:60%" v-model="scope.row.compareB.valueA" />
-                    <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '市场状况'">
-                    <el-date-picker v-model="scope.row.compareB.valueA" type="month" style="width:60%"
-                      placeholder="选择月">
-                    </el-date-picker>
-                    <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '楼层/总楼层'">
-                    <el-input style="width:26%" v-model="scope.row.compareB.valueA" />
-                    <span style="margin-left:2%;margin-right:2%">/</span>
-                    <el-input style="width:26%" v-model="scope.row.compareB.valueB" />
-                    <el-input-number v-model="scope.row.compareB.weight" :min="1" :max="150" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '修正后价格'">
-                    <span v-if="scope.row.compareB.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{
-                        parseFloat(scope.row.compareB.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '权重'">
-                    <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareB.valueA"
-                      style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '总价(元)'">
-                    <span v-if="scope.row.compareB.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{
-                        parseFloat(scope.row.compareB.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '单价(元)'">
-                    <el-input-number v-model="scope.row.compareB.valueA" style="width:100%;" :min="0" size="small"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '室内装饰'">
-                    <el-select v-model="scope.row.compareB.valueA" placeholder="请选择" style="width:60%">
-                      <el-option label="精装" value="精装">精装</el-option>
-                      <el-option label="中等装修" value="中等装修">中等装修</el-option>
-                      <el-option label="简装" value="简装">简装</el-option>
-                      <el-option label="清水" value="清水">清水</el-option>
-                    </el-select>
-                    <el-input-number v-model="scope.row.compareB.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else>
-                    <el-input style="width:100%" v-model="scope.row.compareB.valueA" />
-                  </div>
-                </template>
-              </el-table-column>
-              <el-table-column prop="compareC" label="实例C" align="center">
-                <template scope="scope" style="float:right">
-                  <div v-if="needWeight.includes(scope.row.index)">
-                    <el-input style="width:60%" v-model="scope.row.compareC.valueA" />
-                    <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '市场状况'">
-                    <el-date-picker v-model="scope.row.compareC.valueA" type="month" style="width:60%"
-                      placeholder="选择月">
-                    </el-date-picker>
-                    <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '楼层/总楼层'">
-                    <el-input style="width:26%" v-model="scope.row.compareC.valueA" />
-                    <span style="margin-left:2%;margin-right:2%">/</span>
-                    <el-input style="width:26%" v-model="scope.row.compareC.valueB" />
-                    <el-input-number v-model="scope.row.compareC.weight" :min="1" :max="150" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '修正后价格'">
-                    <span v-if="scope.row.compareC.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:20px">¥{{
-                        parseFloat(scope.row.compareC.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '权重'">
-                    <el-input-number v-if="compareList.calculateType === 'WEIGHT'" v-model="scope.row.compareC.valueA"
-                      style="width:100%;" :min="0" :max="1" size="small" :step="0.1"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '总价(元)'">
-                    <span v-if="scope.row.compareC.valueA"
-                      style="color:RGB(144,147,153);font-weight:bold;font-size:16px">¥{{
-                        parseFloat(scope.row.compareC.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '单价(元)'">
-                    <el-input-number v-model="scope.row.compareC.valueA" style="width:100%;" :min="0" size="small"
-                      controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '室内装饰'">
-                    <el-select v-model="scope.row.compareC.valueA" placeholder="请选择" style="width:60%">
-                      <el-option label="精装" value="精装">精装</el-option>
-                      <el-option label="中等装修" value="中等装修">中等装修</el-option>
-                      <el-option label="简装" value="简装">简装</el-option>
-                      <el-option label="清水" value="清水">清水</el-option>
-                    </el-select>
-                    <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else>
-                    <el-input style="width:100%" v-model="scope.row.compareC.valueA" />
-                  </div>
-                </template>
-              </el-table-column>
-              <el-table-column prop="target" label="评估对象" align="center">
-                <template scope="scope" style="float:right">
-                  <div v-if="needWeight.includes(scope.row.index)">
-                    <el-input style="width:60%" v-model="scope.row.target.valueA" />
-                    <el-input-number v-model="scope.row.target.weight" :min="1" size="small" controls-position="right"
-                      style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '市场状况'">
-                    <el-date-picker v-model="scope.row.target.valueA" type="month" style="width:60%" placeholder="选择月">
-                    </el-date-picker>
-                    <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '楼层/总楼层'">
-                    <el-input style="width:26%" v-model="scope.row.target.valueA" />
-                    <span style="margin-left:2%;margin-right:2%">/</span>
-                    <el-input style="width:26%" v-model="scope.row.target.valueB" />
-                    <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '修正后价格'">
-                    <span v-if="scope.row.target.valueA" style="color:red;font-weight:bold;font-size:20px">¥{{
-                      parseFloat(scope.row.target.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '权重'">
-                    <el-input-number v-if="false" v-model="scope.row.target.valueA" style="width:100%;" :min="0"
-                      :max="1" size="small" :step="0.1" controls-position="right"></el-input-number>
-                  </div>
-                  <div v-else-if="scope.row.index === '总价(元)' || scope.row.index === '单价(元)'">
-                    <span v-if="scope.row.target.valueA" style="color:red;font-weight:bold;font-size:16px">¥{{
-                      parseFloat(scope.row.target.valueA).toLocaleString() }}</span>
-                  </div>
-                  <div v-else-if="scope.row.index === '室内装饰'">
-                    <el-select v-model="scope.row.target.valueA" placeholder="请选择" style="width:60%">
-                      <el-option label="精装" value="精装">精装</el-option>
-                      <el-option label="中等装修" value="中等装修">中等装修</el-option>
-                      <el-option label="简装" value="简装">简装</el-option>
-                      <el-option label="清水" value="清水">清水</el-option>
-                    </el-select>
-                    <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
-                      controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
-                  </div>
-                  <div v-else>
-                    <el-input style="width:100%" v-model="scope.row.target.valueA" />
-                  </div>
-                </template>
-              </el-table-column>
-            </el-table>
-          </el-card>
+                  <el-input-number v-model="scope.row.compareC.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else>
+                  <el-input style="width:100%" v-model="scope.row.compareC.valueA" />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column prop="target" label="评估对象" align="center">
+              <template scope="scope" style="float:right">
+                <div v-if="needWeight.includes(scope.row.index)">
+                  <el-input style="width:60%" v-model="scope.row.target.valueA" />
+                  <el-input-number v-model="scope.row.target.weight" :min="1" size="small" controls-position="right"
+                    style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '市场状况'">
+                  <el-date-picker v-model="scope.row.target.valueA" type="month" style="width:60%" placeholder="选择月">
+                  </el-date-picker>
+                  <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '楼层/总楼层'">
+                  <el-input style="width:26%" v-model="scope.row.target.valueA" />
+                  <span style="margin-left:2%;margin-right:2%">/</span>
+                  <el-input style="width:26%" v-model="scope.row.target.valueB" />
+                  <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '修正后价格'">
+                  <span v-if="scope.row.target.valueA"
+                    style="color:red;font-weight:bold;font-size:20px">¥{{ parseFloat(scope.row.target.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '权重'">
+                  <el-input-number v-if="false" v-model="scope.row.target.valueA" style="width:100%;" :min="0" :max="1"
+                    size="small" :step="0.1" controls-position="right"></el-input-number>
+                </div>
+                <div v-else-if="scope.row.index === '总价(元)' || scope.row.index === '单价(元)'">
+                  <span v-if="scope.row.target.valueA"
+                    style="color:red;font-weight:bold;font-size:16px">¥{{ parseFloat(scope.row.target.valueA).toLocaleString() }}</span>
+                </div>
+                <div v-else-if="scope.row.index === '室内装饰'">
+                  <el-select v-model="scope.row.target.valueA" placeholder="请选择" style="width:60%">
+                    <el-option label="精装" value="精装">精装</el-option>
+                    <el-option label="中等装修" value="中等装修">中等装修</el-option>
+                    <el-option label="简装" value="简装">简装</el-option>
+                    <el-option label="清水" value="清水">清水</el-option>
+                  </el-select>
+                  <el-input-number v-model="scope.row.target.weight" :max="150" :min="1" size="small"
+                    controls-position="right" style="width:30%;margin-left:10%"></el-input-number>
+                </div>
+                <div v-else>
+                  <el-input style="width:100%" v-model="scope.row.target.valueA" />
+                </div>
+              </template>
+            </el-table-column>
+          </el-table>
         </el-form>
+          </div>
       </el-tab-pane>
       <el-tab-pane name="certificateInfo" class="pane-class" :lazy=true>
         <span slot="label"><i class="el-icon-postcard"></i> 证件信息</span>
@@ -757,9 +772,6 @@
           </div>
         </div>
         <div style="display: flex;margin-top: 100px; width: 100%;">
-          <!-- <div style="position:absolute;top:80px; left:6%">
-              <el-button type="text">一键生成</el-button> <el-button type="text" @click="downloadPkg()">全部下载</el-button>
-            </div> -->
           <el-card :body-style="{ padding: '0px' }" shadow="always"
             style="margin-left: 5%; margin-right: 5%; width: 20%;" v-if="hasStatement">
             <img :src="statementCardPNG" class="image">
@@ -852,68 +864,6 @@
         </el-table>
       </el-tab-pane>
     </el-tabs>
-    <el-dialog :visible.sync="inWarehouseDialog" width="30%" center top="35vh" custom-class="doWarehouseClass">
-      <div>
-        <i class="el-icon-warning" style="color:RGB(230,162,60);font-size:22px;margin-right:10px;"></i>
-        <span style="position:absolute;top:58px;padding-right:50px">{{ warehouseTip }}</span>
-      </div>
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="inWarehouseDialog = false">取 消</el-button>
-        <el-button type="primary" @click="doInWareHouse()">确 定</el-button>
-      </span>
-    </el-dialog>
-    <el-dialog :visible.sync="outWarehouseDialog" width="30%" center top="35vh" custom-class="doWarehouseClass">
-      <div>
-        <i class="el-icon-warning" style="color:RGB(230,162,60);font-size:22px;margin-right:10px;"></i>
-        <span style="position:absolute;top:58px">{{ warehouseTip }}</span>
-      </div>
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="outWarehouseDialog = false">取 消</el-button>
-        <el-button type="primary" @click="doOutWareHouse()">确 定</el-button>
-      </span>
-    </el-dialog>
-    <el-dialog :visible.sync="checkDialog" width="50%" center top="25vh" custom-class="doWarehouseClass">
-      <el-divider content-position="left">产品审核</el-divider>
-      <el-form ref="targetForm" :model="target">
-        <el-row>
-          <el-col :xs="24" :sm="12" :lg="24" :span="6">
-            <el-form-item label="坐落:" prop="location" label-width="140px" class="postInfo-container-item">
-              <el-input :value="target.location" class="filter-item" disabled readonly style=" width: 100%" />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估面积(平):" prop="acreage" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.acreage" disabled readonly></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估单价(元):" prop="price" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.price" disabled readonly></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估总价(元):" prop="amount" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.amount" disabled readonly></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :xs="24" :sm="12" :lg="24" :span="6">
-            <el-form-item label="备注:" prop="amount" label-width="140px" class="postInfo-container-item">
-              <span style="font-weight: bolder; color: red;">本人已对评估结果信息及报告文档完成审核,已确认无误。</span>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :xs="24" :sm="12" :lg="24" :span="6">
-            <el-button type="info" plain style="margin-left: 40%;" @click="checkDialog = false">取消</el-button>
-            <el-button type="success" plain @click="checkPass()">确认</el-button>
-          </el-col>
-        </el-row>
-      </el-form>
-    </el-dialog>
   </div>
 </template>
 <script>

+ 143 - 92
src/views/personal/todoDetail.vue

@@ -389,9 +389,9 @@
             </div>
           </div>
           <el-row class="row-style">
-            <el-col :xs="24" :sm="12" :lg="2" :span="6">
-              <el-form-item label="线上计算:" prop="acreage" label-width="140px" class="postInfo-container-item">
-                <el-switch v-model="target.isOnline" active-color="#13ce66" inactive-color="#ff4949"
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="流程:" prop="acreage" label-width="140px" class="postInfo-container-item" >
+                <el-switch v-model="target.isOnline"  style="margin-bottom: 5px;" active-text="线上" inactive-text="线下"
                   @change="calculateSwith()" 
                   :readonly="!(currentNode.nodeCode === 'DETERMINE_PRICE' || currentNode.nodeCode === 'GENERATE_STATEMENT'|| currentNode.nodeCode === 'WRITE_REPORT' || currentNode.nodeCode === 'WRITE_LETTER')"
                   :disabled="!(currentNode.nodeCode === 'DETERMINE_PRICE' || currentNode.nodeCode === 'GENERATE_STATEMENT'|| currentNode.nodeCode === 'WRITE_REPORT' || currentNode.nodeCode === 'WRITE_LETTER')"
@@ -400,9 +400,23 @@
                 </el-switch>
               </el-form-item>
             </el-col>
-            <el-col :xs="12" :sm="12" :lg="20" :span="6">
-              <el-form-item label="坐落:" prop="location" label-width="140px" class="postInfo-container-item">
-                <el-input :value="target.location" class="filter-item" disabled readonly style=" width: 100%" />
+          </el-row>
+          <el-row class="row-style">
+            <el-col :xs="12" :sm="12" :lg="18" :span="6">
+              <el-form-item label="项目名称:" prop="location" label-width="140px" class="postInfo-container-item">
+                <el-input v-model="personal.location" class="filter-item"  />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row class="row-style">
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="委托方1:" prop="bailorA" label-width="140px" class="postInfo-container-item">
+                <el-input v-model="personal.bailorA" class="filter-item"  />
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="6" :span="6">
+              <el-form-item label="委托方2:" prop="bailorB" label-width="140px" class="postInfo-container-item">
+                <el-input v-model="personal.bailorB" class="filter-item"  />
               </el-form-item>
             </el-col>
           </el-row>
@@ -410,32 +424,35 @@
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估面积(平):" prop="acreage" label-width="140px"
                 :rules="{ required: true, message: '评估面积不能为空', trigger: 'blur' }" class="postInfo-container-item">
-                <el-input-number v-model="target.acreage" size="medium" controls-position="right" :min="0" :step="0.1"
-                  :max="10000"></el-input-number>
+                <el-input-number v-model="target.acreage" size="medium" controls-position="right" :min="0" 
+                  :max="10000" style="width: 100%;"></el-input-number>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估单价(元):" prop="price" label-width="140px"
                 :rules="{ required: true, message: '评估单价不能为空', trigger: 'blur' }" class="postInfo-container-item">
                 <el-input-number v-model="target.price" size="medium" controls-position="right"
-                  :min="0"></el-input-number>
+                  :min="0" style="width: 100%;"></el-input-number>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
               <el-form-item label="评估总价(元):" prop="amount" label-width="140px"
                 :rules="{ required: true, message: '评估总价不能为空', trigger: 'blur' }" class="postInfo-container-item">
                 <el-input-number v-model="target.amount" size="medium" controls-position="right"
-                  :min="0"></el-input-number>
+                  :min="0" style="width: 100%;"></el-input-number>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6" :span="6">
-              <el-button v-show="!target.isOnline" type="primary" round @click="savePrice()"
-                v-if="currentNode.nodeCode === 'DETERMINE_PRICE'">保存价格</el-button>
+              <el-button  type="primary" round @click="savePrice()" style="margin-left: 20px;"
+                v-if="target.isOnline && ( currentNode.nodeCode === 'DETERMINE_PRICE' || currentNode.nodeCode === 'REVIEW_STATEMENT' 
+                || currentNode.nodeCode === 'CHECK_REPORT' || currentNode.nodeCode === 'CHECK_LETTER')">保存</el-button>
             </el-col>
           </el-row>
         </el-form>
-        <el-form ref="compareToForm" :model="compareList" v-if="target.isOnline">
-          <div class="createMajor-main-container">
+      </el-tab-pane>
+      <el-tab-pane name="comparable" class="pane-class" :lazy=true :disabled="!target.isOnline">
+        <span slot="label"><i class="el-icon-office-building"></i> 可比实例</span>
+        <div class="createMajor-main-container">
             <div class="postInfo-container">
               <div>
                 <el-divider content-position="left">
@@ -446,7 +463,8 @@
                 </el-divider>
               </div>
             </div>
-          </div>
+        </div>
+        <el-form ref="compareToForm" :model="compareList" v-if="target.isOnline">
           <el-row class="row-style">
             <el-col :xs="24" :sm="12" :lg="4" :span="6">
               <el-form-item label="修正系数:" prop="fixValue" label-width="120px"
@@ -710,7 +728,7 @@
           </el-table>
         </el-form>
       </el-tab-pane>
-      <el-tab-pane name="certificateInfo" class="pane-class" :lazy=true>
+      <el-tab-pane name="certificateInfo" class="pane-class" :lazy=true :disabled="!target.isOnline">
         <span slot="label"><i class="el-icon-postcard"></i> 证件信息</span>
         <el-tabs v-model="certificateInfo">
           <el-tab-pane name="houseCertificate" class="pane-class" :lazy=true>
@@ -732,7 +750,7 @@
           </el-tab-pane>
         </el-tabs>
       </el-tab-pane>
-      <el-tab-pane name="otherInfo" class="pane-class" :lazy=true>
+      <el-tab-pane name="otherInfo" class="pane-class" :lazy=true :disabled="!target.isOnline">
         <span slot="label"><i class="el-icon-chat-line-square"></i> 附加信息</span>
         <el-tabs v-model="otherInfo">
           <el-tab-pane name="entityInfo" class="pane-class" :lazy=true>
@@ -754,7 +772,7 @@
       </el-tab-pane>
       <el-tab-pane name="producution" class="pane-class" :lazy=true>
         <span slot="label"><i class="el-icon-document-checked"></i> 产品信息</span>
-        <div class="createMajor-main-container" v-if="currentNode.code==='QUOTATION_FEEDBACK' || currentNode.code ==='STATEMENT_FEEDBACK'">
+        <div class="createMajor-main-container" v-if="currentNode.nodeCode==='QUOTATION_FEEDBACK' || currentNode.nodeCode ==='STATEMENT_FEEDBACK'">
           <div class="postInfo-container">
             <div>
               <el-divider content-position="left">
@@ -766,9 +784,9 @@
             </div>
             <el-form ref="feedbackFrom" class="form-container" style="margin-top:30px" :rules="rules">
               <el-row>
-                <el-col :xs="24" :sm="12" :lg="6" :span="6">
+                <el-col :xs="24" :sm="12" :lg="8" :span="6">
                   <el-form-item label="出具产品类型:" prop="production" label-width="160px" class="postInfo-container-item">
-                    <el-checkbox-group v-model="feedback">
+                    <el-checkbox-group v-model="feedback" @change="saveFeedback()">
                       <el-checkbox-button label="STATEMENT" name="production">价值意见书</el-checkbox-button>
                       <el-checkbox-button label="REPORT" name="production">报告</el-checkbox-button>
                       <el-checkbox-button label="LETTER" name="production">复评函</el-checkbox-button>
@@ -779,10 +797,6 @@
                     </el-checkbox-group>
                   </el-form-item>
                 </el-col>
-                <el-col :xs="24" :sm="12" :lg="4" :span="6"
-                  v-if="currentNode.nodeCode === 'QUOTATION_FEEDBACK' || currentNode.nodeCode === 'STATEMENT_FEEDBACK'">
-                  <el-button type="primary" round @click="saveFeedback()">保存反馈</el-button>
-                </el-col>
               </el-row>
             </el-form>
           </div>
@@ -799,7 +813,7 @@
             </div>
           </div>
         </div>
-        <div v-if="showProds" style="display: flex;margin-top: 100px; width: 100%;">
+        <div v-if="showProds" style="display: flex;margin-top: 50px;margin-bottom: 20px; width: 100%;">
           <el-card :body-style="{ padding: '0px' }" shadow="always" style="margin-left: 5%; margin-right: 5%; width: 20%;"
             v-if="hasStatement">
             <img :src="statementCardPNG" class="image">
@@ -954,7 +968,7 @@
     <el-dialog :visible.sync="inWarehouseDialog" width="30%" center top="35vh" custom-class="doWarehouseClass">
       <div>
         <i class="el-icon-warning" style="color:RGB(230,162,60);font-size:22px;margin-right:10px;"></i>
-        <span style="position:absolute;top:58px;padding-right:50px">{{ warehouseTip }}</span>
+        <span style="position:absolute;top:58px;padding-right:50px;font-size: 20px">{{ warehouseTip }}</span>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="inWarehouseDialog = false">取 消</el-button>
@@ -964,7 +978,7 @@
     <el-dialog :visible.sync="outWarehouseDialog" width="30%" center top="35vh" custom-class="doWarehouseClass">
       <div>
         <i class="el-icon-warning" style="color:RGB(230,162,60);font-size:22px;margin-right:10px;"></i>
-        <span style="position:absolute;top:58px">{{ warehouseTip }}</span>
+        <span style="position:absolute;top:58px;font-size: 20px">{{ warehouseTip }}</span>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="outWarehouseDialog = false">取 消</el-button>
@@ -976,25 +990,49 @@
       <el-form ref="targetForm" :model="target">
         <el-row>
           <el-col :xs="24" :sm="12" :lg="24" :span="6">
-            <el-form-item label="坐落:" prop="location" label-width="140px" class="postInfo-container-item">
+            <el-form-item label="项目名称:" prop="location" label-width="140px" class="postInfo-container-item">
               <el-input :value="target.location" class="filter-item" disabled readonly style=" width: 100%" />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
+            <el-col :xs="24" :sm="12" :lg="8" :span="6">
+              <el-form-item label="委托方1:" prop="bailorA" label-width="140px" class="postInfo-container-item">
+                <el-input :value="personal.bailorA" disabled readonly class="filter-item"  />
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="8" :span="6">
+              <el-form-item label="委托方2:" prop="bailorB" label-width="140px" class="postInfo-container-item">
+                <el-input :value="personal.bailorB" disabled readonly class="filter-item"  />
+              </el-form-item>
+            </el-col>
+          </el-row>
+        <el-row>
           <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估面积(平):" prop="acreage" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.acreage" disabled readonly></el-input>
+            <el-form-item label="评估面积:" prop="acreage" label-width="140px" class="postInfo-container-item">
+              <el-input v-model="target.acreage" disabled readonly>
+                <template slot="append">
+                  <span>平</span>
+                </template>
+              </el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估单价(元):" prop="price" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.price" disabled readonly></el-input>
+            <el-form-item label="评估单价:" prop="price" label-width="140px" class="postInfo-container-item">
+              <el-input v-model="target.price" disabled readonly>
+                <template slot="append">
+                  <span>元</span>
+                </template>
+              </el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="8" :span="6">
-            <el-form-item label="评估总价(元):" prop="amount" label-width="140px" class="postInfo-container-item">
-              <el-input v-model="target.amount" disabled readonly></el-input>
+            <el-form-item label="评估总价:" prop="amount" label-width="140px" class="postInfo-container-item">
+              <el-input v-model="target.amount" disabled readonly>
+                <template slot="append">
+                  <span>元</span>
+                </template>
+              </el-input>
             </el-form-item>
           </el-col>
         </el-row>
@@ -1007,8 +1045,8 @@
         </el-row>
         <el-row>
           <el-col :xs="24" :sm="12" :lg="24" :span="6">
-            <el-button type="info" plain style="margin-left: 40%;" @click="checkDialog = false">取消</el-button>
-            <el-button type="success" plain @click="checkPass()">确认</el-button>
+            <el-button type="info"  style="margin-left: 40%;" @click="checkDialog = false">取消</el-button>
+            <el-button type="success"  @click="checkPass()">确认</el-button>
           </el-col>
         </el-row>
       </el-form>
@@ -1073,6 +1111,19 @@ export default {
     feedback: {
       handler(newVal, oldVal) {
         if (newVal != oldVal) {
+          if (this.currentNode.nodeCode === 'STATEMENT_FEEDBACK' && !newVal.includes("STATEMENT")) {
+            this.feedback.push("STATEMENT");
+          }
+          if ((newVal.includes("REPORT") && newVal.includes("LETTER")) ||
+              (newVal.includes("REPORT") && newVal.includes("NONE")) ||
+              (newVal.includes("LETTER") && newVal.includes("NONE"))) {
+              this.$message({
+                message: '只能选择其一',
+                type: 'error'
+              });
+            this.feedback = oldVal;
+          }
+
           this.nodeBusinessInfo.production = this.feedback;
           this.$refs.board.getInstanceQueue();
           if (this.feedback.includes("STATEMENT")) {
@@ -1090,10 +1141,7 @@ export default {
           } else {
             this.hasLetter = false;
           }
-          // if (this.feedback.includes("REPORT") && this.feedback.includes("LETTER")) {
-          //   this.$message.error('报告和复评函只能选其一');
-          //   this.feedback = oldVal;
-          // }
+        
         }
         if (this.feedback.length > 0) {
           this.showProds = true
@@ -1220,6 +1268,8 @@ export default {
         id: null,
         personalId: null,
         location: null,
+        bailorA: null,
+        bailorB: null,
         acreage: null,
         amount: null,
         price: null,
@@ -1426,7 +1476,7 @@ export default {
         inRingBuilding:null,
         outRingBuilding:null,
         remark:null
-      },
+      }
 
     }
   },
@@ -1599,20 +1649,20 @@ export default {
               callback(verify);
               return;
             }
-          case "GENERATE_STATEMENT":
-            if (this.statementProd == null || this.statementProd.files.length === 0) {
-              this.$notify({
-                title: '提示',
-                message: '请生成或上传房地产意见书后,再提交流程',
-                type: 'error',
-                duration: 3000
-              });
-              verify.state = false;
-            }
-            callback(verify);
-            return;
+          // case "GENERATE_STATEMENT":
+          //   if (this.statementProd == null || this.statementProd.files.length === 0) {
+          //     this.$notify({
+          //       title: '提示',
+          //       message: '请生成或上传房地产意见书后,再提交流程',
+          //       type: 'error',
+          //       duration: 3000
+          //     });
+          //     verify.state = false;
+          //   }
+          //   callback(verify);
+          //   return;
           case "REVIEW_STATEMENT":
-            if (this.statementProd.checkState === '待审核') {
+            if (this.statementProd==null || this.statementProd.checkState === '待审核') {
               verify.state = false;
               callback(verify);
               this.checkProDTO.production = "STATEMENT";
@@ -1622,34 +1672,36 @@ export default {
             }
             callback(verify);
             return;
-          case "WRITE_REPORT":
-            if (this.technicReportProd == null || this.technicReportProd.files.length === 0) {
-              this.$notify({
-                title: '提示',
-                message: '请生成或上传技术报告后,再提交流程',
-                type: 'error',
-                duration: 3000
-              });
-              verify.state = false;
-              callback(verify);
-              return
-            }
-            if (this.finalReprotProd == null || this.finalReprotProd.files.length === 0) {
-              this.$notify({
-                title: '提示',
-                message: '请生成或上传结果报告后,再提交流程',
-                type: 'error',
-                duration: 3000
-              });
-              verify.state = false;
-              callback(verify);
-              return
-            }
-            callback(verify);
-            return;
+          // case "WRITE_REPORT":
+          //   if (this.technicReportProd == null || this.technicReportProd.files.length === 0) {
+          //     this.$notify({
+          //       title: '提示',
+          //       message: '请生成或上传技术报告后,再提交流程',
+          //       type: 'error',
+          //       duration: 3000
+          //     });
+          //     verify.state = false;
+          //     callback(verify);
+          //     return
+          //   }
+          //   if (this.finalReprotProd == null || this.finalReprotProd.files.length === 0) {
+          //     this.$notify({
+          //       title: '提示',
+          //       message: '请生成或上传结果报告后,再提交流程',
+          //       type: 'error',
+          //       duration: 3000
+          //     });
+          //     verify.state = false;
+          //     callback(verify);
+          //     return
+          //   }
+          //   callback(verify);
+          //   return;
           case "CHECK_REPORT":
-            console.log(this.technicReportProd.checkState)
-            if (this.technicReportProd.checkState === '待审核' || this.finalReprotProd.checkState === '待审核') {
+            console.log(this.technicReportProd)
+            console.log(this.finalReprotProd)
+            if (this.technicReportProd.checkState==null || this.finalReprotProd.checkState==null ||
+            this.technicReportProd.checkState === '待审核' || this.finalReprotProd.checkState === '待审核') {
               verify.state = false;
               callback(verify);
               this.checkProDTO.production = "REPORT";
@@ -1733,7 +1785,7 @@ export default {
     },
     jumpTabs() {
       const orderTag = ['OPENING_ORDER', 'DEPARTMENT_ALLOCATION'];
-      const evaluate = ['DETERMINE_PRICE'];
+      const evaluate = ['DETERMINE_PRICE','REVIEW_STATEMENT','CHECK_REPORT','CHECK_LETTER'];
       const certificates = ['GENERATE_STATEMENT', 'WRITE_REPORT', 'WRITE_LETTER']
       const scenesTag = ['SPOT_RECONNAISSANCE']
       const nodeCode = this.$route.query.currentNodeCode;
@@ -1798,6 +1850,9 @@ export default {
     savePrice() {
       this.$refs.targetForm.validate(valid => {
         if (valid) {
+          this.target.location = this.personal.location;
+          this.target.bailorA = this.personal.bailorA;
+          this.target.bailorB = this.personal.bailorB;
           let taskRecord = this.buildTaskRecordDTO(this.target);
           this.$api.personalTarget.price(taskRecord).then(res => {
             if (res.code === 200 && res.data) {
@@ -2120,32 +2175,28 @@ export default {
     warehouse() {
       const code = this.currentNode.nodeCode;
       if (code === 'STATEMENT_IN') {
-        const fileName = this.statementProd.files[0].name
-        this.warehouseTip = "请确认将[" + fileName + "]入库?";
+        const orderId = this.personal.orderId
+        this.warehouseTip = "请确认将项目编号为[" + orderId + "]的意见书入库?";
         this.checkProDTO.production = "STATEMENT";
         this.checkProDTO.targetId = this.target.id;
         this.inWarehouseDialog = true;
       }
+      const orderId = this.personal.orderId
       if (code === 'STATEMENT_OUT') {
-        const fileName = this.statementProd.files[0].name
-        this.warehouseTip = "请确认将[" + fileName + "]出库?";
+        this.warehouseTip = "请确认将项目编号为[" + orderId + "]的意见书出库?";
         this.checkProDTO.production = "STATEMENT";
         this.checkProDTO.targetId = this.target.id;
         this.outWarehouseDialog = true;
       }
       if (code === 'REPORT_IN') {
-        const technicName = this.technicReportProd.files[0].name;
-        const fianlName = this.finalReprotProd.files[0].name;
-        this.warehouseTip = "请确认将[" + technicName + "],[" + fianlName + "]入库?";
+        this.warehouseTip = "请确认将项目编号为[" + orderId + "]的报告入库?";
         this.checkProDTO.production = "REPORT";
         this.checkProDTO.targetId = this.target.id;
 
         this.inWarehouseDialog = true;
       }
       if (code === 'REPORT_OUT') {
-        const technicName = this.technicReportProd.files[0].name
-        const fianlName = this.finalReprotProd.files[0].name;
-        this.warehouseTip = "请确认将[" + technicName + "],[" + fianlName + "]出库?";
+        this.warehouseTip = "请确认将项目编号为[" + orderId + "]的报告出库?";
         this.checkProDTO.production = "REPORT";
         this.checkProDTO.targetId = this.target.id;
         this.outWarehouseDialog = true;