doctor-admin-components 1.0.14-beta.8 → 1.0.14-beta.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/README.md +25 -48
  2. package/package.json +1 -1
  3. package/packages/index.js +14 -3
  4. package/packages/src/api/biz/bizContract.js +36 -9
  5. package/packages/src/api/biz/bizShipment.js +30 -1
  6. package/packages/src/api/biz/dictData.js +4 -1
  7. package/packages/src/i18n/zh-CN/message.json +1 -1
  8. package/packages/src/index.js +18 -2
  9. package/packages/src/utils/index.js +1 -1
  10. package/packages/src/utils/zip.js +29 -11
  11. package/packages/src/views/biz/bizFileInfo/contract.vue +131 -151
  12. package/packages/src/views/biz/bizFileInfo/contractFile/IMGPreviewCheckBox.vue +8 -6
  13. package/packages/src/views/biz/bizFileInfo/fileShow.vue +5 -3
  14. package/packages/src/views/biz/bizShipment/add.vue +234 -142
  15. package/packages/src/views/biz/contractTracing/billInfo.vue +17 -9
  16. package/packages/src/views/biz/contractTracing/changrLogList.vue +67 -0
  17. package/packages/src/views/biz/contractTracing/companyBanks.vue +19 -8
  18. package/packages/src/views/biz/contractTracing/contractChangeLog.vue +29 -2
  19. package/packages/src/views/biz/contractTracing/contractClause.vue +356 -0
  20. package/packages/src/views/biz/contractTracing/contractClauseComponenrts/TextContent.vue +53 -0
  21. package/packages/src/views/biz/contractTracing/contractPdf.vue +16 -175
  22. package/packages/src/views/biz/contractTracing/contractSummary.vue +101 -73
  23. package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +2 -2
  24. package/packages/src/views/biz/contractTracing/editBill.vue +35 -27
  25. package/packages/src/views/biz/contractTracing/info.vue +365 -0
  26. package/packages/src/views/biz/contractTracing/purchaseInvoiceUpload.vue +5 -2
  27. package/packages/src/views/biz/contractTracing/queryDeductionRecords.vue +103 -0
  28. package/packages/src/views/biz/contractTracing/shipmentPurchaseAmount.vue +361 -79
  29. package/packages/src/views/biz/contractTracing/shipmentPurchaseAmountEditDialog.vue +176 -0
@@ -0,0 +1,67 @@
1
+ <!--
2
+ * @Author: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
3
+ * @Date: 2024-08-19 15:46:00
4
+ * @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
5
+ * @LastEditTime: 2024-08-21 16:19:39
6
+ * @FilePath: /doctor-admin-components 公共组件/packages/src/views/biz/contractTracing/shipmentPurchaseAmountEditDialog.vue
7
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8
+ -->
9
+ <template>
10
+ <div v-if="list.length">
11
+ <div class="bold" style="margin-bottom:10px">历史修正记录</div>
12
+ <div class="wrap" v-for="listItem in list" :key="listItem.changeId">
13
+ <div class="row-wrap">
14
+ <div class="time">{{ utc2local(listItem.changeTime, 'yyyy-MM-DD HH:mm:ss') }}</div>
15
+ <div class="time">修改人:{{ listItem.operName }}</div>
16
+ </div>
17
+ <div class="row-wrap-1">
18
+ <div class="title bold">修改内容:</div>
19
+ <div>{{ listItem.changeContent }}</div>
20
+ </div>
21
+ <div class="row-wrap-1" v-if="listItem.changeReason">
22
+ <div class="title bold">修改原因:</div>
23
+ <div style="white-space: pre-line !important">{{ listItem.changeReason }}</div>
24
+ </div>
25
+ </div>
26
+ </div>
27
+
28
+ </template>
29
+ <script>
30
+ export default {
31
+ props: {
32
+ list: {
33
+ type: Array,
34
+ default: () => []
35
+ }
36
+ },
37
+ name: 'changrLogList',
38
+ data() {
39
+ return {}
40
+ }
41
+ }
42
+ </script>
43
+ <style scoped lang="scss">
44
+ .wrap {
45
+ padding:10px 20px;
46
+ margin-bottom: 10px;
47
+ background-color: #f2f2f2;
48
+ }
49
+ .bold {
50
+ font-weight: bold;
51
+ }
52
+ .row-wrap {
53
+ display: flex;
54
+ justify-content: space-between;
55
+ margin-bottom: 10px;
56
+ .time {
57
+ font-size:12px;
58
+ }
59
+ }
60
+ .row-wrap-1 {
61
+ display: flex;
62
+ margin-bottom: 10px;
63
+ .title {
64
+ min-width: 70px;
65
+ }
66
+ }
67
+ </style>
@@ -12,7 +12,7 @@
12
12
  v-for="(bankData, i) in bankList"
13
13
  :key="i"
14
14
  class="bank-container"
15
- :class="{ 'bank-container-select': !disableSelect && sellectIndex == i, 'bank-container-unselect': disableSelect || sellectIndex != i }"
15
+ :class="{ 'bank-container-select': sellectIndex == i, 'bank-container-unselect': sellectIndex != i }"
16
16
  @click="clickSelct(i)"
17
17
  >
18
18
  <el-row style="padding-bottom: 20px">
@@ -34,15 +34,18 @@
34
34
  <el-col :span="24">
35
35
  <div class="bank-item">Beneficiary Address:{{ bankData.beneficiaryAddress }}</div>
36
36
  </el-col>
37
+ <el-col :span="24">
38
+ <div class="bank-item" style="display:flex;"><p>Remark:</p><p style="white-space: pre-wrap;">{{ bankData.remark }}</p></div>
39
+ </el-col>
37
40
  </el-row>
38
41
  </div>
39
42
  <!-- 添加入口 -->
40
43
  <div v-if="!bankList || bankList.length == 0" style="padding-left: 30px; padding-top: 10px">
41
44
  <span>未添加收款账户信息,</span>
42
- <el-button type="text" size="mini" @click="clickAdd">去添加</el-button>
45
+ <el-button type="text" size="mini" v-hasPermi="['biz:company:payment:account:add']" @click="clickAdd">去添加</el-button>
43
46
  </div>
44
47
  <div v-else-if="bankList && bankList.length < 3" style="padding-left: 30px; padding-top: 10px">
45
- <el-button type="text" size="mini" @click="clickAdd">去添加</el-button>
48
+ <el-button type="text" size="mini" @click="clickAdd" v-hasPermi="['biz:company:payment:account:add']">去添加</el-button>
46
49
  <span>收款账户信息</span>
47
50
  </div>
48
51
  <!-- 添加收款账户弹框 -->
@@ -79,6 +82,11 @@
79
82
  <el-input maxlength="500" v-model="form.beneficiaryAddress" placeholder="请输入内容" />
80
83
  </el-form-item>
81
84
  </el-col>
85
+ <el-col :span="18">
86
+ <el-form-item label="Remark" label-width="150px">
87
+ <el-input maxlength="500" type="textarea" rows="4" v-model="form.remark" placeholder="请输入内容" />
88
+ </el-form-item>
89
+ </el-col>
82
90
  </el-row>
83
91
  </el-form>
84
92
  <div slot="footer" class="dialog-footer">
@@ -137,7 +145,8 @@ export default {
137
145
  bankAddress: null,
138
146
  beneficiaryAccount: null,
139
147
  beneficiary: null,
140
- beneficiaryAddress: null
148
+ beneficiaryAddress: null,
149
+ remark: null,
141
150
  },
142
151
  rules: {}
143
152
  }
@@ -154,13 +163,15 @@ export default {
154
163
  bankAddress: null,
155
164
  beneficiaryAccount: null,
156
165
  beneficiary: null,
157
- beneficiaryAddress: null
166
+ beneficiaryAddress: null,
167
+ remark: null,
158
168
  }
159
169
  },
160
170
  handleCaclSelectIndex() {
161
- if (!this.disableSelect && this.accountId) {
171
+ if (this.accountId) {
162
172
  this.sellectIndex = this.bankList.findIndex((item) => item.accountId == this.accountId)
163
- if (this.sellectIndex == -1) {
173
+ console.log('---sellectIndex:', this.sellectIndex)
174
+ if (this.sellectIndex == -1 && !this.disableSelect) {
164
175
  console.log('pre accountId invalide')
165
176
  this.$emit('selectBank', null)
166
177
  }
@@ -194,7 +205,7 @@ export default {
194
205
  },
195
206
  clickConfirm() {
196
207
  let e = this.form
197
- if (!(e.swiftCode || e.bankName || e.bankAddress || e.beneficiaryAccount || e.beneficiary || e.beneficiaryAddress)) {
208
+ if (!(e.swiftCode || e.bankName || e.bankAddress || e.beneficiaryAccount || e.beneficiary || e.beneficiaryAddress || e.remark)) {
198
209
  this.$modal.msgError('请输入内容')
199
210
  return
200
211
  }
@@ -4,8 +4,24 @@
4
4
  <el-table v-loading="loading" :data="changeLogList">
5
5
  <el-table-column label="模块标题" align="center" prop="changeTitle" />
6
6
  <el-table-column label="操作人员" align="center" prop="operName" />
7
- <el-table-column label="旧参数" align="center" prop="oldParam" />
8
- <el-table-column label="新参数" align="center" prop="newParam" />
7
+ <el-table-column label="旧参数" align="center" prop="oldParam">
8
+ <template #default="{ row }">
9
+ <el-tooltip effect="dark" :content="row.oldParam" placement="top-start">
10
+ <div class="el-table-column-param-content">
11
+ {{ row.oldParam }}
12
+ </div>
13
+ </el-tooltip>
14
+ </template>
15
+ </el-table-column>
16
+ <el-table-column label="新参数" align="center" prop="newParam">
17
+ <template #default="{ row }">
18
+ <el-tooltip effect="dark" :content="row.newParam" placement="top-start">
19
+ <div class="el-table-column-param-content">
20
+ {{ row.newParam }}
21
+ </div>
22
+ </el-tooltip>
23
+ </template>
24
+ </el-table-column>
9
25
  <el-table-column label="操作时间" align="center" prop="changeTime" width="180">
10
26
  <template slot-scope="scope">
11
27
  <span>{{ utc2local(scope.row.changeTime, 'yyyy-MM-DD HH:mm:ss') }}</span>
@@ -86,3 +102,14 @@ export default {
86
102
  }
87
103
  }
88
104
  </script>
105
+ <style scoped>
106
+ .el-table-column-param-content {
107
+ white-space: pre-wrap;
108
+ word-break: break-word;
109
+ text-align: left;
110
+ display: -webkit-box;
111
+ -webkit-box-orient: vertical;
112
+ -webkit-line-clamp: 3;
113
+ overflow: hidden;
114
+ }
115
+ </style>
@@ -0,0 +1,356 @@
1
+ <template>
2
+ <div>
3
+ <h3 style="text-align: center">Additional Agreement</h3>
4
+ <div style="text-align: right;padding-right: 20px" v-if="editable">
5
+ <el-button type="text" @click="disable = !disable">{{ disable ? 'Edit' : 'View' }}</el-button>
6
+ </div>
7
+ <div v-if="form">
8
+ <div v-if="form.contractType == 'sale'">
9
+ <h3>ARTICLE 1 – DEFINITIONS</h3>
10
+ <div>
11
+ <text-content :form="form" :disable="disable" keys="definitions"></text-content>
12
+ </div>
13
+ <h3>ARTICLE 2 – Annexure of Inquiry Page Content</h3>
14
+ <div>
15
+ <text-content :form="form" :disable="disable" keys="annexure"></text-content>
16
+ </div>
17
+ <h3>ARTICLE 3 – ACCEPTANCE</h3>
18
+ <div>
19
+ <text-content :form="form" :disable="disable" keys="acceptance"></text-content>
20
+ </div>
21
+ <h3>ARTICLE 4 – INCONSISTENT COMMODITY NAMES</h3>
22
+ <div>
23
+ <text-content :form="form" :disable="disable" keys="inconsistent"></text-content>
24
+ </div>
25
+ <h3>ARTICLE 5 – QUALITY, CUSTOMS REJECTION</h3>
26
+ <div>
27
+ <text-content :form="form" :disable="disable" keys="quality"></text-content>
28
+ </div>
29
+ <h3>ARTICLE 6 – CLAIM</h3>
30
+ <div>
31
+ <text-content :form="form" :disable="disable" keys="claim"></text-content>
32
+ </div>
33
+ <h3>ARTICLE 7 – LOADING REQUIREMENT</h3>
34
+ <div>
35
+ <text-content :form="form" :disable="disable" keys="loadingRequirement"></text-content>
36
+ </div>
37
+ <h3>ARTICLE 8 – PAYMENT</h3>
38
+ <div>
39
+ <div>
40
+ <!-- 比例 -->
41
+ <div v-if="form && form.depositType == '1'">
42
+ The Buyer shall pay a deposit of {{ form.deposit}}% of the total Contract Price to TTYY within {{ form.depositDays }} days {{ depositPaymentFormKey(form.depositPaymentForm)}}.
43
+ </div>
44
+ <!-- 固定金额 -->
45
+ <div v-else>
46
+ The Buyer shall pay a deposit of {{`$${form.advanceDepositAmount}`}}
47
+ TTYY within {{ form.depositDays }} days {{ depositPaymentFormKey(form.depositPaymentForm) }}.
48
+ </div>
49
+ The remaining {{ form && form.depositType == '1' && form.balance > 0 ? `${form.balance}%` : '' }} balance of the total Contract Price
50
+ shall be paid by the Buyer to TTYY via Telegraphic Transfer ({{form.balancePaymentType}}) no later than {{form.balanceDays}} days {{balancePaymentFormKey(form.balancePaymentForm)}}
51
+ </div>
52
+ The Buyer shall ensure that all payments are made free and clear of any deductions, charges, fees, or
53
+ withholdings imposed by any governmental or regulatory authority. If any such deductions or withholdings are
54
+ required by law, the Buyer shall increase the amount payable to TTYY so that, after any such deductions or
55
+ withholdings, TTYY receives an amount equal to the Contract Price.
56
+ <br />
57
+ If the Buyer fails to make any payment within the stipulated time frames, TTYY shall be entitled to charge
58
+ interest on the overdue amount at a rate of 0.05% per day from the due date until the date of actual payment.
59
+ </div>
60
+ <h3>ARTICLE 9 – FLOATING PRICE</h3>
61
+ <div v-if="form.quoteType && form.quoteType != 'FIXED'">
62
+ Price Period: The {{ form.livePriceUsertype }} has the pricing authority option from container loaded date until
63
+ {{ form.livePriceDays }} days {{ form.livePriceForm }} it arrives at the port.
64
+ <br />
65
+ FOR PRICING the Buyer and TTYY can communicate through email, Wechat group, WhatsApp group, phone call or the
66
+ pricing function button of the APP.
67
+ <br />
68
+ The pricing will be determined based on the local working hours of either the Seller or the Buyer who provides
69
+ the price option.
70
+ <br />
71
+ If the Buyer is unable to fix the price within the agreed Price Fixing Period, the Buyer may request an
72
+ extension. The request for extension must be submitted in writing to TTYY before the expiration of the initial
73
+ Price Fixing Period.
74
+ <br />
75
+ The Buyer acknowledges and agrees that an extension of the Price Fixing Period shall be subject to supplier’s
76
+ allowance.
77
+ <br />
78
+ The Buyer shall make a prompt payment (within two working days) to the Seller, amounting to 110% of the
79
+ provisional pricing formula based on the LME/CME reference price on the day and at the time the Buyer declared
80
+ the exercise of the Extension Option.
81
+ <br />
82
+ TTYY’s supplier reserves the right to approve or deny any request for an extension of the Price Fixing Period
83
+ in its sole discretion. The granting of an extension does not constitute a waiver of TTYY's rights under this
84
+ Contract.
85
+ <br />
86
+ If the Buyer fails to fix the price within the Price Fixing Period, including any extended period granted by
87
+ TTYY, TTYY shall have the right to determine the contract price based on the Market Closing Price of the Price
88
+ Fixing Deadline.
89
+ <br />
90
+ Any extension of the Price Fixing Period shall be the final extension, and no further extensions shall be
91
+ granted unless otherwise agreed upon in writing by the parties.
92
+ </div>
93
+ <h3>ARTICLE 10 – MARGIN CALL</h3>
94
+ <div>
95
+ <text-content :form="form" :disable="disable" keys="saleMarginCall"></text-content>
96
+ </div>
97
+ <h3>ARTICLE 11 – PRICE ADJUSTMENT</h3>
98
+ <div>
99
+ <text-content :form="form" :disable="disable" keys="priceAdjustment"></text-content>
100
+ </div>
101
+ <h3>ARTICLE 12 - PACKING, DELIVERY, SHIPPING & RISK OF LOSS</h3>
102
+ <div>
103
+ The delivery terms shall be set forth on the first page of the Contract. The Contract includes standard
104
+ commercial packaging for the goods. When special or export packaging is required or requested, the cost of the
105
+ special packaging will be separately invoiced.
106
+ <br /><br />
107
+ If the Buyer pays the deposit late (if the delay is within {{ form.latestShipment }} days of the original
108
+ contract deposit, the contract will be extended; if the delay exceeds {{ form.latestShipment }} days, the
109
+ delivery time cannot be guaranteed), the goods will be shipped within {{ form.latestShipment }} days from the
110
+ date of deposit payment.
111
+ <br /><br />
112
+ To be arranged by the Seller within {{ form.latestShipment }} days from the date of signature of this Agreement.
113
+ (For sake of clarity, within the above deadline, the Seller shall be obliged to arrange for the loading of the
114
+ Material in the containers, not for the loading onboard the vessel (which will be reflected in the Shipped on
115
+ Board date of BL). Seller has no control over shipping delays caused by the carrier and can therefore be
116
+ responsible only for the date by which the material is loaded in the container, not for the date of loading
117
+ onboard the vessel or for the sailing date. If container sailing is delayed due to delays by the shipping
118
+ lines, by customs, and/or by causes of force majeure, if by the expiry of the above deadline, the Material has
119
+ not yet been loaded into the respective containers, In the event that the Buyer does not exercise its
120
+ cancellation notice to the seller 3 days’ before deadline as per above, this Agreement shall be automatically
121
+ extended for additional 45 days. In any case, the Buyer shall not be entitled to cancel this Agreement once
122
+ the Material is loaded into the containers and notice thereof has been given by the Seller to the Buyer.
123
+ </div>
124
+ <h3>ARTICLE 13 - AS IS; NO WARRANTY</h3>
125
+ <div>
126
+ <text-content :form="form" :disable="disable" keys="saleNoWarranty"></text-content>
127
+ </div>
128
+ <h3>ARTICLE 14 - TAXES, DUTIES, FEES</h3>
129
+ <div>
130
+ <text-content :form="form" :disable="disable" keys="taxes"></text-content>
131
+ </div>
132
+ <h3>ARTICLE 15 - LICENSES/PERMITS</h3>
133
+ <div>
134
+ <text-content :form="form" :disable="disable" keys="licenses"></text-content>
135
+ </div>
136
+ <h3>ARTICLE 16 - COMPLIANCE WITH LAWS AND STATUTORY REGULATIONS</h3>
137
+ <div>
138
+ <text-content :form="form" :disable="disable" keys="complianceWithLaws"></text-content>
139
+ </div>
140
+ <h3>ARTICLE 17 - CANCELLATION AND TERMINATION</h3>
141
+ <div>
142
+ <text-content :form="form" :disable="disable" keys="cancellation"></text-content>
143
+ </div>
144
+ <h3>ARTICLE 18 - LIMITATION OF LIABILITY</h3>
145
+ <div>
146
+ <text-content :form="form" :disable="disable" keys="limitation"></text-content>
147
+ </div>
148
+ <h3>ARTICLE 19 – DISPUTES</h3>
149
+ <div>
150
+ <text-content :form="form" :disable="disable" keys="disputes"></text-content>
151
+ </div>
152
+ <h3>ARTICLE 20 - LAW GOVERNING CONTRACT</h3>
153
+ <div>
154
+ <text-content :form="form" :disable="disable" keys="lawGoverning"></text-content>
155
+ </div>
156
+ <h3>ARTICLE 21 – SEVERABILITY</h3>
157
+ <div>
158
+ <text-content :form="form" :disable="disable" keys="severability"></text-content>
159
+ </div>
160
+ <h3>ARTICLE 22 – ASSIGNMENT</h3>
161
+ <div>
162
+ <text-content :form="form" :disable="disable" keys="assignment"></text-content>
163
+ </div>
164
+ <h3>ARTICLE 23 – WAIVER</h3>
165
+ <div>
166
+ <text-content :form="form" :disable="disable" keys="waiver"></text-content>
167
+ </div>
168
+ <h3>ARTICLE 24 – NONDISCLOSURE</h3>
169
+ <div>
170
+ <text-content :form="form" :disable="disable" keys="saleNoNdisclosure"></text-content>
171
+ </div>
172
+ <h3>ARTICLE 25 - EXCUSABLE DELAYS</h3>
173
+ <div>
174
+ <text-content :form="form" :disable="disable" keys="excusable"></text-content>
175
+ </div>
176
+ <h3>ARTICLE 26 – LANGUAGE</h3>
177
+ <div>
178
+ <text-content :form="form" :disable="disable" keys="language"></text-content>
179
+ </div>
180
+ <h3>ARTICLE 27 – MISCELLANEOUS</h3>
181
+ <div>
182
+ <text-content :form="form" :disable="disable" keys="miscellaneous"></text-content>
183
+ </div>
184
+ </div>
185
+ <div v-else>
186
+ <h3>ARTICLE 1 – DEFINITIONS</h3>
187
+ <div>
188
+ <text-content :form="form" :disable="disable" keys="definitions"></text-content>
189
+ </div>
190
+ <h3>ARTICLE 2 – Annexure of Inquiry Page Content</h3>
191
+ <div>
192
+ <text-content :form="form" :disable="disable" keys="annexure"></text-content>
193
+ </div>
194
+ <h3>ARTICLE 3 – ACCEPTANCE</h3>
195
+ <div>
196
+ <text-content :form="form" :disable="disable" keys="acceptance"></text-content>
197
+ </div>
198
+ <h3>ARTICLE 4 – INCONSISTENT COMMODITY NAMES</h3>
199
+ <div>
200
+ <text-content :form="form" :disable="disable" keys="inconsistent"></text-content>
201
+ </div>
202
+ <h3>ARTICLE 5 – QUALITY, CUSTOMS REJECTION</h3>
203
+ <div>
204
+ <text-content :form="form" :disable="disable" keys="quality"></text-content>
205
+ </div>
206
+ <h3>ARTICLE 6 – CLAIM</h3>
207
+ <div>
208
+ <text-content :form="form" :disable="disable" keys="claim"></text-content>
209
+ </div>
210
+ <h3>ARTICLE 7 – LOADING REQUIREMENT</h3>
211
+ <div>
212
+ <text-content :form="form" :disable="disable" keys="loadingRequirement"></text-content>
213
+ </div>
214
+ <h3>ARTICLE 8 – PAYMENT</h3>
215
+ <div>
216
+ <!-- 比例 -->
217
+ <div v-if="form && form.depositType == '1'">
218
+ TTYY's downstream customers shall pay a deposit of {{ form.deposit}}% of the total Contract Price to the Seller within {{ form.depositDays }} days {{ depositPaymentFormKey(form.depositPaymentForm)}}.
219
+ </div>
220
+ <!-- 固定金额 -->
221
+ <div v-else>
222
+ TTYY's downstream customers shall pay a deposit of {{`$${form.advanceDepositAmount}`}}
223
+ TTYY within {{ form.depositDays }} days {{ depositPaymentFormKey(form.depositPaymentForm) }}.
224
+ </div>
225
+ </div>
226
+ The remaining {{ form && form.depositType == '1' && form.balance > 0 ? `${form.balance}%` : '' }} balance of the total Contract Price shall
227
+ be paid to the Seller via Telegraphic Transfer ({{ form.balancePaymentType }}) no later than {{ form.balanceDays }}
228
+ days {{ balancePaymentFormKey(form.balancePaymentForm) }}.
229
+ <h3>AARTICLE 9 – FLOATING PRICE</h3>
230
+ <div v-if="form.quoteType && form.quoteType != 'FIXED'">
231
+ Price Period: The {{ form.livePriceUsertype }} has the pricing option from container loaded date until
232
+ {{ form.livePriceDays }} days {{ form.livePriceForm }} it arrives at the port.
233
+ <br />
234
+ FOR PRICING the Seller and TTYY can communicate through email, Wechat group, WhatsApp group,Make a phone call
235
+ or the pricing function button of the APP.
236
+ <br />
237
+ The pricing will be determined based on the local working hours of either the Seller or the Buyer who provides
238
+ the price option.
239
+ <br />
240
+ If one party is unable to fix the price within the agreed Price Fixing Period, it is permitted to apply for an
241
+ extension pricing period application.The other party have the right to evaluate and offer extension pricing
242
+ period or not.
243
+ </div>
244
+ <h3>ARTICLE 10 – PRICE ADJUSTMENT</h3>
245
+ <div>
246
+ <text-content :form="form" :disable="disable" keys="priceAdjustment"></text-content>
247
+ </div>
248
+ <h3>ARTICLE 11 – PACKING, DELIVERY, SHIPPING & RISK OF LOSS</h3>
249
+ <div>
250
+ <text-content :form="form" :disable="disable" keys="purchasePacking"></text-content>
251
+ </div>
252
+ <h3>ARTICLE 12 - SHIPMENT PERIOD</h3>
253
+ <div>
254
+ <text-content :form="form" :disable="disable" keys="purchaseShipmentPeriod"></text-content>
255
+ </div>
256
+ <h3>ARTICLE 13 - TAXES, DUTIES, FEES</h3>
257
+ <div>
258
+ <text-content :form="form" :disable="disable" keys="taxes"></text-content>
259
+ </div>
260
+ <h3>ARTICLE 14 - LICENSES/PERMITS</h3>
261
+ <div>
262
+ <text-content :form="form" :disable="disable" keys="licenses"></text-content>
263
+ </div>
264
+ <h3>ARTICLE 15 - COMPLIANCE WITH LAWS AND STATUTORY REGULATIONS</h3>
265
+ <div>
266
+ <text-content :form="form" :disable="disable" keys="complianceWithLaws"></text-content>
267
+ </div>
268
+ <h3>AARTICLE 16 - CANCELLATION AND TERMINATION</h3>
269
+ <div>
270
+ <text-content :form="form" :disable="disable" keys="cancellation"></text-content>
271
+ </div>
272
+ <h3>ARTICLE 17 - LIMITATION OF LIABILITY</h3>
273
+ <div>
274
+ <text-content :form="form" :disable="disable" keys="limitation"></text-content>
275
+ </div>
276
+ <h3>ARTICLE 18 – DISPUTES</h3>
277
+ <div>
278
+ <text-content :form="form" :disable="disable" keys="disputes"></text-content>
279
+ </div>
280
+ <h3>ARTICLE 19 - LAW GOVERNING CONTRACT</h3>
281
+ <div>
282
+ <text-content :form="form" :disable="disable" keys="lawGoverning"></text-content>
283
+ </div>
284
+ <h3>ARTICLE 20 – SEVERABILITY</h3>
285
+ <div>
286
+ <text-content :form="form" :disable="disable" keys="severability"></text-content>
287
+ </div>
288
+ <h3>ARTICLE 21 – ASSIGNMENT</h3>
289
+ <div>
290
+ <text-content :form="form" :disable="disable" keys="assignment"></text-content>
291
+ </div>
292
+ <h3>ARTICLE 22 – WAIVER</h3>
293
+ <div>
294
+ <text-content :form="form" :disable="disable" keys="waiver"></text-content>
295
+ </div>
296
+ <h3>ARTICLE 23 - EXCUSABLE DELAYS</h3>
297
+ <div>
298
+ <text-content :form="form" :disable="disable" keys="excusable"></text-content>
299
+ </div>
300
+ <h3>ARTICLE 24 – INSURANCE</h3>
301
+ <div>
302
+ <text-content :form="form" :disable="disable" keys="purchaseInsurance"></text-content>
303
+ </div>
304
+ <h3>ARTICLE 25 – LANGUAGE</h3>
305
+ <div>
306
+ <text-content :form="form" :disable="disable" keys="language"></text-content>
307
+ </div>
308
+ <h3>ARTICLE 26 – MISCELLANEOUS</h3>
309
+ <div>
310
+ <text-content :form="form" :disable="disable" keys="miscellaneous"></text-content>
311
+ </div>
312
+ </div>
313
+ </div>
314
+ </div>
315
+ </template>
316
+ <script>
317
+ import TextContent from './contractClauseComponenrts/TextContent'
318
+ export default {
319
+ name: 'ContractClause',
320
+ dicts: ['deposit_payment_form', 'balance_payment_form'],
321
+ props: {
322
+ form: {
323
+ type: Object,
324
+ default: null
325
+ },
326
+ editable: {
327
+ type: Boolean,
328
+ default: false
329
+ }
330
+ },
331
+ components: {
332
+ TextContent
333
+ },
334
+ data() {
335
+ return {
336
+ disable: true
337
+ }
338
+ },
339
+ created() {
340
+ },
341
+ methods: {
342
+ disableEdit() {
343
+ this.disable = true
344
+ },
345
+ depositPaymentFormKey(value) {
346
+ let label = this.dict.type.deposit_payment_form.find(item => item.value == value)?.raw?.dictLabelEn
347
+ return label || ''
348
+ },
349
+ balancePaymentFormKey(value) {
350
+ let label = this.dict.type.balance_payment_form.find(item => item.value == value)?.raw?.dictLabelEn
351
+ return label || ''
352
+ }
353
+ }
354
+ }
355
+ </script>
356
+ <style lang="scss" scoped></style>
@@ -0,0 +1,53 @@
1
+ <template>
2
+ <div>
3
+ <div class="text-content-text" v-if="disable">{{ form['contractClause'][keys] }}</div>
4
+ <el-input v-else type="textarea" v-model="form['contractClause'][keys]" :autosize="{ minRows: 3}"></el-input>
5
+ </div>
6
+ </template>
7
+
8
+ <script>
9
+ export default {
10
+ name: 'TextContent',
11
+ props: {
12
+ form: {
13
+ type: Object,
14
+ default: () => {}
15
+ },
16
+ disable: {
17
+ type: Boolean,
18
+ default: true
19
+ },
20
+ keys: {
21
+ type: String,
22
+ default: ''
23
+ }
24
+ },
25
+
26
+ data() {
27
+ return {
28
+
29
+ };
30
+ },
31
+
32
+ mounted() {
33
+
34
+ },
35
+
36
+ methods: {
37
+
38
+ },
39
+ };
40
+ </script>
41
+
42
+ <style lang="scss" scoped>
43
+ .text-content-text {
44
+ white-space: pre-wrap;
45
+ word-break:break-word;
46
+ }
47
+
48
+ .contract-textarea {
49
+ width: 100%;
50
+ height: max-content;
51
+ }
52
+
53
+ </style>