react_hsbc_teller 2.0.54 → 2.0.55

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 (54) hide show
  1. package/.babelrc +39 -39
  2. package/README.en.md +36 -36
  3. package/README.md +323 -323
  4. package/config/webpack.config.js +119 -119
  5. package/config/webpack.dev.js +108 -108
  6. package/config/webpack.prod.js +104 -104
  7. package/lib/hsbc.js +1 -1
  8. package/lib/hsbc.js.LICENSE.txt +13 -16
  9. package/package.json +110 -110
  10. package/packages/api/api.js +818 -818
  11. package/packages/api/server.js +50 -50
  12. package/packages/common/index.esm.js +374 -374
  13. package/packages/demo/demo.js +306 -306
  14. package/packages/demo/index.js +3 -3
  15. package/packages/demo/pdf.js +94 -94
  16. package/packages/envconfig/envconfig.js +12 -12
  17. package/packages/index.js +2 -2
  18. package/packages/pages/components/step/step.jsx +32 -31
  19. package/packages/pages/foot/foot.jsx +235 -235
  20. package/packages/pages/foot/foot.less +85 -85
  21. package/packages/pages/header/header.jsx +15 -15
  22. package/packages/pages/header/header.less +51 -51
  23. package/packages/pages/index.jsx +52 -52
  24. package/packages/pages/multiModule/components/copy/agree.jsx +115 -115
  25. package/packages/pages/multiModule/components/copy/agree.less +105 -105
  26. package/packages/pages/multiModule/components/copy/copyTwo.jsx +682 -682
  27. package/packages/pages/multiModule/components/copy/copyTwo.less +180 -180
  28. package/packages/pages/multiModule/components/copy/copy_en.jsx +368 -368
  29. package/packages/pages/multiModule/components/copy/copy_en.less +145 -145
  30. package/packages/pages/multiModule/components/copy/copylist.jsx +291 -291
  31. package/packages/pages/multiModule/components/copy/copylist.less +83 -83
  32. package/packages/pages/multiModule/components/copy/risk.jsx +296 -296
  33. package/packages/pages/multiModule/components/copy/risk.less +123 -123
  34. package/packages/pages/multiModule/components/sign/signMy.jsx +308 -308
  35. package/packages/pages/multiModule/components/sign/signMy.less +127 -127
  36. package/packages/pages/multiModule/components/subscribe/subscribe.jsx +113 -113
  37. package/packages/pages/multiModule/components/subscribe/subscribe.less +82 -82
  38. package/packages/pages/multiModule/multiModule.jsx +26 -26
  39. package/packages/pages/multiModule/multiModule.less +19 -19
  40. package/packages/pages/sign/signMy.jsx +223 -223
  41. package/packages/pages/sign/signMy.less +129 -129
  42. package/packages/pages/video/video.jsx +7746 -7745
  43. package/packages/pages/video/video.less +715 -715
  44. package/packages/style/index.less +1 -1
  45. package/packages/style/reset.less +345 -345
  46. package/packages/utils/asrController.js +259 -259
  47. package/packages/utils/asyncComponent.jsx +26 -26
  48. package/packages/utils/mixin.js +27 -27
  49. package/packages/utils/setRem.js +10 -10
  50. package/packages/utils/utils.js +199 -199
  51. package/public/index.html +77 -77
  52. package/src/index.js +11 -11
  53. package/src/index.less +5 -5
  54. package/tsconfig.json +11 -11
@@ -1,128 +1,128 @@
1
- .sign{
2
- // min-height: 100%;
3
- height: 100%;
4
- background: #fff;
5
- position: relative;
6
- display: flex;
7
- flex-direction: column;
8
-
9
- .thehead{
10
- display: flex;
11
- justify-content: space-between;
12
- padding: 14px 24px ;
13
- .title{
14
- display: flex;
15
- .title-color{
16
- width: 2px;
17
- height: 1.5rem;
18
- background: #00847F;
19
- margin-top: 0.25rem;
20
- }
21
- .title-text{
22
- font-size: 1.5rem;
23
- color: #323232;
24
- margin-left: 8px;
25
- font-weight: 500;
26
- }
27
-
28
- }
29
- .btns{
30
- display: flex;
31
- }
32
- .qianshu{
33
- width: 96px;
34
- height: 2rem;
35
- background: #F9F2F3;
36
- border-radius: 2px;
37
- border: 1px solid #E5B2B5;
38
- font-size: 14px;
39
- color: #DB0011;
40
- line-height: 2rem;
41
- text-align: center;
42
- }
43
- .reset{
44
- width: 96px;
45
- height: 2rem;
46
- background: white;
47
- border-radius: 2px;
48
- border: 1px solid #DCDCDC;
49
- font-size: 14px;
50
- color: #646464;
51
- line-height: 2rem;
52
- text-align: center;
53
- margin-right: 8px;
54
- }
55
- }
56
-
57
- .content{
58
- // min-height: 300px;
59
- border-radius: 4px;
60
- border:1.5px dashed #646464;
61
- margin: auto;
62
- position: relative;
63
- flex: none;
64
-
65
- .canvasF{
66
- z-index: 10;
67
- position: absolute;
68
- margin: auto;
69
- }
70
- }
71
- .signHere{
72
- font-size: 50px;
73
- font-weight: 500;
74
- color: #646464;
75
- position: absolute;
76
- top: 50%;
77
- left: 50%;
78
- transform: translate(-50%, -50%);
79
- -moz-user-select:none;/*火狐*/
80
- -webkit-user-select:none;/*webkit浏览器*/
81
- -ms-user-select:none;/*IE10*/
82
- -khtml-user-select:none;/*早期浏览器*/
83
- user-select:none;
84
- opacity: 0.2;
85
- pointer-events: none;
86
- }
87
-
88
- }
89
- .modalEndTitle{
90
- font-size: 20px;
91
- }
92
- .modalEnd{
93
- font-size: 15px;
94
- margin-left: 20px;
95
- margin-top: 15px;
96
- }
97
-
98
-
99
- .footRisk{
100
- margin: auto;
101
- margin-top: 15px;
102
- .btns{
103
- display: flex;
104
- }
105
- .qianshu{
106
- height: 2.5rem;
107
- line-height: 2.5rem;
108
- width: 6rem;
109
- font-size: 1.1rem;
110
- background: #F9F2F3;
111
- border-radius: 2px;
112
- border: 1px solid #E5B2B5;
113
- color: #DB0011;
114
- text-align: center;
115
- }
116
- .reset{
117
- height: 2.5rem;
118
- line-height: 2.5rem;
119
- width: 6rem;
120
- font-size: 1.1rem;
121
- background: white;
122
- border-radius: 2px;
123
- border: 1px solid #DCDCDC;
124
- color: #646464;
125
- text-align: center;
126
- margin-right: 8px;
127
- }
1
+ .sign{
2
+ // min-height: 100%;
3
+ height: 100%;
4
+ background: #fff;
5
+ position: relative;
6
+ display: flex;
7
+ flex-direction: column;
8
+
9
+ .thehead{
10
+ display: flex;
11
+ justify-content: space-between;
12
+ padding: 14px 24px ;
13
+ .title{
14
+ display: flex;
15
+ .title-color{
16
+ width: 2px;
17
+ height: 1.5rem;
18
+ background: #00847F;
19
+ margin-top: 0.25rem;
20
+ }
21
+ .title-text{
22
+ font-size: 1.5rem;
23
+ color: #323232;
24
+ margin-left: 8px;
25
+ font-weight: 500;
26
+ }
27
+
28
+ }
29
+ .btns{
30
+ display: flex;
31
+ }
32
+ .qianshu{
33
+ width: 96px;
34
+ height: 2rem;
35
+ background: #F9F2F3;
36
+ border-radius: 2px;
37
+ border: 1px solid #E5B2B5;
38
+ font-size: 14px;
39
+ color: #DB0011;
40
+ line-height: 2rem;
41
+ text-align: center;
42
+ }
43
+ .reset{
44
+ width: 96px;
45
+ height: 2rem;
46
+ background: white;
47
+ border-radius: 2px;
48
+ border: 1px solid #DCDCDC;
49
+ font-size: 14px;
50
+ color: #646464;
51
+ line-height: 2rem;
52
+ text-align: center;
53
+ margin-right: 8px;
54
+ }
55
+ }
56
+
57
+ .content{
58
+ // min-height: 300px;
59
+ border-radius: 4px;
60
+ border:1.5px dashed #646464;
61
+ margin: auto;
62
+ position: relative;
63
+ flex: none;
64
+
65
+ .canvasF{
66
+ z-index: 10;
67
+ position: absolute;
68
+ margin: auto;
69
+ }
70
+ }
71
+ .signHere{
72
+ font-size: 50px;
73
+ font-weight: 500;
74
+ color: #646464;
75
+ position: absolute;
76
+ top: 50%;
77
+ left: 50%;
78
+ transform: translate(-50%, -50%);
79
+ -moz-user-select:none;/*火狐*/
80
+ -webkit-user-select:none;/*webkit浏览器*/
81
+ -ms-user-select:none;/*IE10*/
82
+ -khtml-user-select:none;/*早期浏览器*/
83
+ user-select:none;
84
+ opacity: 0.2;
85
+ pointer-events: none;
86
+ }
87
+
88
+ }
89
+ .modalEndTitle{
90
+ font-size: 20px;
91
+ }
92
+ .modalEnd{
93
+ font-size: 15px;
94
+ margin-left: 20px;
95
+ margin-top: 15px;
96
+ }
97
+
98
+
99
+ .footRisk{
100
+ margin: auto;
101
+ margin-top: 15px;
102
+ .btns{
103
+ display: flex;
104
+ }
105
+ .qianshu{
106
+ height: 2.5rem;
107
+ line-height: 2.5rem;
108
+ width: 6rem;
109
+ font-size: 1.1rem;
110
+ background: #F9F2F3;
111
+ border-radius: 2px;
112
+ border: 1px solid #E5B2B5;
113
+ color: #DB0011;
114
+ text-align: center;
115
+ }
116
+ .reset{
117
+ height: 2.5rem;
118
+ line-height: 2.5rem;
119
+ width: 6rem;
120
+ font-size: 1.1rem;
121
+ background: white;
122
+ border-radius: 2px;
123
+ border: 1px solid #DCDCDC;
124
+ color: #646464;
125
+ text-align: center;
126
+ margin-right: 8px;
127
+ }
128
128
  }
@@ -1,113 +1,113 @@
1
- import React, { Component } from "react";
2
- import Sign from "../sign/signMy"; //签字
3
- import "./subscribe.less";
4
- import API from "@/api/api";
5
- import { FormattedMessage, injectIntl } from "react-intl";
6
- import Modal from "antd/lib/modal";
7
- import 'antd/lib/modal/style'
8
- import { Button } from '../../../../../node_modules/antd/lib/index';
9
- import { message } from 'antd';
10
- @injectIntl
11
- class subscribe extends Component {
12
- state = {
13
- data: {
14
- sessionId: "r7Sjf5Afj",
15
- appAccount: "ts002",
16
- transactionId: "20220221 - Q0001063343",
17
- appointmentId: "100219197",
18
- step: "ssq-customer",
19
- title:
20
- "[0xe5][0x94][0xa4][0xe9][0x86][0x92][0xe5][0xae][0xa2][0xe6][0x88][0xb7][0xe7][0xad][0xbe]",
21
- length: "337",
22
- height: "177",
23
- list: [
24
- {
25
- productName: [],
26
- file: [
27
- {
28
- docId: "6b381985-1c9a-4859-92a2-a63e8c315b8a",
29
- docType: "GEN-RPQ",
30
- docText:
31
- "[0xe9][0xa3][0x8e][0xe9][0x99][0xa9][0xe8][0xaf][0x84][0xe4][0xbc][0xb0][0xe9][0x97][0xae][0xe5][0x8d][0xb7]",
32
- transactionNumber: "20220221 - Q0001063343",
33
- appointmentId: "100219197",
34
- },
35
- ],
36
- },
37
- ],
38
- callbackUrl: "http://47.102.126.132:8720/hsbc/callback",
39
- },
40
- showSign: true,
41
- isModalVisibleSubmitError: false
42
- };
43
- sign = () => {
44
- this.setState({
45
- showSign: true,
46
- });
47
- };
48
- exit = () => {
49
- this.props.handleReceiveMsg({
50
- 'typeId': 121305,
51
- 'sessionId': window.imRoom.sessionId,
52
- })
53
- this.props.finish();
54
- };
55
- finish = async (fileBase64) => {
56
- // console.log({ ...this.props.data, file: fileBase64 })
57
- let result = await API.signFileCallback({
58
- ...this.props.data,
59
- fileBase64: fileBase64.replace('data:image/png;base64,',''),
60
- });
61
- if(result.code == 500) {
62
- this.setState({
63
- isModalVisibleSubmitError: true
64
- })
65
- } else{
66
- message.success(this.props.intl.formatMessage({id: 'signSuccess'}),);
67
- this.props.handleReceiveMsg({
68
- 'typeId': 1216,
69
- 'sessionId': window.imRoom.sessionId,
70
- 'userId': window.imRoom.userId
71
- })
72
- this.setState({
73
- showSign: false,
74
- });
75
- this.props.finish();
76
- }
77
-
78
- };
79
- handleSubmit=()=>{
80
- this.setState({
81
- isModalVisibleSubmitError: false
82
- })
83
- }
84
- componentWillMount() {
85
- // 初始化数据
86
- let data = this.props.data || this.state.data;
87
- this.setState({
88
- data: data,
89
- });
90
- }
91
- render() {
92
- return (
93
- <div style={{height: '99%'}}>
94
- <Sign title={this.state.data.title} length={this.state.data.length} height={this.state.data.height} exit={this.exit} finish={this.finish} />
95
- <Modal destroyOnClose={true} getContainer={document.getElementById('multiModule')} closable={false} centered={true} visible={this.state.isModalVisibleSubmitError} footer={[<div key='end'>
96
- <Button className="modelButtonOk" type="primary" danger onClick={this.handleSubmit}><FormattedMessage id="ok" /></Button>
97
- </div>
98
- ]}>
99
- <div className='endModal'>
100
- <div className='modalEndTitle'>
101
- <FormattedMessage id="message" />
102
- </div>
103
- <div className='modalEnd'>
104
- <FormattedMessage id="submission" />
105
- </div>
106
- </div>
107
- </Modal>
108
- </div>
109
- )
110
- }
111
- }
112
-
113
- export default subscribe;
1
+ import React, { Component } from "react";
2
+ import Sign from "../sign/signMy"; //签字
3
+ import "./subscribe.less";
4
+ import API from "@/api/api";
5
+ import { FormattedMessage, injectIntl } from "react-intl";
6
+ import Modal from "antd/lib/modal";
7
+ import 'antd/lib/modal/style'
8
+ import { Button } from '../../../../../node_modules/antd/lib/index';
9
+ import { message } from 'antd';
10
+ @injectIntl
11
+ class subscribe extends Component {
12
+ state = {
13
+ data: {
14
+ sessionId: "r7Sjf5Afj",
15
+ appAccount: "ts002",
16
+ transactionId: "20220221 - Q0001063343",
17
+ appointmentId: "100219197",
18
+ step: "ssq-customer",
19
+ title:
20
+ "[0xe5][0x94][0xa4][0xe9][0x86][0x92][0xe5][0xae][0xa2][0xe6][0x88][0xb7][0xe7][0xad][0xbe]",
21
+ length: "337",
22
+ height: "177",
23
+ list: [
24
+ {
25
+ productName: [],
26
+ file: [
27
+ {
28
+ docId: "6b381985-1c9a-4859-92a2-a63e8c315b8a",
29
+ docType: "GEN-RPQ",
30
+ docText:
31
+ "[0xe9][0xa3][0x8e][0xe9][0x99][0xa9][0xe8][0xaf][0x84][0xe4][0xbc][0xb0][0xe9][0x97][0xae][0xe5][0x8d][0xb7]",
32
+ transactionNumber: "20220221 - Q0001063343",
33
+ appointmentId: "100219197",
34
+ },
35
+ ],
36
+ },
37
+ ],
38
+ callbackUrl: "http://47.102.126.132:8720/hsbc/callback",
39
+ },
40
+ showSign: true,
41
+ isModalVisibleSubmitError: false
42
+ };
43
+ sign = () => {
44
+ this.setState({
45
+ showSign: true,
46
+ });
47
+ };
48
+ exit = () => {
49
+ this.props.handleReceiveMsg({
50
+ 'typeId': 121305,
51
+ 'sessionId': window.imRoom.sessionId,
52
+ })
53
+ this.props.finish();
54
+ };
55
+ finish = async (fileBase64) => {
56
+ // console.log({ ...this.props.data, file: fileBase64 })
57
+ let result = await API.signFileCallback({
58
+ ...this.props.data,
59
+ fileBase64: fileBase64.replace('data:image/png;base64,',''),
60
+ });
61
+ if(result.code == 500) {
62
+ this.setState({
63
+ isModalVisibleSubmitError: true
64
+ })
65
+ } else{
66
+ message.success(this.props.intl.formatMessage({id: 'signSuccess'}),);
67
+ this.props.handleReceiveMsg({
68
+ 'typeId': 1216,
69
+ 'sessionId': window.imRoom.sessionId,
70
+ 'userId': window.imRoom.userId
71
+ })
72
+ this.setState({
73
+ showSign: false,
74
+ });
75
+ this.props.finish();
76
+ }
77
+
78
+ };
79
+ handleSubmit=()=>{
80
+ this.setState({
81
+ isModalVisibleSubmitError: false
82
+ })
83
+ }
84
+ componentWillMount() {
85
+ // 初始化数据
86
+ let data = this.props.data || this.state.data;
87
+ this.setState({
88
+ data: data,
89
+ });
90
+ }
91
+ render() {
92
+ return (
93
+ <div style={{height: '99%'}}>
94
+ <Sign title={this.state.data.title} length={this.state.data.length} height={this.state.data.height} exit={this.exit} finish={this.finish} />
95
+ <Modal destroyOnClose={true} getContainer={document.getElementById('multiModule')} closable={false} centered={true} visible={this.state.isModalVisibleSubmitError} footer={[<div key='end'>
96
+ <Button className="modelButtonOk" type="primary" danger onClick={this.handleSubmit}><FormattedMessage id="ok" /></Button>
97
+ </div>
98
+ ]}>
99
+ <div className='endModal'>
100
+ <div className='modalEndTitle'>
101
+ <FormattedMessage id="message" />
102
+ </div>
103
+ <div className='modalEnd'>
104
+ <FormattedMessage id="submission" />
105
+ </div>
106
+ </div>
107
+ </Modal>
108
+ </div>
109
+ )
110
+ }
111
+ }
112
+
113
+ export default subscribe;
@@ -1,82 +1,82 @@
1
- .subscribe{
2
- min-height: 100%;
3
- background: #fff;
4
- .thehead{
5
- display: flex;
6
- justify-content: space-between;
7
- padding: 14px 24px;
8
- .title{
9
- display: flex;
10
- .title-color{
11
- width: 2px;
12
- height: 1.5rem;
13
- background: #00847F;
14
- margin-top: 3px;
15
- }
16
- .title-text{
17
- font-size: 1.5rem;
18
- color: #323232;
19
- margin-left: 8px;
20
- }
21
-
22
- }
23
- .qianshu{
24
- width: 96px;
25
- height: 32px;
26
- background: #F9F2F3;
27
- border-radius: 2px;
28
- border: 1px solid #E5B2B5;
29
- font-size: 14px;
30
- color: #DB0011;
31
- line-height: 32px;
32
- text-align: center;
33
- }
34
- }
35
- .contents{
36
- display: flex;
37
- flex-direction: column;
38
- flex-wrap: wrap;
39
- padding: 10px 24px;
40
- .item-panel{
41
- width: 100%;
42
- min-height: 205px;
43
- background: #FFFFFF;
44
- border-radius: 4px;
45
- border: 1px solid #E8E8E8;
46
- overflow: hidden;
47
- margin-top: 10px;
48
- .item-header{
49
- width: 100%;
50
- height: 48px;
51
- background: #FAFBFC;
52
- border-radius: 4px 4px 0px 0px;
53
- line-height: 48px;
54
- font-size: 16px;
55
- padding-left: 20px;
56
- }
57
- .item-info{
58
- padding: 15px 22px;
59
- .item-sub-title{
60
- font-size: 12px;
61
- font-weight: 400;
62
- color: #969696;
63
- &:not(:first-child){
64
- margin-top: 20px;
65
- }
66
- }
67
- .content-text{
68
- font-size: 16px;
69
- font-family: PingFangSC-Regular, PingFang SC;
70
- font-weight: 400;
71
- color: #666666;
72
- line-height: 30px;
73
- }
74
- }
75
-
76
- }
77
-
78
- }
79
-
80
-
81
-
82
- }
1
+ .subscribe{
2
+ min-height: 100%;
3
+ background: #fff;
4
+ .thehead{
5
+ display: flex;
6
+ justify-content: space-between;
7
+ padding: 14px 24px;
8
+ .title{
9
+ display: flex;
10
+ .title-color{
11
+ width: 2px;
12
+ height: 1.5rem;
13
+ background: #00847F;
14
+ margin-top: 3px;
15
+ }
16
+ .title-text{
17
+ font-size: 1.5rem;
18
+ color: #323232;
19
+ margin-left: 8px;
20
+ }
21
+
22
+ }
23
+ .qianshu{
24
+ width: 96px;
25
+ height: 32px;
26
+ background: #F9F2F3;
27
+ border-radius: 2px;
28
+ border: 1px solid #E5B2B5;
29
+ font-size: 14px;
30
+ color: #DB0011;
31
+ line-height: 32px;
32
+ text-align: center;
33
+ }
34
+ }
35
+ .contents{
36
+ display: flex;
37
+ flex-direction: column;
38
+ flex-wrap: wrap;
39
+ padding: 10px 24px;
40
+ .item-panel{
41
+ width: 100%;
42
+ min-height: 205px;
43
+ background: #FFFFFF;
44
+ border-radius: 4px;
45
+ border: 1px solid #E8E8E8;
46
+ overflow: hidden;
47
+ margin-top: 10px;
48
+ .item-header{
49
+ width: 100%;
50
+ height: 48px;
51
+ background: #FAFBFC;
52
+ border-radius: 4px 4px 0px 0px;
53
+ line-height: 48px;
54
+ font-size: 16px;
55
+ padding-left: 20px;
56
+ }
57
+ .item-info{
58
+ padding: 15px 22px;
59
+ .item-sub-title{
60
+ font-size: 12px;
61
+ font-weight: 400;
62
+ color: #969696;
63
+ &:not(:first-child){
64
+ margin-top: 20px;
65
+ }
66
+ }
67
+ .content-text{
68
+ font-size: 16px;
69
+ font-family: PingFangSC-Regular, PingFang SC;
70
+ font-weight: 400;
71
+ color: #666666;
72
+ line-height: 30px;
73
+ }
74
+ }
75
+
76
+ }
77
+
78
+ }
79
+
80
+
81
+
82
+ }