Selaa lähdekoodia

标准版合同bug解决

cz 1 vuosi sitten
vanhempi
commit
2ddd9b55cb
1 muutettua tiedostoa jossa 118 lisäystä ja 437 poistoa
  1. 118 437
      src/components/process/Contract.vue

+ 118 - 437
src/components/process/Contract.vue

@@ -1,53 +1,29 @@
 <template>
   <div style="width: 100%; padding: 0px 15px">
-    <byForm
-      :formConfig="formConfig"
-      :formOption="formOption"
-      v-model="formData.data"
-      :rules="rules"
-      ref="submit"
-    >
+    <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
       <template #seller>
         <div style="width: 100%">
           <el-form-item prop="sellCorporationId">
-            <el-select
-              v-model="formData.data.sellCorporationId"
-              style="width: 100%"
-              disabled
-            >
-              <el-option
-                v-for="item in corporationList"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              />
+            <el-select v-model="formData.data.sellCorporationId" style="width: 100%" disabled>
+              <el-option v-for="item in corporationList" :key="item.value" :label="item.label" :value="item.value" />
             </el-select>
           </el-form-item>
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="8">
               <el-form-item label="地址" prop="sellCountryName">
-                <el-input
-                  v-model="formData.data.sellCountryName"
-                  placeholder="请输入国家"
-                />
+                <el-input v-model="formData.data.sellCountryName" placeholder="请输入国家" />
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="7">
               <el-form-item label=" " prop="sellProvinceName">
-                <el-input
-                  v-model="formData.data.sellProvinceName"
-                  placeholder="请输入省/州"
-                />
+                <el-input v-model="formData.data.sellProvinceName" placeholder="请输入省/州" />
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="7">
               <el-form-item label=" " prop="sellCityName">
-                <el-input
-                  v-model="formData.data.sellCityName"
-                  placeholder="请输入城市"
-                />
+                <el-input v-model="formData.data.sellCityName" placeholder="请输入城市" />
               </el-form-item>
             </el-col>
           </el-row>
@@ -62,19 +38,13 @@
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="8">
               <el-form-item label="联系人" prop="sellContactName">
-                <el-input
-                  v-model="formData.data.sellContactName"
-                  placeholder="请输入联系人"
-                />
+                <el-input v-model="formData.data.sellContactName" placeholder="请输入联系人" />
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="15">
               <el-form-item label=" " prop="sellContactNumber">
-                <el-input
-                  v-model="formData.data.sellContactNumber"
-                  placeholder="请输入联系人电话"
-                />
+                <el-input v-model="formData.data.sellContactNumber" placeholder="请输入联系人电话" />
               </el-form-item>
             </el-col>
           </el-row>
@@ -84,67 +54,39 @@
         <div style="width: 100%">
           <div style="width: 100%">
             <el-form-item prop="buyCorporationId">
-              <el-select
-                v-model="formData.data.buyCorporationId"
-                filterable
-                style="width: 100%"
-                @change="changeCustomer"
-              >
-                <el-option
-                  v-for="item in customerList"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                />
+              <el-select v-model="formData.data.buyCorporationId" filterable style="width: 100%" @change="changeCustomer">
+                <el-option v-for="item in customerList" :key="item.value" :label="item.label" :value="item.value" />
               </el-select>
             </el-form-item>
             <el-row style="margin-top: 20px; width: 100%">
               <el-col :span="6">
                 <el-form-item label="地址" prop="countryId">
-                  <el-select
-                    v-model="formData.data.countryId"
-                    placeholder="国家"
-                    filterable
-                    @change="(val) => getCityData(val, '20', true)"
-                    :no-match-text="'无数据,请联系管理员添加'">
-                    <el-option v-for="item in countryData" :key="item.id" :label="item.chineseName + '(' + item.name + ')'" :value="item.id"> </el-option>
+                  <el-select v-model="formData.data.countryId" placeholder="国家" filterable @change="(val) => getCityData(val, '20', true)"
+                             :no-match-text="'无数据,请联系管理员添加'">
+                    <el-option v-for="item in countryData" :key="item.id" :label="item.chineseName + '(' + item.name + ')'" :value="item.id">
+                    </el-option>
                   </el-select>
                 </el-form-item>
               </el-col>
               <el-col :span="1"></el-col>
               <el-col :span="5">
                 <el-form-item label=" " prop="provinceName">
-                  <selectCity
-                    placeholder="省/洲"
-                    @change="(val) => getCityData(val, '30', true)"
-                    addressId="provinceId"
-                    addressName="provinceName"
-                    v-model="formData.data"
-                    :data="provinceData"
-                  >
+                  <selectCity placeholder="省/洲" @change="(val) => getCityData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                              v-model="formData.data" :data="provinceData">
                   </selectCity>
                 </el-form-item>
               </el-col>
               <el-col :span="1"></el-col>
               <el-col :span="5">
                 <el-form-item label=" " prop="cityName">
-                  <selectCity
-                    placeholder="城市"
-                    addressId="cityId"
-                    addressName="cityName"
-                    v-model="formData.data"
-                    :data="cityData"
-                  >
+                  <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="formData.data" :data="cityData">
                   </selectCity>
                 </el-form-item>
               </el-col>
               <el-col :span="1"></el-col>
               <el-col :span="5">
                 <el-form-item label=" " prop="buyPostalCode">
-                  <el-input
-                    v-model="formData.data.buyPostalCode"
-                    placeholder="请输入邮编"
-                  />
+                  <el-input v-model="formData.data.buyPostalCode" placeholder="请输入邮编" />
                 </el-form-item>
               </el-col>
             </el-row>
@@ -159,24 +101,15 @@
             <el-row style="margin-top: 20px; width: 100%">
               <el-col :span="8">
                 <el-form-item label="联系人" prop="buyContactName">
-                  <el-autocomplete
-                    v-model="formData.data.buyContactName"
-                    :fetch-suggestions="querySearchPerson"
-                    clearable
-                    class="inline-input w-50"
-                    placeholder="请输入联系人"
-                    @select="handlePerson"
-                  >
+                  <el-autocomplete v-model="formData.data.buyContactName" :fetch-suggestions="querySearchPerson" clearable class="inline-input w-50"
+                                   placeholder="请输入联系人" @select="handlePerson">
                   </el-autocomplete>
                 </el-form-item>
               </el-col>
               <el-col :span="1"></el-col>
               <el-col :span="15">
                 <el-form-item label=" " prop="buyContactNumber">
-                  <el-input
-                    v-model="formData.data.buyContactNumber"
-                    placeholder="请输入联系人电话"
-                  />
+                  <el-input v-model="formData.data.buyContactNumber" placeholder="请输入联系人电话" />
                 </el-form-item>
               </el-col>
             </el-row>
@@ -186,18 +119,11 @@
       <template #commodity>
         <div style="width: 100%">
           <el-button @click="openProduct = true">添加商品</el-button>
-          <el-table
-            :data="formData.data.contractProductList"
-            style="width: 100%; margin-top: 16px"
-          >
+          <el-table :data="formData.data.contractProductList" style="width: 100%; margin-top: 16px">
             <el-table-column label="商品图片" width="80">
               <template #default="{ row }">
                 <div v-if="row.fileUrl">
-                  <img
-                    :src="row.fileUrl"
-                    class="pic"
-                    @click="onPicture(row.fileUrl)"
-                  />
+                  <img :src="row.fileUrl" class="pic" @click="onPicture(row.fileUrl)" />
                 </div>
                 <div v-else></div>
               </template>
@@ -207,15 +133,8 @@
             <el-table-column label="商品英文名" min-width="200">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProductList.' + $index + '.productName'"
-                    :rules="rules.productName"
-                    :inline-message="true"
-                  >
-                    <el-input
-                      v-model="row.productName"
-                      placeholder="请输入商品英文名"
-                    />
+                  <el-form-item :prop="'contractProductList.' + $index + '.productName'" :rules="rules.productName" :inline-message="true">
+                    <el-input v-model="row.productName" placeholder="请输入商品英文名" />
                   </el-form-item>
                 </div>
               </template>
@@ -223,40 +142,19 @@
             <el-table-column label="规格型号" width="180">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProductList.' + $index + '.productModel'"
-                    :inline-message="true"
-                  >
-                    <el-input
-                      v-model="row.productModel"
-                      placeholder="请输入规格型号"
-                    />
+                  <el-form-item :prop="'contractProductList.' + $index + '.productModel'" :inline-message="true">
+                    <el-input v-model="row.productModel" placeholder="请输入规格型号" />
                   </el-form-item>
                 </div>
               </template>
             </el-table-column>
-            <el-table-column
-              prop="unit"
-              label="单位"
-              width="100"
-              :formatter="(row) => dictValueLabel(row.unit, productUnit)"
-            />
+            <el-table-column prop="unit" label="单位" width="100" :formatter="(row) => dictValueLabel(row.unit, productUnit)" />
             <el-table-column label="数量" width="160">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProductList.' + $index + '.quantity'"
-                    :rules="rules.quantity"
-                    :inline-message="true"
-                  >
-                    <el-input-number
-                      onmousewheel="return false;"
-                      v-model="row.quantity"
-                      placeholder="请输入数量"
-                      style="width: 100%"
-                      :controls="false"
-                      :min="0"
-                      @change="
+                  <el-form-item :prop="'contractProductList.' + $index + '.quantity'" :rules="rules.quantity" :inline-message="true">
+                    <el-input-number onmousewheel="return false;" v-model="row.quantity" placeholder="请输入数量" style="width: 100%" :controls="false"
+                                     :min="0" @change="
                         () => {
                           return calculationAmount(
                             'contractProductList',
@@ -264,8 +162,7 @@
                             'quantity'
                           );
                         }
-                      "
-                    />
+                      " />
                   </el-form-item>
                 </div>
               </template>
@@ -273,19 +170,9 @@
             <el-table-column label="单价" width="160">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProductList.' + $index + '.price'"
-                    :rules="rules.price"
-                    :inline-message="true"
-                  >
-                    <el-input-number
-                      onmousewheel="return false;"
-                      v-model="row.price"
-                      placeholder="请输入单价"
-                      style="width: 100%"
-                      :controls="false"
-                      :min="0"
-                      @change="
+                  <el-form-item :prop="'contractProductList.' + $index + '.price'" :rules="rules.price" :inline-message="true">
+                    <el-input-number onmousewheel="return false;" v-model="row.price" placeholder="请输入单价" style="width: 100%" :controls="false"
+                                     :min="0" @change="
                         () => {
                           return calculationAmount(
                             'contractProductList',
@@ -293,32 +180,16 @@
                             'price'
                           );
                         }
-                      "
-                    />
+                      " />
                   </el-form-item>
                 </div>
               </template>
             </el-table-column>
             <el-table-column prop="amount" label="金额" width="100" />
-            <el-table-column
-              align="center"
-              label="操作"
-              width="120"
-              fixed="right"
-            >
+            <el-table-column align="center" label="操作" width="120" fixed="right">
               <template #default="{ row, $index }">
-                <el-button
-                  type="primary"
-                  link
-                  @click="handleHandover(row, $index)"
-                  >交接单</el-button
-                >
-                <el-button
-                  type="primary"
-                  link
-                  @click="handleRemove($index, row)"
-                  >删除</el-button
-                >
+                <el-button type="primary" link @click="handleHandover(row, $index)">交接单</el-button>
+                <el-button type="primary" link @click="handleRemove($index, row)">删除</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -327,25 +198,13 @@
       <template #otherCharge>
         <div style="width: 100%">
           <el-button type="primary" @click="clickAdd()">添加行</el-button>
-          <el-table
-            :data="formData.data.contractProjectList"
-            style="width: 100%; margin-top: 16px"
-          >
+          <el-table :data="formData.data.contractProjectList" style="width: 100%; margin-top: 16px">
             <el-table-column label="收费项目" width="220">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProjectList.' + $index + '.payName'"
-                    :rules="rules.payName"
-                    :inline-message="true"
-                  >
-                    <el-autocomplete
-                      v-model="row.payName"
-                      :fetch-suggestions="querySearch"
-                      clearable
-                      class="inline-input w-50"
-                      placeholder="请输入收费项目"
-                    />
+                  <el-form-item :prop="'contractProjectList.' + $index + '.payName'" :rules="rules.payName" :inline-message="true">
+                    <el-autocomplete v-model="row.payName" :fetch-suggestions="querySearch" clearable class="inline-input w-50"
+                                     placeholder="请输入收费项目" />
                   </el-form-item>
                 </div>
               </template>
@@ -353,19 +212,9 @@
             <el-table-column label="金额" width="180">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProjectList.' + $index + '.amount'"
-                    :rules="rules.amount"
-                    :inline-message="true"
-                  >
-                    <el-input-number
-                      onmousewheel="return false;"
-                      v-model="row.amount"
-                      placeholder="请输入金额"
-                      style="width: 100%"
-                      :controls="false"
-                      :min="0"
-                      @change="
+                  <el-form-item :prop="'contractProjectList.' + $index + '.amount'" :rules="rules.amount" :inline-message="true">
+                    <el-input-number onmousewheel="return false;" v-model="row.amount" placeholder="请输入金额" style="width: 100%" :controls="false"
+                                     :min="0" @change="
                         () => {
                           return totalAmount(
                             'contractProjectList',
@@ -373,8 +222,7 @@
                             'amount'
                           );
                         }
-                      "
-                    />
+                      " />
                   </el-form-item>
                 </div>
               </template>
@@ -382,24 +230,15 @@
             <el-table-column label="备注">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractProjectList.' + $index + '.remark'"
-                  >
+                  <el-form-item :prop="'contractProjectList.' + $index + '.remark'">
                     <el-input v-model="row.remark" placeholder="请输入备注" />
                   </el-form-item>
                 </div>
               </template>
             </el-table-column>
-            <el-table-column
-              align="center"
-              label="操作"
-              width="80"
-              fixed="right"
-            >
+            <el-table-column align="center" label="操作" width="80" fixed="right">
               <template #default="{ row, $index }">
-                <el-button type="primary" link @click="handleDelete($index)"
-                  >删除</el-button
-                >
+                <el-button type="primary" link @click="handleDelete($index)">删除</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -410,78 +249,38 @@
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="4">
               <el-form-item label="币种" prop="currency">
-                <el-select
-                  v-model="formData.data.currency"
-                  placeholder="请选择币种"
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in accountCurrency"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  />
+                <el-select v-model="formData.data.currency" placeholder="请选择币种" style="width: 100%">
+                  <el-option v-for="item in accountCurrency" :key="item.value" :label="item.label" :value="item.value" />
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="6">
               <el-form-item label="合同总金额" prop="amount">
-                <el-input
-                  v-model="formData.data.amount"
-                  placeholder="合同总金额"
-                  disabled
-                />
+                <el-input v-model="formData.data.amount" placeholder="合同总金额" disabled />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="6">
               <el-form-item label="付款方式" prop="paymentMethod">
-                <el-select
-                  v-model="formData.data.paymentMethod"
-                  placeholder="请选择付款方式"
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in fundsPaymentMethod"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  />
+                <el-select v-model="formData.data.paymentMethod" placeholder="请选择付款方式" style="width: 100%">
+                  <el-option v-for="item in fundsPaymentMethod" :key="item.value" :label="item.label" :value="item.value" />
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="6">
               <el-form-item label="预付比例 (%)" prop="advanceRatio">
-                <el-input-number
-                  onmousewheel="return false;"
-                  v-model="formData.data.advanceRatio"
-                  placeholder="请输入预付比例"
-                  style="width: 100%"
-                  :precision="2"
-                  :controls="false"
-                  :min="0"
-                  :max="100"
-                />
+                <el-input-number onmousewheel="return false;" v-model="formData.data.advanceRatio" placeholder="请输入预付比例" style="width: 100%"
+                                 :precision="2" :controls="false" :min="0" :max="100" />
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="6">
               <el-form-item label="收款账号" prop="shroffAccountId">
-                <el-select
-                  v-model="formData.data.shroffAccountId"
-                  placeholder="请选择收款账号"
-                  style="width: 100%"
-                  @change="changeShroffAccount"
-                >
-                  <el-option
-                    v-for="item in accountList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  />
+                <el-select v-model="formData.data.shroffAccountId" placeholder="请选择收款账号" style="width: 100%" @change="changeShroffAccount">
+                  <el-option v-for="item in accountList" :key="item.value" :label="item.label" :value="item.value" />
                 </el-select>
               </el-form-item>
             </el-col>
@@ -500,62 +299,29 @@
               <el-collapse-item title="" name="1">
                 <el-row style="width: 100%">
                   <el-col :span="9">
-                    <el-form-item
-                      label="Beneficiary Name"
-                      prop="beneficiaryName"
-                    >
-                      <el-input
-                        v-model="formData.data.beneficiaryName"
-                        placeholder="请输入Beneficiary Name"
-                      />
+                    <el-form-item label="Beneficiary Name" prop="beneficiaryName">
+                      <el-input v-model="formData.data.beneficiaryName" placeholder="请输入Beneficiary Name" />
                     </el-form-item>
                     <div style="height: 20px"></div>
-                    <el-form-item
-                      label="Beneficiary Bank"
-                      prop="beneficiaryBank"
-                    >
-                      <el-input
-                        v-model="formData.data.beneficiaryBank"
-                        placeholder="请输入Beneficiary Bank"
-                      />
+                    <el-form-item label="Beneficiary Bank" prop="beneficiaryBank">
+                      <el-input v-model="formData.data.beneficiaryBank" placeholder="请输入Beneficiary Bank" />
                     </el-form-item>
                     <div style="height: 20px"></div>
-                    <el-form-item
-                      label="Beneficiary Bank Address"
-                      prop="beneficiaryBankAddress"
-                    >
-                      <el-input
-                        v-model="formData.data.beneficiaryBankAddress"
-                        placeholder="请输入Beneficiary Bank Address"
-                      />
+                    <el-form-item label="Beneficiary Bank Address" prop="beneficiaryBankAddress">
+                      <el-input v-model="formData.data.beneficiaryBankAddress" placeholder="请输入Beneficiary Bank Address" />
                     </el-form-item>
                   </el-col>
                   <el-col :span="9">
-                    <el-form-item
-                      label="Beneficiary Account Number"
-                      prop="beneficiaryAccountNumber"
-                    >
-                      <el-input
-                        v-model="formData.data.beneficiaryAccountNumber"
-                        placeholder="请输入Beneficiary Account Number"
-                      />
+                    <el-form-item label="Beneficiary Account Number" prop="beneficiaryAccountNumber">
+                      <el-input v-model="formData.data.beneficiaryAccountNumber" placeholder="请输入Beneficiary Account Number" />
                     </el-form-item>
                     <div style="height: 20px"></div>
                     <el-form-item label="Swift Code" prop="swiftCode">
-                      <el-input
-                        v-model="formData.data.swiftCode"
-                        placeholder="请输入Swift Code"
-                      />
+                      <el-input v-model="formData.data.swiftCode" placeholder="请输入Swift Code" />
                     </el-form-item>
                     <div style="height: 20px"></div>
-                    <el-form-item
-                      label="Beneficiary Address"
-                      prop="beneficiaryAddress"
-                    >
-                      <el-input
-                        v-model="formData.data.beneficiaryAddress"
-                        placeholder="请输入Beneficiary Address"
-                      />
+                    <el-form-item label="Beneficiary Address" prop="beneficiaryAddress">
+                      <el-input v-model="formData.data.beneficiaryAddress" placeholder="请输入Beneficiary Address" />
                     </el-form-item>
                   </el-col>
                 </el-row>
@@ -569,17 +335,8 @@
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="7">
               <el-form-item label="贸易方式" prop="tradeMethods">
-                <el-select
-                  v-model="formData.data.tradeMethods"
-                  placeholder="请选择贸易方式"
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in tradeMethods"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  />
+                <el-select v-model="formData.data.tradeMethods" placeholder="请选择贸易方式" style="width: 100%">
+                  <el-option v-for="item in tradeMethods" :key="item.value" :label="item.label" :value="item.value" />
                 </el-select>
               </el-form-item>
             </el-col>
@@ -587,68 +344,37 @@
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="7">
               <el-form-item label="运输方式" prop="transportMethod">
-                <el-select
-                  v-model="formData.data.transportMethod"
-                  placeholder="请选择运输方式"
-                  style="width: 100%"
-                >
-                  <el-option
-                    v-for="item in shippingMethod"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  />
+                <el-select v-model="formData.data.transportMethod" placeholder="请选择运输方式" style="width: 100%">
+                  <el-option v-for="item in shippingMethod" :key="item.value" :label="item.label" :value="item.value" />
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="7">
               <el-form-item label="运输说明" prop="transportRemark">
-                <el-input
-                  v-model="formData.data.transportRemark"
-                  placeholder="请输入运输说明"
-                />
+                <el-input v-model="formData.data.transportRemark" placeholder="请输入运输说明" />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="15">
               <el-form-item label="付款条件" prop="remark">
-                <el-input
-                  v-model="formData.data.remark"
-                  :rows="2"
-                  type="textarea"
-                  placeholder="请输入付款条件"
-                />
+                <el-input v-model="formData.data.remark" :rows="2" type="textarea" placeholder="请输入付款条件" />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row style="margin-top: 20px; width: 100%">
             <el-col :span="7">
               <el-form-item label="交货期限 (天)" prop="deliveryTime">
-                <el-input-number
-                  onmousewheel="return false;"
-                  v-model="formData.data.deliveryTime"
-                  placeholder="请输入交货期限"
-                  style="width: 100%"
-                  :precision="0"
-                  :controls="false"
-                  :min="0"
-                />
+                <el-input-number onmousewheel="return false;" v-model="formData.data.deliveryTime" placeholder="请输入交货期限" style="width: 100%"
+                                 :precision="0" :controls="false" :min="0" />
               </el-form-item>
             </el-col>
             <el-col :span="1"></el-col>
             <el-col :span="7">
               <el-form-item label="质保期 (天)" prop="warranty">
-                <el-input-number
-                  onmousewheel="return false;"
-                  v-model="formData.data.warranty"
-                  placeholder="请输入质保期"
-                  style="width: 100%"
-                  :precision="0"
-                  :controls="false"
-                  :min="0"
-                />
+                <el-input-number onmousewheel="return false;" v-model="formData.data.warranty" placeholder="请输入质保期" style="width: 100%" :precision="0"
+                                 :controls="false" :min="0" />
               </el-form-item>
             </el-col>
           </el-row>
@@ -656,26 +382,14 @@
       </template>
       <template #shipment>
         <div style="width: 100%">
-          <el-table
-            :data="formData.data.contractShipmentList"
-            style="width: 100%; margin-top: 16px"
-          >
+          <el-table :data="formData.data.contractShipmentList" style="width: 100%; margin-top: 16px">
             <el-table-column prop="code" label="商品编码" width="120" />
             <el-table-column prop="productName" label="商品名称" />
             <el-table-column label="出货日期" width="220">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractShipmentList.' + $index + '.shipmentTime'"
-                    :rules="rules.shipmentTime"
-                    :inline-message="true"
-                  >
-                    <el-date-picker
-                      v-model="row.shipmentTime"
-                      type="date"
-                      placeholder="请选择出货日期"
-                      value-format="YYYY-MM-DD HH:mm:ss"
-                    />
+                  <el-form-item :prop="'contractShipmentList.' + $index + '.shipmentTime'" :rules="rules.shipmentTime" :inline-message="true">
+                    <el-date-picker v-model="row.shipmentTime" type="date" placeholder="请选择出货日期" value-format="YYYY-MM-DD HH:mm:ss" />
                   </el-form-item>
                 </div>
               </template>
@@ -683,18 +397,9 @@
             <el-table-column label="数量" width="160">
               <template #default="{ row, $index }">
                 <div style="width: 100%">
-                  <el-form-item
-                    :prop="'contractShipmentList.' + $index + '.quantity'"
-                    :inline-message="true"
-                  >
-                    <el-input-number
-                      onmousewheel="return false;"
-                      v-model="row.quantity"
-                      placeholder="请输入数量"
-                      style="width: 100%"
-                      :controls="false"
-                      :min="0"
-                      @change="
+                  <el-form-item :prop="'contractShipmentList.' + $index + '.quantity'" :inline-message="true">
+                    <el-input-number onmousewheel="return false;" v-model="row.quantity" placeholder="请输入数量" style="width: 100%" :controls="false"
+                                     :min="0" @change="
                         () => {
                           return calculationAmount(
                             'contractShipmentList',
@@ -702,25 +407,15 @@
                             'quantity'
                           );
                         }
-                      "
-                    />
+                      " />
                   </el-form-item>
                 </div>
               </template>
             </el-table-column>
-            <el-table-column
-              align="center"
-              label="操作"
-              width="120"
-              fixed="right"
-            >
+            <el-table-column align="center" label="操作" width="120" fixed="right">
               <template #default="{ row, $index }">
-                <el-button type="primary" link @click="clickSplit(row)"
-                  >拆分</el-button
-                >
-                <el-button type="primary" link @click="clickDelete($index)"
-                  >删除</el-button
-                >
+                <el-button type="primary" link @click="clickSplit(row)">拆分</el-button>
+                <el-button type="primary" link @click="clickDelete($index)">删除</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -728,50 +423,21 @@
       </template>
     </byForm>
 
-    <el-dialog
-      v-if="openProduct"
-      v-model="openProduct"
-      title="选择商品"
-      width="70%"
-      append-to-body
-    >
-      <SelectGoods
-        :selectList="acquireSelectList()"
-        @cancel="openProduct = false"
-        @pushGoods="pushGoods"
-      ></SelectGoods>
+    <el-dialog v-if="openProduct" v-model="openProduct" title="选择商品" width="70%" append-to-body>
+      <SelectGoods :selectList="acquireSelectList()" @cancel="openProduct = false" @pushGoods="pushGoods"></SelectGoods>
     </el-dialog>
 
-    <el-dialog
-      title="交接单"
-      v-if="openHandover"
-      v-model="openHandover"
-      width="800"
-    >
-      <byForm
-        :formConfig="formHandoverConfig"
-        :formOption="formOption"
-        v-model="productRow.data"
-      >
+    <el-dialog title="交接单" v-if="openHandover" v-model="openHandover" width="800">
+      <byForm :formConfig="formHandoverConfig" :formOption="formOption" v-model="productRow.data">
         <template #remark>
           <div style="width: 100%">
-            <Editor
-              :value="productRow.data.remark"
-              @updateValue="updateContent"
-            />
+            <Editor :value="productRow.data.remark" @updateValue="updateContent" />
           </div>
         </template>
         <template #file>
           <div style="width: 100%">
-            <el-upload
-              v-model:fileList="fileList"
-              action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-              :data="uploadData"
-              multiple
-              :before-upload="uploadFile"
-              :on-success="handleSuccess"
-              :on-preview="onPreviewFile"
-            >
+            <el-upload v-model:fileList="fileList" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadData" multiple
+                       :before-upload="uploadFile" :on-success="handleSuccess" :on-preview="onPreviewFile">
               <el-button>选择</el-button>
             </el-upload>
           </div>
@@ -779,9 +445,7 @@
       </byForm>
       <template #footer>
         <el-button @click="openHandover = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitHandoverForm()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitHandoverForm()" size="large">确 定</el-button>
       </template>
     </el-dialog>
   </div>
@@ -1881,9 +1545,9 @@ onMounted(() => {
     proxy
       .post("/contract/detail", { id: route.query.contractId })
       .then((res) => {
-        if (res && res.dataJson) {
-          res = { ...res, ...JSON.parse(res.dataJson) };
-        }
+        // if (res && res.dataJson) {
+        //   res = { ...res, ...JSON.parse(res.dataJson) };
+        // }
         res.countryId = res.buyCountryId;
         res.provinceId = res.buyProvinceId;
         res.cityId = res.buyCityId;
@@ -1902,6 +1566,12 @@ onMounted(() => {
           formData.data.contractProductList &&
           formData.data.contractProductList.length > 0
         ) {
+          formData.data.contractProductList =
+            formData.data.contractProductList.map((x) => ({
+              ...x,
+              code: x.productCode,
+              name: x.productCnName,
+            }));
           let productIds = formData.data.contractProductList.map(
             (item) => item.productId
           );
@@ -1944,6 +1614,17 @@ onMounted(() => {
               }
             });
         }
+        if (
+          formData.data.contractShipmentList &&
+          formData.data.contractShipmentList.length > 0
+        ) {
+          formData.data.contractShipmentList =
+            formData.data.contractShipmentList.map((x) => ({
+              ...x,
+              code: x.productCode,
+              productName: x.productCnName,
+            }));
+        }
       });
   }
 });