@uxda/appkit 4.1.44 → 4.1.48

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uxda/appkit",
3
- "version": "4.1.44",
3
+ "version": "4.1.48",
4
4
  "description": "小程序应用开发包",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.ts",
@@ -16,7 +16,7 @@
16
16
  <div class="rule" @click="rulesPopupOpen = true">规则说明</div>
17
17
  </div>
18
18
  <div class="bean-counts spa-between">
19
- <div class="counts number">{{ balance.total || 0 }}</div>
19
+ <div class="counts number">{{ formatAmount(balance.total || 0) }}</div>
20
20
  <div class="pay" @click="gotoRecharge">云豆充值</div>
21
21
  </div>
22
22
  </div>
@@ -26,7 +26,7 @@
26
26
  <div class="list">
27
27
  <div class="item star-item" v-for="(item, index) in balance.privileges.corporateStar" :key="index">
28
28
  <div class="item-count">
29
- <span>{{ item.count }}</span><span>{{ item.unit }}</span>
29
+ <span>{{ formatAmount(item.count || 0) }}</span><span>{{ item.unit }}</span>
30
30
  </div>
31
31
  <div class="item-title">
32
32
  <div>{{ item.title }}</div>
@@ -42,7 +42,7 @@
42
42
  <div class="title">AI审批权益</div>
43
43
  <div class="list">
44
44
  <div class="item" v-for="(item, index) in balance.privileges.aiapprove" :key="index">
45
- <div class="item-count">{{ item.count }}{{ item.unit }}</div>
45
+ <div class="item-count">{{ formatAmount(item.count || 0) }}{{ item.unit }}</div>
46
46
  <div class="item-title">{{ item.title }}</div>
47
47
  </div>
48
48
  </div>
@@ -130,6 +130,7 @@ import dayjs from 'dayjs'
130
130
  import EmptyView from '../../shared/components/EmptyView.vue'
131
131
  import Tip from './Tip.vue'
132
132
  import groupBy from 'lodash/groupBy'
133
+ import { useAmount } from '../../shared/composables/useAmount'
133
134
 
134
135
  const refreshing = ref(false)
135
136
 
@@ -140,6 +141,7 @@ const props = withDefaults(defineProps<AccountViewProps>(), {
140
141
  app: '',
141
142
  })
142
143
 
144
+ const { formatAmount } = useAmount()
143
145
  const emit = defineEmits(['recharge', 'trade'])
144
146
 
145
147
  const filterOpen = ref<boolean>(false)
@@ -9,7 +9,7 @@
9
9
  </div>
10
10
  <span class="baan-name">云豆</span>
11
11
  </div>
12
- <div class="bean-nums number">{{ balance.total || 0 }}</div>
12
+ <div class="bean-nums number">{{ formatAmount(balance.total || 0) }}</div>
13
13
  </div>
14
14
  <div class="card-row-right">
15
15
  <div class="account-info-entry" @click="gotoDetail">
@@ -43,6 +43,7 @@ import { ref } from 'vue'
43
43
  import { endpoints, useHttp } from '../api'
44
44
  import { Balance } from '../types'
45
45
  import { useDidShow } from '@tarojs/taro'
46
+ import { useAmount } from '../../shared/composables/useAmount'
46
47
 
47
48
  type BalanceCardProps = {
48
49
  app: string
@@ -51,6 +52,7 @@ const props = withDefaults(defineProps<BalanceCardProps>(), {
51
52
  app: '',
52
53
  })
53
54
 
55
+ const { formatAmount } = useAmount()
54
56
  const balance = ref<Balance>({
55
57
  total: 0,
56
58
  privileges: [],
@@ -6,15 +6,15 @@
6
6
  </div>
7
7
  <div class="promoter-card-hd" @click="emits('blance', tab)"
8
8
  v-if="applyRecord.distributorFlag === 'Y' || applyRecord.accessCheckStatus === 'Y'">
9
- <div class="promoter-card-hd-num">{{ promoter.balance }}</div>
9
+ <div class="promoter-card-hd-num">{{ formatAmount(promoter.balance || 0) }}</div>
10
10
  <div class="promoter-card-hd-info">可提现余额(元)</div>
11
11
  <img class="arrow-img" src="https://cdn.ddjf.com/static/images/appkit/arrow.png" alt="">
12
12
  </div>
13
13
  <div class="promoter-card-ft">
14
14
  <div class="promoter-card-ft-item" v-if="applyRecord.accessCheckStatus === 'Y'" @click="emits('profits', tab)">
15
- <div class="promoter-card-ft-info">销售累计收益()</div>
15
+ <div class="promoter-card-ft-info">销售累计收益()</div>
16
16
  <div class="promoter-card-ft-num">
17
- {{ promoter.totalIncome }}
17
+ {{ formatAmount(promoter.totalIncome || 0) }}
18
18
  <img class="arrow-img" src="https://cdn.ddjf.com/static/images/appkit/arrow.png" alt="">
19
19
  </div>
20
20
  </div>
@@ -23,7 +23,7 @@
23
23
  <div class="promoter-card-ft-item" @click="emits('rebate', tab)" v-if="applyRecord.distributorFlag === 'Y'">
24
24
  <div class="promoter-card-ft-info">返佣累计收益(元)</div>
25
25
  <div class="promoter-card-ft-num">
26
- {{ promoter.totalRebateIncome }}
26
+ {{ formatAmount(promoter.totalRebateIncome || 0) }}
27
27
  <img class="arrow-img" src="https://cdn.ddjf.com/static/images/appkit/arrow.png" alt="">
28
28
  </div>
29
29
  </div>
@@ -36,6 +36,7 @@ import { ref, watch } from 'vue'
36
36
  import { endpoints, useHttp } from '../api'
37
37
  import { Promoter } from '../types'
38
38
  import { useDidShow } from '@tarojs/taro'
39
+ import { useAmount } from '../../shared/composables/useAmount'
39
40
 
40
41
  type PromoterCardProps = {
41
42
  useCase: string
@@ -48,6 +49,7 @@ const props = withDefaults(defineProps<PromoterCardProps>(), {
48
49
  isAdmin: true
49
50
  })
50
51
 
52
+ const { formatAmount } = useAmount()
51
53
  const tab = ref('person')
52
54
 
53
55
  const promoter = ref<Promoter>({
@@ -1,44 +1,42 @@
1
1
  <template>
2
2
  <view class="view recharge-view2">
3
3
  <view class="flex-grow">
4
- <rights-picker :items="amounts"
5
- :selected="state.selected"
6
- @change="onAmountSelect" />
4
+ <rights-picker :items="amounts" :selected="state.selected" @change="onAmountSelect" />
7
5
  <div class="bean-buy" v-if="amounts[state.selected]">
8
6
  <div class="left">
9
7
  <div class="title">使用云豆支付</div>
10
- <div class="amount" v-if="!selectBean">余额 {{balance}}</div>
11
- <div class="amount" v-else>扣减后余额 {{(balance - amounts[state.selected].paymentAmount).toFixed(1)}}</div>
8
+ <div class="amount" v-if="!selectBean">余额 {{ formatAmount(balance || 0) }}</div>
9
+ <div class="amount" v-else>扣减后余额 {{ formatAmount(balance - amounts[state.selected].paymentAmount) }}</div>
12
10
  </div>
13
11
  <div class="right" v-if="balance >= amounts[state.selected].paymentAmount" @click="selectBean = !selectBean">
14
- <div class="amount">-{{ amounts[state.selected].paymentAmount }}</div>
15
- <img class="icon" :src="selectBean ? 'https://cdn.ddjf.com/static/images/appkit/select.svg' : 'https://cdn.ddjf.com/static/images/appkit/not-select.svg'" />
12
+ <div class="amount">-{{ formatAmount(amounts[state.selected].paymentAmount || 0) }}</div>
13
+ <img class="icon"
14
+ :src="selectBean ? 'https://cdn.ddjf.com/static/images/appkit/select.svg' : 'https://cdn.ddjf.com/static/images/appkit/not-select.svg'" />
16
15
  </div>
17
- </div>
16
+ </div>
18
17
  </view>
19
18
  <view class="amount-footer">
20
19
  <view class="agreement" v-if="!selectBean">
21
- <nut-checkbox v-model="state.agreed">我已阅读并同意<a class="link inline" @click="onAgreementLinkClick">《大道云平台云豆充值服务协议》</a></nut-checkbox>
20
+ <nut-checkbox v-model="state.agreed">我已阅读并同意<a class="link inline"
21
+ @click="onAgreementLinkClick">《大道云平台云豆充值服务协议》</a></nut-checkbox>
22
22
  </view>
23
23
  <div class="buy-amount">
24
24
  <div class="left">
25
25
  待支付:
26
26
  <span class="amount">
27
- <i>¥</i>{{ currentAmount }}
27
+ <i>¥</i>{{ formatAmount(currentAmount) }}
28
28
  </span>
29
29
  </div>
30
- <nut-button block
31
- shape="square"
32
- :loading="state.buttonLoading"
33
- @click="onPayClick"
34
- class="recharge-button">购买</nut-button>
30
+ <nut-button block shape="square" :loading="state.buttonLoading" @click="onPayClick"
31
+ class="recharge-button">购买</nut-button>
35
32
  </div>
36
33
  </view>
37
- <nut-dialog title="确认购买" custom-class="trade-dialog" v-model:visible="showDialog" @cancel="showDialog = !showDialog" @ok="beanPay" >
34
+ <nut-dialog title="确认购买" custom-class="trade-dialog" v-model:visible="showDialog" @cancel="showDialog = !showDialog"
35
+ @ok="beanPay">
38
36
  <template v-if="amounts[state.selected]">
39
- <div class="item">云豆扣减:{{ amounts[state.selected].paymentAmount }}</div>
40
- <div class="item">权益增加:{{ amounts[state.selected].priceRightNum }}笔</div>
41
- <div class="item">扣减后云豆余额:{{ (balance - amounts[state.selected].paymentAmount).toFixed(1) }}</div>
37
+ <div class="item">云豆扣减:{{ formatAmount(amounts[state.selected].paymentAmount || 0) }}</div>
38
+ <div class="item">权益增加:{{ formatAmount(amounts[state.selected].priceRightNum || 0) }}笔</div>
39
+ <div class="item">扣减后云豆余额:{{ formatAmount(balance - amounts[state.selected].paymentAmount) }}</div>
42
40
  </template>
43
41
  </nut-dialog>
44
42
  </view>
@@ -50,6 +48,7 @@ import RightsPicker, { Amount } from './RightsPicker.vue'
50
48
  import { endpoints, useHttp } from '../api'
51
49
  import { requestPaymentByBean } from '../services'
52
50
  import Taro from '@tarojs/taro'
51
+ import { useAmount } from '../../shared/composables/useAmount'
53
52
 
54
53
  // 充值用户界面
55
54
  // 配置了必须的属性后
@@ -71,9 +70,10 @@ export interface RechargeViewProps {
71
70
  }
72
71
 
73
72
  const props = defineProps<RechargeViewProps>()
73
+ const { formatAmount } = useAmount()
74
74
 
75
75
  const emit = defineEmits<{
76
- (event: 'complete', value: {result: boolean, type: string}): void,
76
+ (event: 'complete', value: { result: boolean, type: string }): void,
77
77
  (event: 'agree'): void,
78
78
  }>()
79
79
 
@@ -101,7 +101,7 @@ const onAmountSelect = (selected: number) => {
101
101
  selectBean.value = false
102
102
  }
103
103
 
104
- const currentAmount = computed(()=>{
104
+ const currentAmount = computed(() => {
105
105
  return amounts.value[state.selected] && !selectBean.value ? amounts.value[state.selected].paymentAmount : 0
106
106
  })
107
107
 
@@ -115,13 +115,13 @@ onMounted(() => {
115
115
 
116
116
  // 云豆支付
117
117
  const showDialog = ref<boolean>(false)
118
- async function beanPay(){
118
+ async function beanPay() {
119
119
  const $http = useHttp()
120
- $http.post( `/payment/paymentCaseConfig/purchase/${amounts.value[state.selected].id}`).then((response: any) => {
120
+ $http.post(`/payment/paymentCaseConfig/purchase/${amounts.value[state.selected].id}`).then((response: any) => {
121
121
  if (response) {
122
122
  showDialog.value = false
123
- emit('complete', {result: response, type: 'bean'})
124
- }else {
123
+ emit('complete', { result: response, type: 'bean' })
124
+ } else {
125
125
  Taro.showToast({
126
126
  title: response.message,
127
127
  icon: 'none',
@@ -133,11 +133,11 @@ async function beanPay(){
133
133
 
134
134
  const onPayClick = () => {
135
135
  // 用云豆支付
136
- if(selectBean.value){
136
+ if (selectBean.value) {
137
137
  showDialog.value = true
138
- return
138
+ return
139
139
  }
140
-
140
+
141
141
  // 微信支付
142
142
  if (!selectBean.value && !state.agreed) {
143
143
  Taro.showToast({
@@ -148,7 +148,7 @@ const onPayClick = () => {
148
148
  }
149
149
  state.buttonLoading = true
150
150
  wx.login({
151
- success ({code}: {code: string}) {
151
+ success({ code }: { code: string }) {
152
152
  requestPaymentByBean({
153
153
  caseConfigId: amounts.value[state.selected].id,
154
154
  amount: amounts.value[state.selected].paymentAmount,
@@ -158,7 +158,7 @@ const onPayClick = () => {
158
158
  }).then(result => {
159
159
  state.buttonLoading = false
160
160
  if (result) {
161
- emit('complete', {result: true, type: 'wePay'})
161
+ emit('complete', { result: true, type: 'wePay' })
162
162
  }
163
163
  })
164
164
  }
@@ -171,10 +171,12 @@ const onPayClick = () => {
171
171
  height: 100%;
172
172
  display: flex;
173
173
  flex-direction: column;
174
+
174
175
  .flex-grow {
175
176
  flex-grow: 1;
176
177
  }
177
- .bean-buy{
178
+
179
+ .bean-buy {
178
180
  margin: 0 15px;
179
181
  padding: 10px;
180
182
  background: #FFFBF3;
@@ -182,16 +184,18 @@ const onPayClick = () => {
182
184
  display: flex;
183
185
  justify-content: space-between;
184
186
  align-items: center;
185
- .left{
186
- .title{
187
- color:#FD6701;
187
+
188
+ .left {
189
+ .title {
190
+ color: #FD6701;
188
191
  font-size: 14px;
189
192
  font-weight: 600;
190
- line-height: 20px;
193
+ line-height: 20px;
191
194
  margin-bottom: 6px;
192
195
  }
193
- .amount{
194
- color:#353535;
196
+
197
+ .amount {
198
+ color: #353535;
195
199
  font-size: 13px;
196
200
  line-height: 16px;
197
201
  background-image: url('https://cdn.ddjf.com/static/images/appkit/yundou.png');
@@ -200,16 +204,19 @@ const onPayClick = () => {
200
204
  padding-left: 24px;
201
205
  }
202
206
  }
203
- .right{
207
+
208
+ .right {
204
209
  display: flex;
205
210
  align-items: center;
206
- .amount{
207
- color:#353535;
211
+
212
+ .amount {
213
+ color: #353535;
208
214
  font-size: 15px;
209
215
  line-height: 20px;
210
216
  margin-right: 10px;
211
217
  }
212
- .icon{
218
+
219
+ .icon {
213
220
  display: block;
214
221
  width: 16px;
215
222
  height: 16px;
@@ -217,9 +224,11 @@ const onPayClick = () => {
217
224
  }
218
225
  }
219
226
  }
227
+
220
228
  .amount-footer {
221
229
  padding: 10px 0;
222
230
  padding-bottom: 20px;
231
+
223
232
  .agreement {
224
233
  font-size: 12px;
225
234
  display: flex;
@@ -227,27 +236,33 @@ const onPayClick = () => {
227
236
  align-items: cebter;
228
237
  height: 40px;
229
238
  }
230
- .buy-amount{
239
+
240
+ .buy-amount {
231
241
  display: flex;
232
242
  justify-content: space-between;
233
243
  align-items: center;
234
244
  padding: 0 10px;
235
245
  border-radius: 0px;
236
- box-shadow: 0px -5px 14px -5px rgba(0, 0, 0, 0.1); /* 上边框阴影 */
237
- .left{
246
+ box-shadow: 0px -5px 14px -5px rgba(0, 0, 0, 0.1);
247
+
248
+ /* 上边框阴影 */
249
+ .left {
238
250
  width: 70%;
239
- color:#353535;
251
+ color: #353535;
240
252
  font-size: 13px;
241
- .amount{
242
- color:#FD6701;
253
+
254
+ .amount {
255
+ color: #FD6701;
243
256
  font-size: 20px;
244
257
  font-weight: 600;
245
- i{
258
+
259
+ i {
246
260
  font-size: 14px;
247
261
  font-style: normal;
248
262
  }
249
263
  }
250
264
  }
265
+
251
266
  .recharge-button {
252
267
  background: linear-gradient(90deg, #FFEBC1 0%, #FFD7A7 52.29%, #FFB875 100%);
253
268
  color: #353535;
@@ -257,36 +272,43 @@ const onPayClick = () => {
257
272
  flex: 1;
258
273
  }
259
274
  }
275
+
260
276
  .nut-checkbox {
261
277
  line-height: 40px;
262
278
  }
279
+
263
280
  .nut-checkbox__label {
264
281
  margin-left: 8px;
265
282
  flex: flex;
266
283
  font-size: 12px;
267
284
  }
285
+
268
286
  .link {
269
287
  display: inline;
270
288
  color: #FD6701;
271
289
  }
272
290
  }
273
291
  }
274
- .trade-dialog{
275
- .nut-dialog__header{
292
+
293
+ .trade-dialog {
294
+ .nut-dialog__header {
276
295
  font-size: 16px;
277
296
  color: #262626
278
297
  }
279
- .item{
298
+
299
+ .item {
280
300
  font-size: 14px;
281
- color:#666666;
301
+ color: #666666;
282
302
  line-height: 21px;
283
303
  }
284
- .nut-dialog__footer-cancel{
304
+
305
+ .nut-dialog__footer-cancel {
285
306
  color: #353535 !important;
286
307
  border-color: #CCCCCC !important;
287
308
  }
309
+
288
310
  .nut-dialog__footer-ok {
289
- border:none;
311
+ border: none;
290
312
  color: #353535;
291
313
  background: linear-gradient(90deg, #FFEBC1 0%, #FFB875 100%);
292
314
  }
@@ -1,7 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import { reactive } from 'vue'
3
- import OcrId from './../../components/ocr-id/index.vue'
4
- import { OcrResultType } from '../../components/ocr-id/types'
3
+ import OcrIcon from '../../shared/components/OcrIcon.vue'
5
4
  import DdArea from './../../components/dd-area/index.vue'
6
5
  import DdSelector from './../../components/dd-selector/index.vue'
7
6
  import Taro from '@tarojs/taro'
@@ -46,10 +45,10 @@ const positionOptions = [
46
45
 
47
46
  const emit = defineEmits(['submit'])
48
47
 
49
- function onOCRInfo(payload: OcrResultType) {
48
+ function onOCRInfo(payload: any) {
50
49
  if (!payload) return
51
- formState.name = payload.faceInfo.name
52
- formState.certNo = payload.faceInfo.certNo
50
+ formState.name = payload?.faceInfo.name
51
+ formState.certNo = payload?.faceInfo.certNo
53
52
  }
54
53
 
55
54
  function showVerifyToast(tip: string, duration = 1500) {
@@ -124,25 +123,18 @@ async function submit() {
124
123
  </nut-form-item>
125
124
  <nut-form-item label="你的姓名" required>
126
125
  <div class="self-registration__input">
127
- <input
128
- v-model="formState.name"
129
- class="nut-input-text"
130
- placeholder="请输入或拍照识别"
131
- type="text"
132
- :maxlength="20"
133
- />
134
- <OcrId @ocr="onOCRInfo" style="margin-left: 5px" />
126
+ <input v-model="formState.name" class="nut-input-text" placeholder="请输入或拍照识别" type="text" :maxlength="20" />
127
+ <OcrIcon @complete="onOCRInfo">
128
+ <template #icon>
129
+ <img style="width: 20px; height: 20px; margin-left: 5px;"
130
+ src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgZmlsbD0ibm9uZSI+PHBhdGggb3BhY2l0eT0iLjAxIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQwIDB2NDBIMFYwaDQweiIgZmlsbD0iI0M0QzRDNCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzMuMDQ0IDE3LjM2M2MuOTYgMCAxLjczOS0uNzkgMS43MzktMS43NjYgMC0uOTc1LS43NzktMS43NjYtMS43NC0xLjc2Ni0uOTYgMC0xLjczOC43OS0xLjczOCAxLjc2NnMuNzc4IDEuNzY2IDEuNzM5IDEuNzY2eiIgZmlsbD0iIzRCQ0I5MyIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMCAzMS44MTJWMTQuNzg4YzAtMi4yNTggMi4wNDktNC4wOTcgNC41NjQtNC4wOTdoMy44NDRsMS4xMzYtMy42NThDOS44ODggNS45MTMgMTEuMjM3IDUgMTIuNTQ4IDVIMjcuNDVjMS4zOSAwIDIuNjguODc2IDMuMDEgMi4wNDRsMS4xMzMgMy42NDdoMy44NDRjMi41MTUgMCA0LjU2NCAxLjgzOSA0LjU2NCA0LjA5N3YxLjczOWMwIC41MDMtLjQ1NC45MS0xLjAxNC45MXMtMS4wMTQtLjQwNy0xLjAxNC0uOTF2LTEuNzRjMC0xLjI1My0xLjEzOS0yLjI3NS0yLjUzNi0yLjI3NWgtMy44NDRjLS45MDcgMC0xLjcxMS0uNTQ5LTEuOTU1LTEuMzMybC0xLjEzNi0zLjY2YS4zNDIuMzQyIDAgMCAwLS4wMDctLjAyNWMtLjExLS4zOTYtLjYzOS0uNjc0LTEuMDQ1LS42NzRoLTE0LjljLS4zOTkgMC0uOTUuMzY2LTEuMDUzLjY5OWwtMS4xMzYgMy42NmMtLjI0Ny43ODYtMS4wNDUgMS4zMy0xLjk1NSAxLjMzMkg0LjU2NGMtMS4zOTcgMC0yLjUzNiAxLjAyMi0yLjUzNiAyLjI3NnYxNy4wMjRjMCAxLjI1NCAxLjEzOSAyLjI3NiAyLjUzNiAyLjI3NmgzMC44N2MxLjM5NyAwIDIuNTM1LTEuMDIyIDIuNTM1LTIuMjc2VjIxLjU5NmMwLS41MDMuNDU0LS45MSAxLjAxNC0uOTFzMS4wMTUuNDA3IDEuMDE1LjkxVjMxLjgxYy0uMDAzIDIuMjYtMi4wNSA0LjEtNC41NjcgNC4xSDQuNTY0QzIuMDQ5IDM1LjkxIDAgMzQuMDcgMCAzMS44MTF6IiBmaWxsPSIjNEJDQjkzIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi4xNzQgMjEuNzc4YzAtNC44NyAzLjcwNS04LjgzIDguMjYtOC44MyA0LjU1NiAwIDguMjYyIDMuOTYgOC4yNjIgOC44M3MtMy43MDYgOC44MzItOC4yNjEgOC44MzJjLTQuNTU2IDAtOC4yNjEtMy45NjItOC4yNjEtOC44MzJ6bTEuNzc5LjEzYzAgMy43OTYgMi45MDcgNi44ODMgNi40ODIgNi44ODMgMy41NzQgMCA2LjQ4MS0zLjA4NyA2LjQ4MS02Ljg4M3MtMi45MDctNi44ODMtNi40ODItNi44ODNjLTMuNTc0IDAtNi40ODEgMy4wODctNi40ODEgNi44ODN6IiBmaWxsPSIjNEJDQjkzIi8+PC9zdmc+" />
131
+ </template>
132
+ </OcrIcon>
135
133
  </div>
136
134
  </nut-form-item>
137
135
 
138
136
  <nut-form-item v-if="formState.scene === 'person'" label="身份证号码" required>
139
- <input
140
- v-model="formState.certNo"
141
- class="nut-input-text"
142
- placeholder="请输入"
143
- type="text"
144
- :maxlength="18"
145
- />
137
+ <input v-model="formState.certNo" class="nut-input-text" placeholder="请输入" type="text" :maxlength="18" />
146
138
  </nut-form-item>
147
139
 
148
140
  <template v-else>
@@ -150,22 +142,11 @@ async function submit() {
150
142
  <DdSelector v-model:value="formState.position" :options="positionOptions" />
151
143
  </nut-form-item>
152
144
  <nut-form-item label="公司名称" required>
153
- <input
154
- v-model="formState.companyName"
155
- class="nut-input-text"
156
- placeholder="请输入"
157
- type="text"
158
- :maxlength="50"
159
- />
145
+ <input v-model="formState.companyName" class="nut-input-text" placeholder="请输入" type="text"
146
+ :maxlength="50" />
160
147
  </nut-form-item>
161
148
  <nut-form-item label="社会统一信用代码" required>
162
- <input
163
- v-model="formState.companyNo"
164
- class="nut-input-text"
165
- placeholder="请输入"
166
- type="text"
167
- :maxlength="18"
168
- />
149
+ <input v-model="formState.companyNo" class="nut-input-text" placeholder="请输入" type="text" :maxlength="18" />
169
150
  </nut-form-item>
170
151
  <nut-form-item label="所在地区" required>
171
152
  <DdArea v-model:value="formState.areaCode" type="city" placeholder="请选择" />
@@ -174,9 +155,7 @@ async function submit() {
174
155
  </nut-form>
175
156
  </div>
176
157
  <div class="self-registration-bottom">
177
- <nut-button block type="primary" class="experience-button" @click="submit"
178
- >立即体验</nut-button
179
- >
158
+ <nut-button block type="primary" class="experience-button" @click="submit">立即体验</nut-button>
180
159
  </div>
181
160
  </div>
182
161
  </template>
@@ -1,9 +1,5 @@
1
1
  <template>
2
- <div
3
- :class="['ocr-business-license', disabled ? 'disabled' : '']"
4
- class="ocr-icon"
5
- @click="onIconClick"
6
- >
2
+ <div :class="['ocr-business-license', disabled ? 'disabled' : '']" class="ocr-icon" @click="onIconClick">
7
3
  <ns-icon name="https://cdn.ddjf.com/static/images/beidouxing/ocr-icon.png" />
8
4
  </div>
9
5
  </template>
@@ -82,7 +78,6 @@ async function onIconClick() {
82
78
  objectNo: `min${Date.now()}`,
83
79
  },
84
80
  header: {
85
- sessionKey: session || '',
86
81
  token: session || '',
87
82
  },
88
83
  });
@@ -120,10 +115,12 @@ async function onIconClick() {
120
115
  .ocr-business-license {
121
116
  width: 24px;
122
117
  height: 24px;
118
+
123
119
  .ns-icon {
124
120
  width: 24px;
125
121
  height: 24px;
126
122
  }
123
+
127
124
  &.disabled {
128
125
  .ns-icon {
129
126
  filter: brightness(1.5) grayscale(1);