'-'
zhangwei
4 天以前 ddbf9504fc5faf6764fffa4e9263a3ad927331d8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
<template>
  <div class="content pb-6">
    <div class="header">
      <div class="headimg">
        <img width="167px" height="44px" src="@/assets/home/logo.png" alt="" />
      </div>
    </div>
    <div class="center w-[70%] bg-white mx-auto m-12">
      <div class="flex items-center p-5 pl-6">
        <img src="@/assets/home/xian.png" alt="" />
        <span style="margin-left: 5px">注册向导</span>
      </div>
      <div class="w-[95%] border-1 border-[#E5E5E5] mx-auto pt-5 pb-2">
        <el-steps style="max-width: 100%" :active="active" align-center>
          <el-step title="阅读注册协议" />
          <el-step title="填写基本信息" />
          <el-step title="信息登记完成" />
        </el-steps>
      </div>
      <div v-if="active == 0" class="h-[480px]">
        <div class="text-center pt-5 pb-1.5">注册条款</div>
        <div class="w-[95%] h-105 border-1 border-[#E5E5E5] mx-auto p-2">
          <el-scrollbar max-height="400px">
            <p>
              根据《中华人民共和国合同法》、《中华人民共和国著作权法》、《全国人大常委会关于维护互联网安全的决定》、《中华人民共和国政府采购法》、《互联网信息服务管理办法》、《互联网电子公告服务管理规定》等有关法律、法规、规章,制订本条款。所有进入本平台的用户,在使用本平台提供的任何服务前,必须事先认真阅读并同意本服务协议。用户通过点击“我同意”按钮即表示用户与本招标采购平台达成协议,接受本招标采购平台服务条款全部内容。点击“不同意”按钮,视为放弃本招标采购平台提供的服务,并表示放弃注册信息库。
            </p>
            <h3><strong>一、用户资料 </strong></h3>
            <p>用户同意:</p>
            <p>
              (一)在申请使用本招标采购平台提供的服务时,向本招标采购平台提供真实、准确、完整的单位或个人资料。
            </p>
            <p>
              (二)如用户的单位或个人资料有任何变更,用户应及时更新注册资料。如果用户提供的资料不完整或者用户提供的资料包含有不正确或不准确的信息,由此相关的一切后果均应当由用户自行承担。
            </p>
            <p>
              (三)用户资料包括您在注册、购标、答疑、投标、澄清、评标等过程中,以任何网络形式向本平台传送的任何资料,包括数据、文本、照片、图画、影像、词句或其他材料。您应对“您的资料”负全部责任,倘若本平台认为“您的资料”可能使我方承担任何法律或道义上的责任,则本平台可自行全权决定对“您的资料”采取我方认为必要或适当的任何行动,包括但不限于删除该类资料。您特此保证,您对提交给本平台的“您的资料”拥有全部合法权利。
              平台注册用户应遵循诚实信用原则,如发现恶意注册者,平台将冻结其姓名与联系方式、加入失信黑名单并予以公布,禁止一定期限内参与任何项目,同时追究恶意注册者法律责任。
            </p>
            <h3><strong>二、服务条款的修改</strong></h3>
            本招标采购平台有权根据需要修改服务条款,本招标采购平台服务条款一旦发生修改或其它变动,将在条款相关页面予以提示。用户可自由点击选择“同意”或“不同意”。如点击“同意”,则视为对原服务条款的变更,本平台将即刻按照最新的服务协议约定为您提供服务。如点击“不同意”,则该服务将无法为您提供,您有权选择暂停使用或注销该账户。除另有明确声明外,任何使“服务”范围扩大或功能增强的新内容均受本协议约束。
            <h3><strong>三、隐私保护</strong></h3>
            <p>
              本招标采购平台承诺不会公开、转让或透露其用户的不可公开的注册资料及用户在本招标采购平台中保存的非公开内容,除非:
            </p>
            <p>(一)有关法律、法规、规章的强制性规定;</p>
            <p>(二)有关司法、行政机关的要求;</p>
            <p>(三)保持或维护本招标采购平台的合法权益;</p>
            <p>(四)事先获得用户的明确授权。</p>
            <p>
              用户不得对任何资料作商业性利用,包括但不限于在未经本平台运营方书面批准的情况下,复制在本平台上展示的任何资料,包括系统的功能结构和画面等。
            </p>
            <h3><strong>四、用户的帐号、密码和安全性</strong></h3>
            <p>
              用户在本招标采购平台注册成功后,将获得一个帐号和密码。该帐号和密码由用户负责保管,用户可随时改变其密码。每个用户都要对其帐户中的所有活动和事件负全部责任,用户同意若发现任何非法使用用户帐号或安全漏洞的情况,立即通告本招标采购平台。本招标采购平台承诺不将用户帐号和密码透露给第三方。但因用户原因造成密码泄露,用户需自行承担全部责任和相关后果。因用户原因造成帐号由他人使用,用户需自行承担全部责任和相关后果,同时,本招标采购平台视为用户进行了相关操作。
            </p>
            <h3><strong>五、收费</strong></h3>
            <p>
              本平台保留收取“服务”费用的权利。您因进行投标或获取相关信息等向本平台运营方获取有偿服务或接触本平台服务器而发生的所有应纳税赋,以及相关硬件、软件、通讯、网络服务及其他方面的费用均由您自行承担。本平台保留在无需发出书面通知、仅在本平台网上公示的情况下,暂时或永久地更改或停止部分或全部“服务”的权利。
            </p>
            <h3><strong> 六、免责条款</strong></h3>
            <p>
              因本招标采购平台无法预见客观环境的改变及任何技术上的问题或其他困难(包括但不限于:计算机病毒攻击、黑客入侵、网络中断等),由此导致的数据损失或其他服务中断等情形,会员用户对此应表示理解,并同意自行承担利用本招标采购平台进行操作的所有风险。本招标采购平台在此声明:
            </p>
            <p>
              本平台不提供任何类型的非本平台可控承诺,包括但不限于所提供的服务一定能满足用户的要求,服务不会中断,信息能否完全准确、及时、顺利的传送,是否能修改相关软件中的漏洞。用户理解、判断、或决定是否接受任何通过本招标采购平台服务或所取得信息资料的可靠性,完全取决于用户自己承担相关的风险,并包括系统受损或资料丢失的所有风险。
            </p>
            <p>
              平台用户在本招标采购平台的注册成功,并不能替代用户在投标(或其他采购竞争方式)时招标人、代理机构、评标(审)委员会对其资格的审查。
            </p>
            <h3><strong>七、信息的储存及限制</strong></h3>
 
            <p>
              本招标采购平台不对用户所发布信息的删除或储存失败负责。本招标采购平台拥有判定用户的行为是否符合本招标采购平台服务条款的要求和精神的保留权利,如果用户违背了服务条款的规定,或其在网站的相关行为有理由被判断为不利于网站,则随时有权中断对其服务,包括帐号。
            </p>
            <h3>八、用户信息管理</h3>
            <p>
              用户自行承担其所传输内容的所有责任,对本招标采购平台的使用符合法律、法规及规章的要求,同时遵循以下原则:
            </p>
 
            <p>
              (一)从中国境内向外传输技术性资料时必须符合中国有关法律法规;
            </p>
            <p>(二)使用信息服务不作非法用途;</p>
            <p>(三)不干扰或混乱网络服务;</p>
            <p>(四)遵守所有使用服务的网络协议、规定、程序和惯例。</p>
            <p>(五)其他情形。</p>
            <p>
              用户的行为准则是以因特网法规,政策、程序和惯例为根据的。用户须承诺不传输任何非法的、骚扰性的、中伤他人的、辱骂性的、恐吓性的、伤害性的、庸俗的和淫秽的信息资料。不传输任何教唆他人构成犯罪行为的资料;不传输助长国内不利条件和涉及国家安全的资料;不传输任何不符合当地法规、国家法律和国际法律的资料。若用户的行为不符合以上提到的服务条款,本招标采购平台一经发现将做出独立判断并取消用户服务和帐号。用户若在本招标采购平台上散布和传播反动、色情或其他违反国家法律的信息,网站的系统记录有可能作为用户违反法律的证据。
              如果用户在发表的信息中加入宣传资料或参与广告策划,在本招标采购平台的服务上展示产品,任何这类促销方法,包括运输货物、付款、服务、商业条件、担保及与广告有关的行为或描述,由用户和这类商业宣传发布者独立负责。本招标采购平台对此类商业宣传不承担任何责任,也没有义务为此类商业宣传承担任何可能责任。用户该行为给本平台造成涉诉或不良商誉、其他损失的,本平台有权向用户追责。
            </p>
            <h3>九、保障</h3>
            <p>
              用户同意保障和维护本招标采购平台及其他用户的利益,负责支付违反服务条款的损害补偿费用,由其它使用用户的帐号和口令的人造成的损害赔偿费用和其它侵犯知识产权而产生的追索赔偿费用。
            </p>
            <h3>十、终止服务</h3>
            <p>
              用户可根据实际情况,主动终止本招标采购平台提供的服务,同时,用户使用本招标采购平台服务的权利也将被终止。终止生效后,用户没有权利传送任何未处理的信息或未完成的服务,本招标采购平台亦无此类义务。对于此种终止,本招标采购平台无需承担任何责任。
            </p>
            <h3>十一、通知与送达</h3>
            <p>
              所有发给用户的通知都可通过相关页面的公告、系统通知或手机短信中的一种或多种方式传送,通知一经发出即视为送达。
            </p>
            <h3>十二、知识产权</h3>
            <p>
              本招标采购平台商标权、运作权、解释权、著作权、所有权、版权等知识产权归本平台唯一所有。用户在平台上发布的信息不得侵犯任何第三人的知识产权,未经具有相关所有权所有者之事先书面同意,用户不得以任何方式上传、发布、修改、传播或复制任何受著作权保护的材料、商标或属于其他人的专有信息。如果收到任何著作权人或其合法代表发给新点的适当通知后,我们将在审查的基础上移除该等侵犯他人著作权的内容。
            </p>
            <h3>十三、条款的法律解释</h3>
            <p>
              以上条款解释权归本平台所有。如发生本招标采购平台服务条款或所发布的其它条款与中华人民共和国法律、法规及规章相抵触时,则这些条款将完全按有关法律、法规及规章规定重新解释,而其它条款则依旧保持对用户的约束力。特别声明,任何情形下,对于任何相关的争议,均只适用中华人民共和国法律、法规及规章管辖,若用户与本单位就服务条款发生任何争议,双方应尽量友好协商解决;协商不成时,任何一方应向成都仲裁委仲裁解决。
            </p>
            <p>感谢您对本平台和服务的信任和使用!</p>
          </el-scrollbar>
          <!-- <p class="text-center xieyi">注册协议</p> -->
        </div>
      </div>
      <div v-else-if="active == 1" class="flex justify-center mt-5">
        <el-form
          ref="ruleFormRef"
          style="width: 95%"
          :model="state.ruleForm"
          :rules="state.rules"
          label-width="auto"
        >
          <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="企业类型" prop="enterpriseType">
                <el-select
                  v-model="state.ruleForm.enterpriseType"
                  placeholder="请选择"
                  clearable
                  multiple
                >
                  <el-option
                    v-for="item in state.enterpriseList"
                    :key="item.id"
                    :label="item.name"
                    :value="item.code"
                  />
                </el-select>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row><div class="baseclass">基本资料</div></el-row>
          <!-- <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="交易主体">
                <el-input
                  v-model="state.ruleForm.transactionName"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
          </el-row> -->
          <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="营业执照" prop="businessLicense">
                <el-upload
                  :action="`${baseUrlApi('/api/upFile/upBizLicense')}`"
                  :show-file-list="false"
                  :on-success="handleAvatarSuccess"
                  :before-upload="beforeAvatarUpload"
                  :headers="state.headers"
                >
                  <img
                    v-if="state.ruleForm.businessLicense"
                    :src="state.ruleForm.businessLicense"
                    width="200px"
                    height="150px"
                  />
                  <el-button v-else type="primary">上传</el-button>
                </el-upload>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="企业名称" prop="enterpriseName">
                <el-input
                  v-model="state.ruleForm.enterpriseName"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item
                label="统一社会信用代码"
                prop="unifiedSocialCreditCode"
              >
                <el-input
                  v-model="state.ruleForm.unifiedSocialCreditCode"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="注册资金" prop="registeredCapital">
                <el-input
                  v-model="state.ruleForm.registeredCapital"
                  disabled
                  placeholder="请输入"
                >
                  <template #append>万元</template></el-input
                >
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="24" :lg="8" :xl="8">
              <el-form-item label="法定代表人" prop="legalRepresentativeName">
                <el-input
                  v-model="state.ruleForm.legalRepresentativeName"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
 
            <el-col :xs="24" :sm="24" :md="24" :lg="16" :xl="16">
              <el-form-item label="住所地" prop="residence">
                <el-input
                  v-model="state.ruleForm.residence"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="成立时间" prop="establishmentTime">
                <el-input
                  v-model="state.ruleForm.establishmentTime"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="主营业务" prop="mainBusiness">
                <el-input
                  v-model="state.ruleForm.mainBusiness"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="联系电话" prop="enterprisePhone">
                <el-input
                  v-model="state.ruleForm.enterprisePhone"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="邮箱" prop="enterpriseEmail">
                <el-input
                  v-model="state.ruleForm.enterpriseEmail"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="法定代表人" prop="legalRepresentativeIdCard">
                <el-upload
                  :action="`${baseUrlApi('/api/upFile/uploadIdCord?PageName=FRONT')}`"
                  :show-file-list="false"
                  :on-success="handleAvatarSuccessLegalRepresentative"
                  :before-upload="beforeAvatarUpload"
                  :headers="state.headers"
                >
                  <img
                    v-if="state.ruleForm.legalRepresentativeIdCard"
                    :src="state.ruleForm.legalRepresentativeIdCard"
                    width="85.6px"
                    height="5.4px"
                  />
                  <el-button v-else type="primary">上传身份证</el-button>
                </el-upload>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="姓名" prop="legalRepresentativeName">
                <el-input
                  v-model="state.ruleForm.legalRepresentativeName"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="身份证" prop="legalRepresentativeIdNumber">
                <el-input
                  v-model="state.ruleForm.legalRepresentativeIdNumber"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="联系电话" prop="legalRepresentativePhone">
                <el-input
                  v-model="state.ruleForm.legalRepresentativePhone"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
              <el-form-item label="业务经办人" prop="operatorIdCard">
                <el-upload
                  :action="`${baseUrlApi('/api/upFile/uploadIdCord?PageName=FRONT')}`"
                  :show-file-list="false"
                  :on-success="handleAvatarSuccessOperator"
                  :before-upload="beforeAvatarUpload"
                  :headers="state.headers"
                >
                  <img
                    v-if="state.ruleForm.operatorIdCard"
                    :src="state.ruleForm.operatorIdCard"
                    width="85.6px"
                    height="5.4px"
                  />
                  <el-button v-else type="primary">上传身份证</el-button>
                </el-upload>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="姓名" prop="operatorName">
                <el-input
                  v-model="state.ruleForm.operatorName"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="身份证" prop="operatorIdNumber">
                <el-input
                  v-model="state.ruleForm.operatorIdNumber"
                  disabled
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="联系电话" prop="operatorPhone">
                <el-input
                  v-model="state.ruleForm.operatorPhone"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8">
              <el-form-item label="开户行" prop="bankName">
                <el-input
                  v-model="state.ruleForm.bankName"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :xs="24" :sm="24" :md="24" :lg="16" :xl="16">
              <el-form-item label="银行账号" prop="bankAccount">
                <el-input
                  v-model="state.ruleForm.bankAccount"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
          </el-row>
        </el-form>
      </div>
      <template v-else>
        <el-result title="恭喜您,登记完成!">
          <template #icon>
            <img src="@/assets/home/result.png" />
          </template>
          <template #extra>
            <el-button type="primary" @click="toWelcome">确认</el-button>
          </template>
        </el-result>
      </template>
      <div v-if="active !== 3" class="mx-auto pt-2 pb-5 flex justify-center">
        <el-button :disabled="active == 1" @click="backStep">上一步</el-button>
        <el-button type="primary" @click="nextStep(ruleFormRef)"
          ><span v-if="active == 1">同意</span>下一步</el-button
        >
      </div>
    </div>
  </div>
</template>
<script setup lang="tsx">
import { h, ref, reactive, onMounted } from "vue";
import type { FormInstance, FormRules, UploadProps } from "element-plus";
import { message } from "@/utils/message";
import { baseUrlApi } from "@/api/util";
import {
  addDialog,
  closeDialog,
  updateDialog,
  closeAllDialog
} from "@/components/ReDialog";
import {
  enterpriseTypes,
  createrExRolsInformation
} from "@/api/register/index.ts";
import { cloneDeep } from "@pureadmin/utils";
import { getToken } from "@/utils/auth";
import { useRoute, useRouter } from "vue-router";
const router = useRouter();
const route = useRoute();
 
defineOptions({
  name: "RegisterNav"
});
const ruleFormRef = ref<FormInstance>();
const state = reactive({
  headers: {
    // Accept: "application/json, text/plain, */*",
    // "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
    // "X-Requested-With": "XMLHttpRequest",
    Authorization: `Bearer ${getToken()?.accessToken}`
  },
  isShowPassword: false,
  ruleForm: {
    // 主键(唯一标识)
    id: null, // integer($int64),可空
    // 企业类型(从预设企业类型列表中选择)
    enterpriseType: null, // string,可空
    // 交易主体代码(同角色代码,不可空,最小长度为1)
    transactionCode: "", // string,必填
    // 交易主体名称
    transactionName: null, // string,可空
    // 营业执照文件路径
    businessLicense: null, // string,可空
    // 企业名称
    enterpriseName: null, // string,可空
    // 统一社会信用代码
    unifiedSocialCreditCode: null, // string,可空
    // 注册资金(单位:万元)
    registeredCapital: null, // number($double),可空
    // 法定代表人姓名
    legalRepresentativeName: null, // string,可空
    // 法定代表人身份证文件路径
    legalRepresentativeIdCard: null, // string,可空
    // 法定代表人身份证号码
    legalRepresentativeIdNumber: null, // string,可空
    // 法定代表人联系电话
    legalRepresentativePhone: null, // string($tel),可空
    // 企业住所(下拉选择,暂以字符串接收)
    residence: null, // string,可空
    // 企业联系电话
    enterprisePhone: null, // string($tel),可空
    // 企业成立时间(格式示例:2025-07-08 14:56:54)
    establishmentTime: null, // string($date-time),可空
    // 企业主营业务
    mainBusiness: null, // string,可空
    // 企业邮箱
    enterpriseEmail: null, // string,可空
    // 业务经办人姓名
    operatorName: null, // string,可空
    // 业务经办人身份证文件路径或标识(上传后存储信息)
    operatorIdCard: null, // string,可空
    // 业务经办人身份证号码
    operatorIdNumber: null, // string,可空
    // 业务经办人联系电话
    operatorPhone: null, // string($tel),可空
    // 企业开户行
    bankName: null, // string,可空
    // 企业银行账号
    bankAccount: null // string,可空
  },
  enterpriseList: [],
  type: "",
  rules: {
    enterpriseType: [
      { required: true, message: "请选择企业类型", trigger: "change" }
    ],
    // transactionCode: [
    //   { required: true, message: "请输入交易主体代码", trigger: "blur" },
    //   { min: 1, message: "交易主体代码最小长度为1", trigger: "blur" }
    // ],
    // transactionName: [
    //   { required: true, message: "请输入交易主体名称", trigger: "blur" }
    // ],
    businessLicense: [
      { required: true, message: "请上传营业执照", trigger: "change" }
    ],
    enterpriseName: [
      { required: true, message: "请输入企业名称", trigger: "blur" }
    ],
    unifiedSocialCreditCode: [
      { required: true, message: "请输入统一社会信用代码", trigger: "blur" }
    ],
    registeredCapital: [
      { required: true, message: "请输入注册资金", trigger: "blur" }
    ],
    legalRepresentativeName: [
      { required: true, message: "请输入法定代表人姓名", trigger: "blur" }
    ],
    legalRepresentativeIdCard: [
      { required: true, message: "请上传法定代表人身份证", trigger: "change" }
    ],
    legalRepresentativeIdNumber: [
      {
        required: true,
        message: "请输入法定代表人身份证号码",
        trigger: "blur"
      }
    ],
    legalRepresentativePhone: [
      { required: true, message: "请输入法定代表人联系电话", trigger: "blur" },
      {
        type: "string",
        pattern: /^1[3-9]\d{9}$/,
        message: "请输入正确的手机号码",
        trigger: "blur"
      }
    ],
    residence: [
      { required: true, message: "请选择企业住所", trigger: "change" }
    ],
    enterprisePhone: [
      { required: true, message: "请输入企业联系电话", trigger: "blur" },
      {
        type: "string",
        pattern: /^1[3-9]\d{9}$/,
        message: "请输入正确的手机号码",
        trigger: "blur"
      }
    ],
    establishmentTime: [
      { required: true, message: "请选择企业成立时间", trigger: "change" }
    ],
    mainBusiness: [
      { required: true, message: "请输入企业主营业务", trigger: "blur" }
    ],
    enterpriseEmail: [
      { required: true, message: "请输入企业邮箱", trigger: "blur" },
      { type: "email", message: "请输入正确的邮箱地址", trigger: "blur" }
    ],
    operatorName: [
      { required: true, message: "请输入业务经办人姓名", trigger: "blur" }
    ],
    operatorIdCard: [
      { required: true, message: "请上传业务经办人身份证", trigger: "change" }
    ],
    operatorIdNumber: [
      {
        required: true,
        message: "请输入业务经办人身份证号码",
        trigger: "blur"
      }
    ],
    operatorPhone: [
      { required: true, message: "请输入业务经办人联系电话", trigger: "blur" },
      {
        type: "string",
        pattern: /^1[3-9]\d{9}$/,
        message: "请输入正确的手机号码",
        trigger: "blur"
      }
    ],
    bankName: [
      { required: true, message: "请输入企业开户行", trigger: "blur" }
    ],
    bankAccount: [
      { required: true, message: "请输入企业银行账号", trigger: "blur" }
    ]
  },
  loading: {
    signIn: false
  },
  captchaImage: "",
  rotateVerifyVisible: false,
  // rotateVerifyImg: verifyImg,
  // rotateVerifyImg: themeConfig.value.logoUrl,
  secondVerEnabled: false,
  // captchaEnabled: false,
  isPassRotate: false,
  capsLockVisible: false,
  hideTenantForLogin: false,
  expirySeconds: 60, // 验证码过期时间
  phoneSeconds: 0, // 手机验证码倒计时
  roleList: []
});
const toWelcome = () => {
  router.replace("welcome");
};
// 页面初始化
onMounted(async () => {
  state.ruleForm.transactionCode = route.query.code;
  // 企业类型
  let res = await enterpriseTypes();
  state.enterpriseList = res?.result;
});
let active = ref(0);
const nextStep = async (formEl: FormInstance | undefined) => {
  if (active.value >= 1) {
    if (!formEl) return;
    await formEl.validate((valid, fields) => {
      if (valid) {
        addDialog({
          width: "20%",
          title: "确认信息",
          contentRenderer: () => (
            <p>
              请您认真核对填报的资料是否正确,如因填报错误影响后续投标等操作,平台不承担任何责任,所有后果需要自行承担,请您谨慎填写!
            </p>
          ), // jsx 语法 (注意在.vue文件启用jsx语法,需要在script开启lang="tsx")
          closeCallBack: ({ options, args }) => {
            // options.props 是响应式的
            // const { formInline } = options.props as FormProps;
            // const text = `姓名:${formInline.user} 城市:${formInline.region}`;
            if (args?.command === "cancel") {
              // 您点击了取消按钮
              // active.value -= 1;
            } else if (args?.command === "sure") {
              sumbitData();
            } else {
            }
          }
        });
        return;
      } else {
        return;
        console.log("error submit!", fields);
      }
    });
    return;
  }
 
  active.value += 1;
};
const backStep = () => {
  active.value -= 1;
};
// 提交企业注册信息
const sumbitData = async () => {
  let obj = cloneDeep(state.ruleForm);
  obj.enterpriseType = state.ruleForm.enterpriseType.join(",");
  let res = await createrExRolsInformation(obj);
  if (res.code == "200") {
    active.value = 3;
  } else {
    message(res.message, {
      type: "error"
    });
  }
};
const handleAvatarSuccess: UploadProps["onSuccess"] = (
  response,
  uploadFile
) => {
  if (response.code == "200") {
    // state.ruleForm.businessLicense = URL.createObjectURL(uploadFile.raw!);
    let res = response.result;
    state.ruleForm.businessLicense = res.url; // 营业执照文件路径
    state.ruleForm.enterpriseName = res.info.Name; // 企业名称
    state.ruleForm.unifiedSocialCreditCode = res.info.RegNum; // 统一社会信用代码
    state.ruleForm.registeredCapital = res.info.Capital; // 注册资金(单位:万元)
    state.ruleForm.legalRepresentativeName = res.info.Person; // 法定代表人姓名
    state.ruleForm.establishmentTime = res.info.SetDate; // 企业成立时间(格式示例:2025-07-08 14:56:54)
    state.ruleForm.residence = res.info.Address; // 企业住所(下拉选择,暂以字符串接收)
    state.ruleForm.mainBusiness = res.info.Business; // 企业主营业务
  } else {
    message(response.message, {
      type: "error"
    });
  }
};
 
const handleAvatarSuccessLegalRepresentative: UploadProps["onSuccess"] = (
  response,
  uploadFile
) => {
  console.log(response);
  if (response.code == "200") {
    // state.ruleForm.businessLicense = URL.createObjectURL(uploadFile.raw!);
    let res = response.result;
    state.ruleForm.legalRepresentativeIdCard = res.url; // 法定代表人身份证文件路径
    state.ruleForm.legalRepresentativeIdNumber = res.info.IdNum; // 法定代表人身份证号码
  } else {
    message(response.message, {
      type: "error"
    });
  }
};
 
const handleAvatarSuccessOperator: UploadProps["onSuccess"] = (
  response,
  uploadFile
) => {
  if (response.code == "200") {
    // state.ruleForm.businessLicense = URL.createObjectURL(uploadFile.raw!);
    let res = response.result;
    state.ruleForm.operatorName = res.info.Name; // 业务经办人姓名
    state.ruleForm.operatorIdCard = res.url; // 业务经办人身份证文件路径或标识(上传后存储信息)
    state.ruleForm.operatorIdNumber = res.info.IdNum; // 业务经办人身份证号码
  } else {
    message(response.message, {
      type: "error"
    });
  }
};
 
const beforeAvatarUpload: UploadProps["beforeUpload"] = rawFile => {
  // if (rawFile.type !== "image/jpeg") {
  //   message(`请上传jpeg类型的图片`, {
  //     type: "error"
  //   });
  //   return false;
  // } else if (rawFile.size / 1024 / 1024 > 2) {
  //   message(`图片大小不能超过 2MB!`, {
  //     type: "error"
  //   });
  //   return false;
  // }
  return true;
};
</script>
<style lang="scss" scoped>
.content {
  background-color: #f8f8f8;
  width: 100%;
  min-height: 100%;
  .header {
    display: flex;
    align-items: center;
    height: 80px;
    width: 100%;
    margin: 0 auto;
    background-color: #fff;
    .headimg {
      width: 1200px;
      margin: 0 auto;
    }
  }
  :deep .el-step__icon {
    font-size: 12px;
    height: 20px;
    width: 20px;
  }
  p {
    font-size: 16px;
    line-height: 30px;
  }
  h3 {
    font-size: 1.17em;
    line-height: 30px;
  }
}
:deep .el-step__title {
  font-size: 12px;
}
.xieyi {
  color: #303133;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
}
</style>