From 2adda5537ed677cb5b3a5a0ff434f2da92e87bf3 Mon Sep 17 00:00:00 2001
From: pyt <626651354@qq.com>
Date: 星期一, 24 三月 2025 16:36:09 +0800
Subject: [PATCH] Merge branch 'main' of http://120.76.84.145:10101/gitblit/r/H5/chongzhouResettle

---
 src/views/placement-batch/applayPerson.vue |  505 ++++++++++++++++++++++++++++++--------------------------
 1 files changed, 271 insertions(+), 234 deletions(-)

diff --git a/src/views/placement-batch/applayPerson.vue b/src/views/placement-batch/applayPerson.vue
index 43341c0..47e9d16 100644
--- a/src/views/placement-batch/applayPerson.vue
+++ b/src/views/placement-batch/applayPerson.vue
@@ -5,41 +5,41 @@
         <!-- 基本信息 -->
         <el-row :gutter="20">
           <el-col :span="6">
-            <el-form-item label="镇(街道)" prop="town" required>
-              <el-input v-model="form.town" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="镇(街道)" prop="street" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.street" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
           <el-col :span="6">
-            <el-form-item label="所在村(社区)" prop="village" required>
-              <el-input v-model="form.village" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="所在村(社区)" prop="community" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.community" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="拆迁项目名称" prop="projectName" required>
-              <el-input v-model="form.projectName" placeholder="请输入" clearable style="width: 250px;" />
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.projectName" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="拆迁时间" prop="demolitionTime">
-                <el-date-picker v-model="form.demolitionTime" type="date" placeholder="请选择拆迁时间" style="width: 250px;" />
+              <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.demolitionTime" type="date" placeholder="请选择拆迁时间" style="width:180px;" />
             </el-form-item>
           </el-col>
         </el-row>
 
         <el-row :gutter="20">
           <el-col :span="6">
-            <el-form-item label="户主姓名" prop="householderName" required>
-              <el-input v-model="form.householderName" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="户主姓名" prop="householdHead" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.householdHead" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="户主身份号" prop="idCard" required>
-              <el-input v-model="form.idCard" placeholder="请输入" clearable style="width: 250px;" />
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.idCard" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
           <el-col :span="6">
-            <el-form-item label="联系电话" prop="phone" required>
-              <el-input v-model="form.phone" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="联系电话" prop="mobile" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.mobile" placeholder="请输入" clearable style="width:180px;" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -48,28 +48,28 @@
         <div class="section-title">本次安置人数</div>
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="集体经济组织成员" prop="collectiveMember" required>
+            <el-form-item label="集体经济组织成员" prop="currentCollectiveNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.collectiveMember" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">人</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.currentCollectiveNum" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">人</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="非集体经济组织成员" prop="nonCollectiveMember" required>
+            <el-form-item label="非集体经济组织成员" prop="currentNoCollectiveNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.nonCollectiveMember" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">人</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.currentNoCollectiveNum" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">人</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="合计" prop="totalMember">
+            <el-form-item label="合计" prop="currentCount">
               <div class="input-with-unit">
-                <el-input v-model="form.totalMember" placeholder="自动计算" disabled style="width: 250px;" >
-                    <template slot="append">人</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.currentCount" placeholder="自动计算" disabled style="width: 250px;">
+                  <template slot="append">人</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -78,15 +78,15 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="待安置家庭成员姓名" prop="familyMembers" required>
-              <el-input v-model="form.familyMembers" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="待安置家庭成员姓名" prop="waitFamilyNames" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.waitFamilyNames" placeholder="请输入" clearable style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="待安置人员应安置面积合计" label-width="215px" prop="totalSettlementArea" required>
+            <el-form-item label="待安置人员应安置面积合计" label-width="215px" prop="waitFamilyArea" required>
               <div class="input-with-unit">
-                <el-input v-model="form.totalSettlementArea" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">㎡</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.waitFamilyArea" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">㎡</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -97,28 +97,28 @@
         <div class="section-title">补偿金额</div>
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="新建商品住房/商业用房/停车位" label-width="215px" prop="newBuildingAmount" required>
+            <el-form-item label="新建商品住房/商业用房/停车位" label-width="215px" prop="compensationNewAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newBuildingAmount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.compensationNewAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="二手住房"  label-width="215px" prop="secondHandAmount" required>
+            <el-form-item label="二手住房" label-width="215px" prop="compensationOldAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.secondHandAmount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.compensationOldAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="合计"  label-width="215px" prop="totalAmount">
+            <el-form-item label="合计" label-width="215px" prop="compensationSum">
               <div class="input-with-unit">
-                <el-input v-model="form.totalAmount" placeholder="自动计算" disabled style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.compensationSum" placeholder="自动计算" disabled style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -127,28 +127,28 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="25%首付款"  label-width="215px" prop="downPayment" required>
+            <el-form-item label="25%首付款" label-width="215px" prop="downPaymentAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.downPayment" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.downPaymentAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="每季度需支付款项"  label-width="215px" prop="quarterlyPayment" required>
+            <el-form-item label="每季度需支付款项" label-width="215px" prop="quarterPayAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.quarterlyPayment" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.quarterPayAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="过渡补贴"  label-width="215px" prop="transitionalSubsidy" required>
+            <el-form-item label="过渡补贴" label-width="215px" prop="subsidyAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.transitionalSubsidy" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.subsidyAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -157,28 +157,18 @@
 
         <el-row>
           <el-col :span="24">
-            <el-form-item label="备注"  label-width="215px" prop="remarks">
-              <el-input
-                type="textarea"
-                v-model="form.remarks"
-                placeholder="请输入备注信息"
-                :rows="3"
-                style="width: 100%;"
-              />
+            <el-form-item label="备注" label-width="215px" prop="remark">
+              <el-input :disabled="$route.query.type === 'detail'" type="textarea" v-model="form.remark" placeholder="请输入备注信息" :rows="3" style="width: 100%;" />
             </el-form-item>
           </el-col>
         </el-row>
 
-        <!-- 领证发放时间 -->
+        <!-- 凭证发放时间 -->
         <el-row>
           <el-col :span="8">
-            <el-form-item label="领证发放时间"  label-width="215px" prop="certificateTime" required>
-              <el-date-picker
-                v-model="form.certificateTime"
-                type="date"
-                placeholder="请选择领证发放时间"
-                style="width: 250px;"
-              />
+            <el-form-item label="凭证发放时间" label-width="215px" prop="certificateTime" required>
+              <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.certificateTime" type="date" placeholder="请选择凭证发放时间"
+                style="width: 250px;" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -187,20 +177,15 @@
         <div class="section-title">购房信息</div>
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="购房时间" prop="purchaseTime" required>
-              <el-date-picker
-                v-model="form.purchaseTime"
-                type="date"
-                placeholder="请选择购房时间"
-                style="width: 250px;"
-              />
+            <el-form-item label="购房时间" prop="buyTime" required>
+              <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.buyTime" type="date" placeholder="请选择购房时间" style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="成交金额" prop="dealAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.dealAmount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.dealAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -209,24 +194,24 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="楼盘名称" prop="newBuildingName" required>
-              <el-input v-model="form.newBuildingName" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="新建商品住房: 楼盘名称" prop="newHousingName" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.newHousingName" placeholder="请输入" clearable style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="面积" prop="newBuildingArea" required>
+            <el-form-item label="面积" prop="newHousingArea" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newBuildingArea" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">㎡</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.newHousingArea" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">㎡</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="套数" prop="newBuildingCount" required>
+            <el-form-item label="套数" prop="newHousingNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newBuildingCount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">套</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.newHousingNum" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">套</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -235,24 +220,24 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="小区名称" prop="secondHandName" required>
-              <el-input v-model="form.secondHandName" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="二手住房: 小区名称" prop="oldHousingName" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.oldHousingName" placeholder="请输入" clearable style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="面积" prop="secondHandArea" required>
+            <el-form-item label="面积" prop="oldHousingArea" required>
               <div class="input-with-unit">
-                <el-input v-model="form.secondHandArea" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">㎡</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.oldHousingArea" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">㎡</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="套数" prop="secondHandCount" required>
+            <el-form-item label="套数" prop="oldHousingNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.secondHandCount" placeholder="请输入" clearable style="width: 160px;" >
-                    <template slot="append">套</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.oldHousingNum" placeholder="请输入" clearable style="width: 160px;">
+                  <template slot="append">套</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -261,33 +246,33 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="新建商业用房" prop="newCommercialName" required>
-              <el-input v-model="form.newCommercialName" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="新建商业用房: 楼盘名称" prop="buildHousingName" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.buildHousingName" placeholder="请输入" clearable style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="金额" prop="newCommercialAmount" required>
+            <el-form-item label="金额" prop="buildHousingAmount" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newCommercialAmount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.buildHousingAmount" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="面积" prop="newCommercialArea" required>
+            <el-form-item label="面积" prop="buildHousingArea" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newCommercialArea" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">㎡</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.buildHousingArea" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">㎡</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="套数" prop="newCommercialCount" required>
+            <el-form-item label="套数" prop="buildHousingNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newCommercialCount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">套</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.buildHousingNum" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">套</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -296,24 +281,24 @@
 
         <el-row :gutter="20">
           <el-col :span="8">
-            <el-form-item label="新建停车位" prop="newParkingName" required>
-              <el-input v-model="form.newParkingName" placeholder="请输入" clearable style="width: 250px;" />
+            <el-form-item label="新建停车位: 楼盘名称" prop="newStopName" required>
+              <el-input :disabled="$route.query.type === 'detail'" v-model="form.newStopName" placeholder="请输入" clearable style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="金额" prop="newParkingAmount" required>
+            <el-form-item label="金额" prop="newStopArea" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newParkingAmount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">万元</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.newStopArea" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">万元</template>
                 </el-input>
               </div>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="个数" prop="newParkingCount" required>
+            <el-form-item label="个数" prop="newStopNum" required>
               <div class="input-with-unit">
-                <el-input v-model="form.newParkingCount" placeholder="请输入" clearable style="width: 250px;" >
-                    <template slot="append">套</template>
+                <el-input :disabled="$route.query.type === 'detail'" v-model="form.newStopNum" placeholder="请输入" clearable style="width: 250px;">
+                  <template slot="append">套</template>
                 </el-input>
               </div>
             </el-form-item>
@@ -324,75 +309,41 @@
         <div class="section-title">补偿款支付</div>
         <el-row :gutter="20">
           <el-col :span="12">
-            <el-form-item label="自主购房协议签订时间" prop="agreementSignTime" required>
-              <el-date-picker
-                v-model="form.agreementSignTime"
-                type="date"
-                placeholder="请选择时间"
-                style="width: 250px;"
-              />
+            <el-form-item label="自主购房协议签订时间" prop="signTime" required>
+              <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.signTime" type="date" placeholder="请选择时间" style="width: 250px;" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="25%补偿款及过渡补贴支付时间" label-width="220px" prop="downPaymentTime" required>
-              <el-date-picker
-                v-model="form.downPaymentTime"
-                type="date"
-                placeholder="请选择时间"
-                style="width: 250px;"
-              />
+            <el-form-item label="25%补偿款及过渡补贴支付时间" label-width="220px" prop="compensationPayTime" required>
+              <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.compensationPayTime" type="date" placeholder="请选择时间"
+                style="width: 250px;" />
             </el-form-item>
           </el-col>
         </el-row>
 
         <el-row :gutter="20">
           <el-col :span="24">
-            <el-form-item label="剩余款项支付时间:" prop="remainingPaymentTime">
+            <el-form-item label="剩余款项支付时间:" prop="remainingTime1">
               <el-row :gutter="20">
                 <el-col :span="4">
                   <div class="payment-label">第一年</div>
-                  <el-date-picker
-                    v-model="form.firstYearPayment"
-                    type="date"
-                    placeholder="请选择时间"
-                    style="width: 200px;"
-                  />
+                  <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.remainingTime1" type="date" placeholder="请选择时间" style="width: 200px;" />
                 </el-col>
                 <el-col :span="4">
                   <div class="payment-label">第二年</div>
-                  <el-date-picker
-                    v-model="form.secondYearPayment"
-                    type="date"
-                    placeholder="请选择时间"
-                    style="width: 200px;"
-                  />
+                  <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.remainingTime2" type="date" placeholder="请选择时间" style="width: 200px;" />
                 </el-col>
                 <el-col :span="4">
                   <div class="payment-label">第三年</div>
-                  <el-date-picker
-                    v-model="form.thirdYearPayment"
-                    type="date"
-                    placeholder="请选择时间"
-                    style="width: 200px;"
-                  />
+                  <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.remainingTime3" type="date" placeholder="请选择时间" style="width: 200px;" />
                 </el-col>
                 <el-col :span="4">
                   <div class="payment-label">第四年</div>
-                  <el-date-picker
-                    v-model="form.fourthYearPayment"
-                    type="date"
-                    placeholder="请选择时间"
-                    style="width: 200px;"
-                  />
+                  <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.remainingTime4" type="date" placeholder="请选择时间" style="width: 200px;" />
                 </el-col>
                 <el-col :span="4">
                   <div class="payment-label">第五年</div>
-                  <el-date-picker
-                    v-model="form.fifthYearPayment"
-                    type="date"
-                    placeholder="请选择时间"
-                    style="width: 200px;"
-                  />
+                  <el-date-picker :disabled="$route.query.type === 'detail'" v-model="form.remainingTime5" type="date" placeholder="请选择时间" style="width: 200px;" />
                 </el-col>
               </el-row>
             </el-form-item>
@@ -401,7 +352,8 @@
 
         <!-- 按钮区域 -->
         <div class="form-footer">
-          <el-button type="primary" @click="submitForm">提交</el-button>
+          <el-button v-if="$route.query.type !== 'detail'" type="primary" @click="submitForm">提交</el-button>
+          <el-button v-else @click="$router.back()">返回</el-button>
         </div>
       </el-form>
     </el-card>
@@ -409,133 +361,198 @@
 </template>
 
 <script>
+import { addPlacementBatchHouse, updatePlacementBatchHouse, getPlacementBatchHouseDetail } from '@/api/placement-details'
 export default {
   name: 'ApplayPerson',
   data() {
     return {
       form: {
-        town: '',
-        village: '',
+        street: '',
+        community: '',
         projectName: '',
         demolitionTime: '',
-        householderName: '',
+        householdHead: '',
         idCard: '',
-        phone: '',
-        collectiveMember: '',
-        nonCollectiveMember: '',
-        totalMember: '',
-        familyMembers: '',
-        totalSettlementArea: '',
-        newBuildingAmount: '',
-        secondHandAmount: '',
-        totalAmount: '',
-        downPayment: '',
-        quarterlyPayment: '',
-        transitionalSubsidy: '',
-        remarks: '',
+        mobile: '',
+        currentCollectiveNum: '',
+        currentNoCollectiveNum: '',
+        currentCount: '',
+        waitFamilyNames: '',
+        waitFamilyArea: '',
+        compensationNewAmount: '',
+        compensationOldAmount: '',
+        compensationSum: '',
+        downPaymentAmount: '',
+        quarterPayAmount: '',
+        subsidyAmount: '',
+        remark: '',
         certificateTime: '',
-        purchaseTime: '',
+        buyTime: '',
         dealAmount: '',
-        newBuildingName: '',
-        newBuildingArea: '',
-        newBuildingCount: '',
-        secondHandName: '',
-        secondHandArea: '',
-        secondHandCount: '',
-        newCommercialName: '',
-        newCommercialAmount: '',
-        newCommercialArea: '',
-        newCommercialCount: '',
-        newParkingName: '',
-        newParkingAmount: '',
-        newParkingCount: '',
-        agreementSignTime: '',
-        downPaymentTime: '',
-        firstYearPayment: '',
-        secondYearPayment: '',
-        thirdYearPayment: '',
-        fourthYearPayment: '',
-        fifthYearPayment: '',
+        newHousingName: '',
+        newHousingArea: '',
+        newHousingNum: '',
+        oldHousingName: '',
+        oldHousingArea: '',
+        oldHousingNum: '',
+        buildHousingName: '',
+        buildHousingAmount: '',
+        buildHousingArea: '',
+        buildHousingNum: '',
+        newStopName: '',
+        newStopArea: '',
+        newStopNum: '',
+        signTime: '',
+        compensationPayTime: '',
+        remainingTime1: '',
+        remainingTime2: '',
+        remainingTime3: '',
+        remainingTime4: '',
+        remainingTime5: ''
       },
       rules: {
-        town: [{ required: true, message: '请输入镇(街道)', trigger: 'blur' }],
-        village: [{ required: true, message: '请输入所在村(社区)', trigger: 'blur' }],
+        street: [{ required: true, message: '请输入镇(街道)', trigger: 'blur' }],
+        community: [{ required: true, message: '请输入所在村(社区)', trigger: 'blur' }],
         projectName: [{ required: true, message: '请输入拆迁项目名称', trigger: 'blur' }],
-        householderName: [{ required: true, message: '请输入户主姓名', trigger: 'blur' }],
+        demolitionTime: [{ required: true, message: '请选择拆迁时间', trigger: 'change' }],
+        householdHead: [{ required: true, message: '请输入户主姓名', trigger: 'blur' }],
         idCard: [
           { required: true, message: '请输入户主身份号', trigger: 'blur' },
           { pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: '请输入正确的身份证号', trigger: 'blur' }
         ],
-        phone: [
+        mobile: [
           { required: true, message: '请输入联系电话', trigger: 'blur' },
           { pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号码', trigger: 'blur' }
         ],
-        collectiveMember: [{ required: true, message: '请输入集体经济组织成员人数', trigger: 'blur' }],
-        nonCollectiveMember: [{ required: true, message: '请输入非集体经济组织成员人数', trigger: 'blur' }],
-        familyMembers: [{ required: true, message: '请输入待安置家庭成员姓名', trigger: 'blur' }],
-        totalSettlementArea: [{ required: true, message: '请输入待安置人员应安置面积合计', trigger: 'blur' }],
-        newBuildingAmount: [{ required: true, message: '请输入新建商品住房/商业用房/停车位金额', trigger: 'blur' }],
-        secondHandAmount: [{ required: true, message: '请输入二手住房金额', trigger: 'blur' }],
-        downPayment: [{ required: true, message: '请输入25%首付款', trigger: 'blur' }],
-        quarterlyPayment: [{ required: true, message: '请输入每季度需支付款项', trigger: 'blur' }],
-        transitionalSubsidy: [{ required: true, message: '请输入过渡补贴', trigger: 'blur' }],
-        certificateTime: [{ required: true, message: '请选择领证发放时间', trigger: 'change' }],
-        purchaseTime: [{ required: true, message: '请选择购房时间', trigger: 'change' }],
-        dealAmount: [{ required: true, message: '请输入成交金额', trigger: 'blur' }],
-        newBuildingName: [{ required: true, message: '请输入楼盘名称', trigger: 'blur' }],
-        newBuildingArea: [{ required: true, message: '请输入面积', trigger: 'blur' }],
-        newBuildingCount: [{ required: true, message: '请输入套数', trigger: 'blur' }],
-        secondHandName: [{ required: true, message: '请输入小区名称', trigger: 'blur' }],
-        secondHandArea: [{ required: true, message: '请输入面积', trigger: 'blur' }],
-        secondHandCount: [{ required: true, message: '请输入套数', trigger: 'blur' }],
-        newCommercialName: [{ required: true, message: '请输入新建商业用房名称', trigger: 'blur' }],
-        newCommercialAmount: [{ required: true, message: '请输入金额', trigger: 'blur' }],
-        newCommercialArea: [{ required: true, message: '请输入面积', trigger: 'blur' }],
-        newCommercialCount: [{ required: true, message: '请输入套数', trigger: 'blur' }],
-        newParkingName: [{ required: true, message: '请输入新建停车位名称', trigger: 'blur' }],
-        newParkingAmount: [{ required: true, message: '请输入金额', trigger: 'blur' }],
-        newParkingCount: [{ required: true, message: '请输入个数', trigger: 'blur' }],
-        agreementSignTime: [{ required: true, message: '请选择自主购房协议签订时间', trigger: 'change' }],
-        downPaymentTime: [{ required: true, message: '请选择25%补偿款及过渡补贴支付时间', trigger: 'change' }],
+        currentCollectiveNum: [
+          { required: true, message: '请输入集体经济组织成员人数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        currentNoCollectiveNum: [
+          { required: true, message: '请输入非集体经济组织成员人数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        waitFamilyNames: [{ required: true, message: '请输入待安置家庭成员姓名', trigger: 'blur' }],
+        waitFamilyArea: [
+          { required: true, message: '请输入待安置人员应安置面积合计', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        compensationNewAmount: [
+          { required: true, message: '请输入新建商品住房/商业用房/停车位金额', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        compensationOldAmount: [
+          { required: true, message: '请输入二手住房金额', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        downPaymentAmount: [
+          { required: true, message: '请输入25%首付款', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        quarterPayAmount: [
+          { required: true, message: '请输入每季度需支付款项', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        subsidyAmount: [
+          { required: true, message: '请输入过渡补贴', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        certificateTime: [{ required: true, message: '请选择凭证发放时间', trigger: 'change' }],
+        buyTime: [{ required: true, message: '请选择购房时间', trigger: 'change' }],
+        dealAmount: [
+          { required: true, message: '请输入成交金额', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        newHousingName: [{ required: true, message: '请输入新建商品住房楼盘名称', trigger: 'blur' }],
+        newHousingArea: [
+          { required: true, message: '请输入新建商品住房面积', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        newHousingNum: [
+          { required: true, message: '请输入新建商品住房套数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        oldHousingName: [{ required: true, message: '请输入二手住房小区名称', trigger: 'blur' }],
+        oldHousingArea: [
+          { required: true, message: '请输入二手住房面积', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        oldHousingNum: [
+          { required: true, message: '请输入二手住房套数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        buildHousingName: [{ required: true, message: '请输入新建商业用房楼盘名称', trigger: 'blur' }],
+        buildHousingAmount: [
+          { required: true, message: '请输入新建商业用房金额', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        buildHousingArea: [
+          { required: true, message: '请输入新建商业用房面积', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        buildHousingNum: [
+          { required: true, message: '请输入新建商业用房套数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        newStopName: [{ required: true, message: '请输入新建停车位楼盘名称', trigger: 'blur' }],
+        newStopArea: [
+          { required: true, message: '请输入新建停车位金额', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        newStopNum: [
+          { required: true, message: '请输入新建停车位个数', trigger: 'blur' },
+          // { type: 'number', message: '请输入正确的数字', trigger: 'blur' }
+        ],
+        signTime: [{ required: true, message: '请选择自主购房协议签订时间', trigger: 'change' }],
+        compensationPayTime: [{ required: true, message: '请选择25%补偿款及过渡补贴支付时间', trigger: 'change' }]
       }
     }
   },
   watch: {
     // 监听集体和非集体成员人数,自动计算总人数
-    'form.collectiveMember': {
+    'form.currentCollectiveNum': {
       handler(val) {
         this.calculateTotalMember()
       }
     },
-    'form.nonCollectiveMember': {
+    'form.currentNoCollectiveNum': {
       handler(val) {
         this.calculateTotalMember()
       }
     },
     // 监听新建和二手房金额,自动计算总金额
-    'form.newBuildingAmount': {
+    'form.compensationNewAmount': {
       handler(val) {
         this.calculateTotalAmount()
       }
     },
-    'form.secondHandAmount': {
+    'form.compensationOldAmount': {
       handler(val) {
         this.calculateTotalAmount()
       }
     }
   },
+  mounted(){
+    if(this.$route.query.houseId){
+      getPlacementBatchHouseDetail({id:this.$route.query.houseId}).then(res => {
+        this.form = res.data
+      })
+    }else{
+      this.resetForm()
+    }
+  },
   methods: {
     // 计算总人数
     calculateTotalMember() {
-      const collective = parseFloat(this.form.collectiveMember) || 0
-      const nonCollective = parseFloat(this.form.nonCollectiveMember) || 0
-      this.form.totalMember = collective + nonCollective
+      const collective = parseFloat(this.form.currentCollectiveNum) || 0
+      const nonCollective = parseFloat(this.form.currentNoCollectiveNum) || 0
+      this.form.currentCount = collective + nonCollective
     },
     // 计算总金额
     calculateTotalAmount() {
-      const newBuilding = parseFloat(this.form.newBuildingAmount) || 0
-      const secondHand = parseFloat(this.form.secondHandAmount) || 0
-      this.form.totalAmount = newBuilding + secondHand
+      const newBuilding = parseFloat(this.form.compensationNewAmount) || 0
+      const secondHand = parseFloat(this.form.compensationOldAmount) || 0
+      this.form.compensationSum = newBuilding + secondHand
     },
     // 处理文件上传
     handleClickUpload() {
@@ -544,15 +561,15 @@
       fileInput.type = 'file'
       // 设置接受的文件类型
       fileInput.accept = '.jpg,.jpeg,.png,.pdf,.doc,.docx'
-      
+
       // 监听文件选择事件
       fileInput.addEventListener('change', (event) => {
         const file = event.target.files[0]
         if (!file) return
-        
+
         // 创建FileReader实例
         const reader = new FileReader()
-        
+
         // 读取完成后的处理
         reader.onload = (e) => {
           // 获取二进制数据
@@ -563,11 +580,11 @@
           // 这里可以将binaryData存储到组件的data中或进行其他处理
           // this.fileData = binaryData
         }
-        
+
         // 读取文件为二进制数据
         reader.readAsArrayBuffer(file)
       })
-      
+
       // 触发文件选择
       fileInput.click()
     },
@@ -576,7 +593,27 @@
       this.$refs.form.validate(valid => {
         if (valid) {
           // TODO: 调用接口提交数据
-          this.$message.success('提交成功')
+          if(this.$route.query.houseId){
+            // 修改
+            updatePlacementBatchHouse({...this.form,placementBatchId:this.$route.query.id,id:this.$route.query.houseId}).then(res => {
+              if(res.code === 200){
+                this.$message.success('修改成功')
+                this.$router.back()
+              }else{
+                this.$message.error(res.message)
+              }
+            })
+          }else{
+            // 新增
+            addPlacementBatchHouse({...this.form,placementBatchId:this.$route.query.id}).then(res => {
+              if(res.code === 200){
+                this.$message.success('提交成功')
+                this.$router.back()
+              }else{
+                this.$message.error(res.message)
+              }
+            })
+          }
         }
       })
     },
@@ -611,7 +648,7 @@
 .input-with-unit {
   display: inline-flex;
   align-items: center;
-  
+
   .unit {
     margin-left: 8px;
     color: #606266;

--
Gitblit v1.7.1