├── 00_framework.tar.xz ├── 01_wallet_rpc.tar.xz ├── 04_Web_Admin.tar.xz ├── 05_Web_Front.tar.xz ├── 09_DOC ├── Nginx配置文件 │ ├── default.conf │ └── https配置文件 │ │ └── nginx.conf ├── PC端运行截图 │ ├── 01_首页.png │ ├── 02_币币交易.png │ ├── 03_法币交易CTC.png │ ├── 04_创新实验室.png │ ├── 05_公告.png │ ├── 06_帮助中心.png │ ├── 07_推广合伙人.png │ ├── 公告详情.png │ ├── 创新实验室详情.png │ ├── 注册.png │ └── 登录.png └── 管理后台运行截图 │ ├── 00_首页 │ └── QQ截图20200325105611.png │ ├── 01_会员管理 │ ├── QQ截图20200325105658.png │ ├── QQ截图20200325105734.png │ ├── QQ截图20200325105758.png │ ├── QQ截图20200325105823.png │ └── QQ截图20200325105841.png │ ├── 02_邀请管理 │ ├── QQ截图20200325105858.png │ ├── QQ截图20200325105914.png │ └── QQ截图20200325105926.png │ ├── 03_CTC管理 │ ├── QQ截图20200325105949.png │ └── QQ截图20200325110013.png │ ├── 04_内容管理 │ ├── QQ截图20200325110038.png │ ├── QQ截图20200325110052.png │ ├── QQ截图20200325110105.png │ ├── QQ截图20200325110111.png │ ├── QQ截图20200325110122.png │ └── QQ截图20200325110127.png │ ├── 05_财务管理 │ ├── QQ截图20200325110135.png │ ├── QQ截图20200325110221.png │ ├── QQ截图20200325110236.png │ ├── QQ截图20200325110244.png │ ├── QQ截图20200325110258.png │ ├── QQ截图20200325110304.png │ ├── QQ截图20200325110329.png │ └── QQ截图20200325110336.png │ ├── 06_币币管理 │ ├── QQ截图20200325110345.png │ ├── QQ截图20200325110355.png │ ├── QQ截图20200325110415.png │ ├── QQ截图20200325110421.png │ ├── QQ截图20200325110436.png │ ├── QQ截图20200325110446.png │ └── QQ截图20200325110503.png │ ├── 07_活动管理 │ ├── QQ截图20200325110515.png │ ├── QQ截图20200325110528.png │ └── QQ截图20200325110549.png │ ├── 08_红包管理 │ ├── QQ截图20200325110559.png │ ├── QQ截图20200325110624.png │ ├── QQ截图20200325110633.png │ └── QQ截图20200325110641.png │ ├── 09_系统管理 │ ├── QQ截图20200325110647.png │ ├── QQ截图20200325110658.png │ ├── QQ截图20200325110711.png │ ├── QQ截图20200325110717.png │ ├── QQ截图20200325110730.png │ ├── QQ截图20200325110735.png │ ├── QQ截图20200325110744.png │ ├── QQ截图20200325110756.png │ ├── QQ截图20200325110804.png │ ├── QQ截图20200325110825.png │ ├── QQ截图20200325110837.png │ ├── QQ截图20200325110845.png │ └── QQ截图20200325110850.png │ ├── 10_保证金管理 │ ├── QQ截图20200325110856.png │ └── QQ截图20200325110901.png │ └── 11_OTC管理 │ ├── QQ截图20200325110907.png │ ├── QQ截图20200325110919.png │ ├── QQ截图20200325110925.png │ ├── QQ截图20200325110930.png │ ├── QQ截图20200325110935.png │ └── QQ截图20200325110939.png ├── DEVELOP.md ├── LICENSE ├── README.md └── 管理后台截图.md /00_framework.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/00_framework.tar.xz -------------------------------------------------------------------------------- /01_wallet_rpc.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/01_wallet_rpc.tar.xz -------------------------------------------------------------------------------- /04_Web_Admin.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/04_Web_Admin.tar.xz -------------------------------------------------------------------------------- /05_Web_Front.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/05_Web_Front.tar.xz -------------------------------------------------------------------------------- /09_DOC/Nginx配置文件/default.conf: -------------------------------------------------------------------------------- 1 | server { 2 | listen 8801; #不用80端口可绕过备案 3 | server_name localhost; 4 | 5 | #charset koi8-r; 6 | #access_log /var/log/nginx/host.access.log main; 7 | 8 | location / { 9 | root /usr/share/nginx/html; 10 | index index.html index.htm; 11 | } 12 | 13 | server_name locahost; 14 | location /market { 15 | client_max_body_size 5m; 16 | proxy_pass http://localhost:6004; 17 | proxy_set_header Host $http_host; 18 | proxy_set_header X-Real-IP $remote_addr; 19 | proxy_set_header X-Scheme $scheme; 20 | proxy_set_header Upgrade $http_upgrade; 21 | proxy_set_header Connection "upgrade"; 22 | } 23 | location /exchange { 24 | client_max_body_size 5m; 25 | proxy_pass http://localhost:6003; 26 | proxy_set_header Host $host; 27 | proxy_set_header X-Real-IP $remote_addr; 28 | } 29 | location /uc { 30 | client_max_body_size 5m; 31 | proxy_pass http://localhost:6001; 32 | proxy_set_header Host $host; 33 | proxy_set_header X-Real-IP $remote_addr; 34 | } 35 | location /admin { 36 | client_max_body_size 5m; 37 | proxy_pass http://localhost:6010; 38 | proxy_set_header Host $host; 39 | proxy_set_header X-Real-IP $remote_addr; 40 | } 41 | location /chat { 42 | client_max_body_size 5m; 43 | proxy_pass http://localhost:6008; 44 | proxy_set_header Host $host; 45 | proxy_set_header Upgrade $http_upgrade; 46 | proxy_set_header Connection "upgrade"; 47 | proxy_set_header X-Real-IP $remote_addr; 48 | } 49 | 50 | #error_page 404 /404.html; 51 | 52 | # redirect server error pages to the static page /50x.html 53 | # 54 | error_page 500 502 503 504 /50x.html; 55 | location = /50x.html { 56 | root /usr/share/nginx/html; 57 | } 58 | 59 | # proxy the PHP scripts to Apache listening on 127.0.0.1:80 60 | # 61 | #location ~ \.php$ { 62 | # proxy_pass http://127.0.0.1; 63 | #} 64 | 65 | # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 66 | # 67 | #location ~ \.php$ { 68 | # root html; 69 | # fastcgi_pass 127.0.0.1:9000; 70 | # fastcgi_index index.php; 71 | # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 72 | # include fastcgi_params; 73 | #} 74 | 75 | # deny access to .htaccess files, if Apache's document root 76 | # concurs with nginx's one 77 | # 78 | #location ~ /\.ht { 79 | # deny all; 80 | #} 81 | } 82 | 83 | -------------------------------------------------------------------------------- /09_DOC/Nginx配置文件/https配置文件/nginx.conf: -------------------------------------------------------------------------------- 1 | 2 | #user nobody; 3 | worker_processes 2; 4 | 5 | #error_log logs/error.log; 6 | #error_log logs/error.log notice; 7 | #error_log logs/error.log info; 8 | 9 | pid logs/nginx.pid; 10 | 11 | 12 | events { 13 | worker_connections 1024; 14 | } 15 | 16 | 17 | #监听socket端口 18 | stream{ 19 | upstream market_server{ 20 | hash $remote_addr consistent; 21 | server 49.234.13.106:28901; 22 | } 23 | server { 24 | listen 28901; 25 | proxy_pass market_server; 26 | } 27 | 28 | upstream otc_heart_server{ 29 | hash $remote_addr consistent; 30 | server 49.234.13.106:28902; 31 | } 32 | server { 33 | listen 28902; 34 | proxy_pass otc_heart_server; 35 | } 36 | } 37 | 38 | http { 39 | include mime.types; 40 | default_type application/octet-stream; 41 | 42 | #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 43 | # '$status $body_bytes_sent "$http_referer" ' 44 | # '"$http_user_agent" "$http_x_forwarded_for"'; 45 | 46 | #access_log logs/access.log main; 47 | 48 | sendfile on; 49 | #tcp_nopush on; 50 | 51 | #keepalive_timeout 0; 52 | keepalive_timeout 65; 53 | 54 | #gzip on; 55 | server { 56 | listen 80; 57 | server_name api.xxxx.com; 58 | rewrite ^(.*)$ https://$host$1 permanent; 59 | location / { 60 | add_header 'Access-Control-Allow-Origin' '*' always; 61 | proxy_pass http://111.111.111.111:8801; 62 | proxy_set_header Host $http_host; 63 | proxy_set_header X-Real-IP $remote_addr; 64 | proxy_set_header X-Scheme $scheme; 65 | proxy_set_header Upgrade $http_upgrade; 66 | proxy_set_header Connection "upgrade"; 67 | break; 68 | } 69 | } 70 | 71 | server { 72 | listen 80; 73 | server_name www.xxxx.com; 74 | 75 | #charset koi8-r; 76 | 77 | #access_log logs/host.access.log main; 78 | 79 | rewrite ^(.*)$ https://$host$1 permanent; 80 | 81 | location / { 82 | root html; 83 | index index.html index.htm; 84 | try_files $uri $uri/ /index.html; 85 | } 86 | 87 | location ~ .*.(eot|ttf|ttc|otf|eot|woff|woff2|svg)(.*) { 88 | add_header Access-Control-Allow-Origin http://www.xxxx.com; 89 | } 90 | 91 | # redirect server error pages to the static page /50x.html 92 | # 93 | error_page 500 502 503 504 /50x.html; 94 | location = /50x.html { 95 | root html; 96 | } 97 | } 98 | 99 | server { 100 | listen 80; 101 | server_name xxxx.com; 102 | rewrite ^(.*)$ https://$host$1 permanent; 103 | #charset koi8-r; 104 | 105 | #access_log logs/host.access.log main; 106 | 107 | location / { 108 | root html; 109 | index index.html index.htm; 110 | try_files $uri $uri/ /index.html; 111 | } 112 | 113 | location ~ .*.(eot|ttf|ttc|otf|eot|woff|woff2|svg)(.*) { 114 | add_header Access-Control-Allow-Origin http://www.xxxx.com; 115 | } 116 | 117 | # redirect server error pages to the static page /50x.html 118 | # 119 | error_page 500 502 503 504 /50x.html; 120 | location = /50x.html { 121 | root html; 122 | } 123 | } 124 | 125 | server { 126 | listen 443 ssl; 127 | server_name www.xxxx.com; 128 | ssl on; 129 | ssl_certificate /usr/local/nginx/ssl/1_www.xxxx.com_bundle.crt; 130 | ssl_certificate_key /usr/local/nginx/ssl/2_www.xxxx.com.key; 131 | ssl_session_cache shared:SSL:1m; 132 | ssl_session_timeout 5m; 133 | ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 134 | ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!3DES:!aNULL:!eNULL; 135 | ssl_prefer_server_ciphers on; 136 | location / { 137 | root html; 138 | index index.html index.htm; 139 | try_files $uri $uri/ /index.html; 140 | } 141 | } 142 | 143 | server { 144 | listen 443 ssl; 145 | server_name xxxx.com; 146 | ssl on; 147 | ssl_certificate /usr/local/nginx/ssl/1_www.xxxx.com_bundle.crt; 148 | ssl_certificate_key /usr/local/nginx/ssl/2_www.xxxx.com.key; 149 | ssl_session_cache shared:SSL:1m; 150 | ssl_session_timeout 5m; 151 | ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 152 | ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!3DES:!aNULL:!eNULL; 153 | ssl_prefer_server_ciphers on; 154 | location / { 155 | root html; 156 | index index.html index.htm; 157 | try_files $uri $uri/ /index.html; 158 | } 159 | } 160 | 161 | server { 162 | listen 443 ssl; 163 | server_name api.xxxx.com; 164 | ssl on; 165 | ssl_certificate /usr/local/nginx/ssl/1_api.xxxx.com_bundle.crt; 166 | ssl_certificate_key /usr/local/nginx/ssl/2_api.xxxx.com.key; 167 | ssl_session_cache shared:SSL:1m; 168 | ssl_session_timeout 5m; 169 | ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 170 | ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!3DES:!aNULL:!eNULL; 171 | ssl_prefer_server_ciphers on; 172 | location / { 173 | proxy_pass http://49.234.13.106:8801; 174 | proxy_set_header Host $http_host; 175 | proxy_set_header X-Real-IP $remote_addr; 176 | proxy_set_header X-Scheme $scheme; 177 | proxy_set_header Upgrade $http_upgrade; 178 | proxy_set_header Connection "upgrade"; 179 | break; 180 | } 181 | } 182 | 183 | # another virtual host using mix of IP-, name-, and port-based configuration 184 | # 185 | #server { 186 | # listen 8000; 187 | # listen somename:8080; 188 | # server_name somename alias another.alias; 189 | 190 | # location / { 191 | # root html; 192 | # index index.html index.htm; 193 | # } 194 | #} 195 | 196 | # HTTPS server 197 | # 198 | #server { 199 | # listen 443 ssl; 200 | # server_name localhost; 201 | 202 | # ssl_certificate cert.pem; 203 | # ssl_certificate_key cert.key; 204 | 205 | # ssl_session_cache shared:SSL:1m; 206 | # ssl_session_timeout 5m; 207 | 208 | # ssl_ciphers HIGH:!aNULL:!MD5; 209 | # ssl_prefer_server_ciphers on; 210 | 211 | # location / { 212 | # root html; 213 | # index index.html index.htm; 214 | # } 215 | #} 216 | 217 | } 218 | -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/01_首页.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/01_首页.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/02_币币交易.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/02_币币交易.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/03_法币交易CTC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/03_法币交易CTC.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/04_创新实验室.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/04_创新实验室.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/05_公告.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/05_公告.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/06_帮助中心.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/06_帮助中心.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/07_推广合伙人.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/07_推广合伙人.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/公告详情.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/公告详情.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/创新实验室详情.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/创新实验室详情.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/注册.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/注册.png -------------------------------------------------------------------------------- /09_DOC/PC端运行截图/登录.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/PC端运行截图/登录.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/00_首页/QQ截图20200325105611.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/00_首页/QQ截图20200325105611.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105658.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105658.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105734.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105734.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105758.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105758.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105823.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105823.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105841.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/01_会员管理/QQ截图20200325105841.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105858.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105858.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105914.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105914.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105926.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/02_邀请管理/QQ截图20200325105926.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/03_CTC管理/QQ截图20200325105949.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/03_CTC管理/QQ截图20200325105949.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/03_CTC管理/QQ截图20200325110013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/03_CTC管理/QQ截图20200325110013.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110038.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110038.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110052.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110052.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110105.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110105.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110111.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110111.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110122.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110122.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110127.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/04_内容管理/QQ截图20200325110127.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110135.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110135.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110221.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110221.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110236.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110236.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110244.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110244.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110258.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110258.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110304.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110304.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110329.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110329.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110336.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/05_财务管理/QQ截图20200325110336.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110345.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110345.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110355.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110355.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110415.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110415.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110421.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110421.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110436.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110436.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110446.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110446.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110503.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/06_币币管理/QQ截图20200325110503.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110515.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110515.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110528.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110528.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110549.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/07_活动管理/QQ截图20200325110549.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110559.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110559.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110624.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110624.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110633.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110633.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110641.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/08_红包管理/QQ截图20200325110641.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110647.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110647.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110658.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110658.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110711.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110711.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110717.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110717.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110730.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110730.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110735.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110735.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110744.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110744.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110756.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110756.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110804.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110804.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110825.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110825.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110837.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110837.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110845.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110845.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110850.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/09_系统管理/QQ截图20200325110850.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/10_保证金管理/QQ截图20200325110856.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/10_保证金管理/QQ截图20200325110856.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/10_保证金管理/QQ截图20200325110901.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/10_保证金管理/QQ截图20200325110901.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110907.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110907.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110919.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110919.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110925.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110925.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110930.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110930.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110935.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110935.png -------------------------------------------------------------------------------- /09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110939.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mtemi/Crypto-Trading-Exchange-/ae2c9960d99b964a51111cf43a9e54cbb4ed3b0d/09_DOC/管理后台运行截图/11_OTC管理/QQ截图20200325110939.png -------------------------------------------------------------------------------- /DEVELOP.md: -------------------------------------------------------------------------------- 1 | # 本地开发说明 2 | 3 | 本文档适合有一定基础的人看,需要具备SpringCloud/SringBoot开发基础、Vue/Npm前端开发基础、Mysql基础、Mongodb基础、Redis基础、Linux基础。一般而言,大部分Java程序员都具备这些能力。 4 | 5 | 同时,如果需要连接区块链,对区块链钱包进行操作/数据获取,你还需要具备一些区块链相关的基础知识,包括但不限于:搭建比特币/以太坊等节点、区块链节点RPC访问、比特币钱包基础、以太坊钱包基础等。一般而言,你不需要特别精通区块链的运行过程,只需要对区块链的运行原理有一定的了解。 6 | 7 | 本项目前后端分离,如果你是一个全栈程序员,这个项目应该很快就能调试通。 8 | 有什么问题可以添加QQ:877070886,我会给予一定的技术援助(小白问题请绕过)。 9 | 10 | #### 关于Framework开发 11 | 12 | 00_Framework文件夹下的项目是所有服务的集合,通过SpringCloud的微服务开发模式进行开发,你可以通过Eclipse打开整个工程项目,我的开发工具版本如下: 13 | 14 | > Eclipse Java EE IDE for Web Developers. 15 | 16 | > Version: Photon Release (4.8.0) 17 | 18 | > Build id: 20180619-1200 19 | 20 | 首先,为开发工具安装Lombok插件。 21 | 22 | 用Eclipse打开项目后,你的开发工程目录应该如下图所示: 23 | ![开发界面](https://images.gitee.com/uploads/images/2020/0324/104050_1d27dea9_2182501.png "QQ截图20200324104038.png") 24 | 25 | 编译项目时,请先编译core以及xxx-core项目,否则会提示缺少类(本项目使用JPA QueryDsl实现表操作)。 26 | 27 | 每个项目都有独立的服务端口(配置文件中),你可以直接通过(IP:端口)调用服务,也可以通过网关(Cloud项目,7000端口)调用服务,也可以通过配置Nginx反向代理进行服务调用(生产环境使用此种方式) 28 | 29 | #### 关于后台管理Web端开发 30 | 31 | 配置文件在src/config/api.js,你可以在这里配置你的Admin服务IP端口,因为后台管理web只会调用一个Admin服务,所以,你可以选择直接指定到Admin服务IP:端口。 32 | 33 | 同时,你还需要修改src/service/http.js文件中的访问配置。 34 | 35 | 启动方式:通过npm run dev即可热启动项目,通过npm run build可编译出部署文件。 36 | 37 | 38 | #### 关于前台Web端开发 39 | 40 | 前台Web端(PC)因为要访问不同的服务,像个人信息需要调用Ucenter提供的服务,交易需要调用Exchange-api的服务,所以,你需要通过网关的方式为前端提供服务。 41 | 配置文件在:src/main.js,你可通过修改Vue.prototype.rootHost及Vue.prototype.host来实现对后端服务的调用。 42 | 43 | #### 关于数据库(MySQL) 44 | 数据库文件在00_Framework/sql文件夹下,提供了db_patch,这个文件仅提供了一些基础数据(菜单树、管理员权限等),其他的数据库表会在jar包首次运行的时候自动更新到数据库,配置项在: 45 | 46 | 47 | > #jpa 48 | 49 | > spring.jpa.show-sql=true 50 | 51 | > spring.data.jpa.repositories.enabled=true 52 | 53 | > spring.jpa.hibernate.ddl-auto=update 54 | 55 | 如果你不希望数据库表与Java类实体动态更新,你可选择修改配置项:spring.jpa.hibernate.ddl-auto=update 56 | 57 | #### 环境配置 58 | 59 | 系统运行依赖于Mongodb、Redis、MySQL、kafka、阿里云OSS,所以你需要准备好这些基础服务。 60 | 61 | #### 常见编译问题(Error) 62 | 63 | 一、启动ucenter-api时,提示下列错误: 64 | Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource 65 | 原因:使用了注解:@EnableRedisHttpSession,这个注解是用来开启Redis来集式式管理Session。而在使用这种方式的时候,是需要Redis开启Keyspace Notifications功能的,默认是关闭的。这个功能有一个参数来控制它,notify-keyspace-events,把它的值改为Egx。 66 | 腾讯云中的redis参数notify-keyspace-events修改方法:进入实例->参数,修改即可。 67 | 68 | 69 | 2、运行jar包提示Failed to get nested archive for entry BOOT....... 70 | 提示缺少spark.xxxx.DB类,这是因为编译时未将spark-core.jar拷贝到压缩包中,这个时候需要将pom.xml文件中修改一下,追加: 71 | 72 | true 73 | 74 | 追加位置:spring-boot-maven-plugin,与平级 75 | 然后删除target下的jar包,重新生成,最好run maven clean以后再maven install 76 | 77 | 78 | 3、org.apache.shiro.authz.UnauthorizedException: Subject does not have permission [system:announcement:deletes] 79 | 这种错误是操作没有权限导致,检查操作的方法与数据库中的是否一致。 80 | 第一步,通过浏览器F12查看请求的链接,一般显示404 81 | 第二步,检查数据库中admin_permission表中是否有要访问的链接 82 | 83 | 3、market.jar启动失败,提示connection refuesed之类的错误,首先用netstat -tunlp查看端口6005(也就是exchange)是否有监听,如果没有,则说明exchange未完全启动。 84 | 导致exchange启动慢的原因主要是初始化时,对未完成的订单加载慢。初始化时,需要从mangodb加载订单成交详情,这是非常巨大的数据。 85 | 86 | #### 一些配置项说明 87 | 88 | 1、market/application.properties 89 | # 二级推荐人币币手续费佣金是否发放(true:开放 false:不开放) 90 | second.referrer.award=false 91 | 92 | 2、ucenter-api/application.properties 93 | # system(发送邮件使用) 94 | spark.system.work-id=1 95 | spark.system.data-center-id=1 96 | spark.system.host= 97 | spark.system.name= 98 | * #推荐注册奖励,1=被推荐人必须实名认证才可获得奖励,否则无限制,要与admin模块里面的配置保持统一 99 | commission.need.real-name=1 100 | #推荐注册奖励是否开启二级奖励(1=开启,0=关闭) 101 | commission.promotion.second-level=0 102 | #个人推广链接的前缀,随着登录接口返回给客户端。客户端那边与推广码连接,组成个人推广链接。如果有推广注册功能必填 103 | person.promote.prefix=http://www.bizzan.com/#/register?agent= 104 | #转账接口地址 105 | transfer.url= 106 | transfer.key= 107 | transfer.smac= 108 | 109 | #### Nginx配置 110 | 111 | 参考网址: 112 | https://blog.csdn.net/qq_36628908/article/details/80243713 113 | 114 | nginx文档目录:usr/local/nginx/html/、usr/local/nginx/conf/ 115 | 116 | 注意事项: 117 | 1、api.xxxx.com 与 www.xxxx.com需要转发不同服务 118 | 2、需要api.xxxx.com支持websocket 119 | 120 | 121 | =========================== 122 | 依赖环境 123 | yum install -y wget 124 | yum install -y vim-enhanced 125 | yum install -y make cmake gcc gcc-c++ 126 | yum install -y pcre pcre-devel 127 | yum install -y zlib zlib-devel 128 | yum install -y openssl openssl-devel 129 | 130 | 下载nginx-1.12.2.tar.gz 131 | wget http://nginx.org/download/nginx-1.12.2.tar.gz 132 | 133 | 编译安装 134 | tar -zxvf nginx-1.12.2.tar.gz 135 | cd nginx-1.12.2 136 | 137 | ./configure \ 138 | --prefix=/usr/local/nginx \ 139 | --pid-path=/var/run/nginx/nginx.pid \ 140 | --lock-path=/var/lock/nginx.lock \ 141 | --error-log-path=/var/log/nginx/error.log \ 142 | --http-log-path=/var/log/nginx/access.log \ 143 | --with-http_gzip_static_module \ 144 | --http-client-body-temp-path=/var/temp/nginx/client \ 145 | --http-proxy-temp-path=/var/temp/nginx/proxy \ 146 | --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ 147 | --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ 148 | --with-http_stub_status_module \ 149 | --with-http_ssl_module \ 150 | --http-scgi-temp-path=/var/temp/nginx/scgi \ 151 | --with-stream --with-stream_ssl_module 152 | 153 | make 154 | make install -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Live demo here: https://exchange.crypttops.com/ 2 | # Whatsapp: +254795557216 3 | # I am helping setup this exchange for anyone interested. It apears the initial master of the code: Jammy928 isn't keen on responding to querries from anyone. 4 | # Crypto-Trading Centralised Exchange /Trading BOT, Binance Clone, Huobi Clone, Bitsgap Clone 5 | # Maybe The best open source core code exchange in the entire net, the architecture/code quality is visible. 6 | # I think this may be the best choice for you to build an exchange or secondary development 7 | 8 | > Statement 1: I will charge setup fees on this project as it doesn't work as it's provided for by Jammy. 9 | > Statement 2: The APP source code and the trading robot source code are not open source (provided for a fee), if necessary, whatsapp: +254795557216 10 | . 11 | 12 | ## Introduction 13 | 14 | This project is a bitcoin exchange based on Java (SpringCloud) | BTC exchange | ETH exchange | digital currency exchange | trading platform | matching trading engine. This project is based on the development of Spring Cloud microservices, which can be used to build and secondary development digital currency exchanges, and has a complete system component. 15 | - Match trading engine. 16 | - Background management (back-end + front-end) 17 | - Frontend (transaction page, event page, personal center, etc.)) 18 | - Native Android APP source code 19 | - Native Apple APP source code 20 | - Currency wallet RPC source code 21 | - Multi Language Support(Simple Chinese、English) 22 | 23 | ![PC](https://images.gitee.com/uploads/images/2020/0422/182754_a150e134_2182501.png "QQ截图20200422182717.png") 24 | 25 | ![APP](https://images.gitee.com/uploads/images/2020/0422/182544_05863aa2_2182501.png "幻灯片1.PNG") 26 | 27 | ![APP](https://images.gitee.com/uploads/images/2020/0422/182559_860d3c60_2182501.png "幻灯片2.PNG") 28 | 29 | ## System architecture overview 30 | 31 | Just draw a few sketches, just look at it。。。 32 | 33 | #### Overall structure 34 | 35 | ![整体架构](https://images.gitee.com/uploads/images/2020/0407/143836_eac248e5_2182501.png "1.png") 36 | 37 | #### Logical architecture 38 | 39 | ![逻辑架构](https://images.gitee.com/uploads/images/2020/0407/143856_66257325_2182501.png "2.png") 40 | 41 | #### Deployment architecture 42 | 43 | ![部署架构](https://images.gitee.com/uploads/images/2020/0408/141710_07923003_2182501.png "1117.png") 44 | 45 | #### Dependencies 46 | 47 | ![依赖关系](https://images.gitee.com/uploads/images/2020/0407/194510_89803a9d_2182501.png "QQ截图20200407194419.png") 48 | 49 | ## System demonstration video 50 | 51 | PC front end (user web end):[https://gitee.com/cexchange/CoinExchange/attach_files](https://gitee.com/cexchange/CoinExchange/attach_files) 52 | 53 | Mobile APP:[https://gitee.com/cexchange/CoinExchange/attach_files](https://gitee.com/cexchange/CoinExchange/attach_files) 54 | 55 | Management background:[https://gitee.com/cexchange/CoinExchange/attach_files](https://gitee.com/cexchange/CoinExchange/attach_files) 56 | 57 | ## Development Reference 58 | 59 | Development Reference Document:[https://gitee.com/cexchange/CoinExchange/blob/master/DEVELOP.md](https://gitee.com/cexchange/CoinExchange/blob/master/DEVELOP.md) 60 | 61 | Manage background screenshots:[https://gitee.com/cexchange/CoinExchange/tree/master/09_DOC/管理后台截图](https://gitee.com/cexchange/CoinExchange/tree/master/09_DOC/%E7%AE%A1%E7%90%86%E5%90%8E%E5%8F%B0%E8%BF%90%E8%A1%8C%E6%88%AA%E5%9B%BE) 62 | 63 | ## About server configuration and deployment 64 | 65 | If you want to build an exchange system on your computer or cloud server, I have prepared some basic deployment manuals. Of course, installing software on linux/unix is not a simple matter. You need to have a certain Linux basics and command line skills, but also the courage and patience to solve problems, I wish you success! 66 | 67 | - [Server Configuration Reference Manual](./09_DOC/00_服务器部署/推荐服务器配置.md) 68 | - [Installation Basic Environment Manual](./09_DOC/00_服务器部署/安装基础环境.md) 69 | - [Service deployment script](./09_DOC/00_服务器部署/install.sh) 70 | - [Install MySql Manual](./09_DOC/00_服务器部署/安装MySql.md) 71 | - [Install Redis Manual](./09_DOC/00_服务器部署/安装Redis.md) 72 | - [Install Zookeeper Manual](./09_DOC/00_服务器部署/安装Zookeeper.md) 73 | - [Install Kafka Manual](./09_DOC/00_服务器部署/安装Kafka.md) 74 | - [nstall Mongodb manual](./09_DOC/00_服务器部署/安装Mongodb.md) 75 | - [Building a BTC wallet node manual](./09_DOC/00_服务器部署/搭建BTC钱包.md) 76 | - [Building ETH Wallet Node Manual](./09_DOC/00_服务器部署/搭建ETH钱包.md) 77 | - [Manual of Building USDT Wallet Node](./09_DOC/00_服务器部署/搭建USDT钱包.md) 78 | 79 | ## About SpringCloud 80 | 81 | Spring Cloud is an ordered collection of frameworks. It uses Spring Boot's development convenience to subtly simplify the development of distributed system infrastructure, such as service discovery registration, configuration center, message bus, load balancing, circuit breaker, data monitoring, etc., can be done using Spring Boot's development style One click to start and deploy. Spring Cloud does not repeat the manufacturing of wheels. It just combines the mature and practical service frameworks developed by various companies. The re-encapsulation through the Spring Boot style shields the complex configuration and implementation principles, and finally gives the development The author has left a set of distributed system development kits that are simple to understand, easy to deploy, and easy to maintain. 82 | In general, a complete Spring Cloud framework should be as shown in the following figure: 83 | 84 | ![SpringCloud框架图](https://images.gitee.com/uploads/images/2020/0408/133052_3ec984df_2182501.png "图片2.png") 85 | 86 | If you are unfamiliar with Spring Cloud, you can simply learn about Spring Cloud related tutorials first, so that you will come back to this project and it will be easier to get started. 87 | As a reminder, because the Springcloud framework diagram is a complete architecture, we will tailor some content appropriately during development to make development and deployment faster, so there are some discrepancies. 88 | 89 | ## About Matchmaking Trading Engine 90 | 91 | The system uses memory matching for the transaction queue, Kafka is used for matching order information transmission, MongoDB persists the order transaction details, and MySQL records the overall order transaction. 92 | Among them, the 01_Framework/Exchange project is mainly responsible for memory matching, and the 01_Framework/Market project is mainly responsible for order transaction persistence, market generation, market push and other services, including: 93 | 94 | - K-line data, the intervals are: 1 minute, 5 minutes, 15 minutes, 30 minutes, 1 hour, 1 day, 1 week, 1 month 95 | - Market depth data for all trading pairs 96 | - The latest prices of all trading pairs 97 | - Recently traded pairs 98 | 99 | **Modes supported by memory matching transactions** 100 | 101 | - Matching of limit order and limit order 102 | - Matching market orders and limit orders 103 | - Matching limit orders with market orders 104 | - Matching market orders with market orders 105 | 106 | **Limit & Market Order Processing Logic** 107 | 108 | ![限价&市价订单处理逻辑](https://images.gitee.com/uploads/images/2020/0408/144633_457c0552_2182501.png "2222.png") 109 | Note: This picture is a long time ago, the logic in the latest code is more complicated 110 | 111 | **Other features supported by match engine** 112 | 113 | In addition to the ordinary matching functions of limit and market prices, the matching trading engine of this system also introduces an active transaction mode. By setting the trading start time, initial issuance volume, initial issuance price, and activity of trading pairs (such as BTC/USDT) Modes and other parameters can formulate a wealth of matching transaction modes to meet different matching modes. 114 | 115 | **for example** 116 | 117 | The exchange is expected to launch the trading pair AAA/USDT at 12:00:00 on August 8, 2020, but as a newly launched currency, how can it work without activity? The project party or the exchange decided to come up with 10,000 AAA at a price of 0.0001USDT (market price: 0.0005) for everyone to snap up. The system supports the setting of such activities. 118 | 119 | In addition, if the project party or the exchange decides to take out 10,000 AAAs to issue at the price of 0.0001USDT, I don’t want everyone to snap up, but hope that all users who recharge USDT can divide 10,000 AAAs on average. This system also supports the setting of this activity . 120 | 121 | **to sum up** 122 | 123 | n short, this system supports a highly customized matching mode. At the same time, you can also develop your own matching transaction mode, just by modifying the matching logic in the Exchange project. 124 | 125 | ## About the technical composition 126 | 127 | - Backend development:Spring、SpringMVC、SpringData、SpringCloud、SpringBoot 128 | - DataBase:Mysql、Mongodb 129 | - Other:redis、kafka、Ali OSS、Tencent Captcha 130 | - Frontend:Vue、iView、less 131 | 132 | ## Demo website 133 | 134 | [https://www.bizzan.com](https://www.bizzan.com) 135 | 136 | This was done for the customer, but later the customer stopped operating, so this website was left, because I don’t have server permissions, so this website may not be accessible at any time. 137 | 138 | Building a test site requires purchasing several cloud servers, which cost a lot, so I did not set up a test station myself, but the system is complete and has passed the commercial and practical operation test for nearly a year. 139 | 140 | > About trading robots 141 | > Trading robots are automatic trading programs that can automatically trade based on external market conditions, so that the exchange's trading pair prices are consistent with the external, preventing losses caused by some users "moving bricks". 142 | 143 | ============================================== 144 | 145 | ## System operating environment 146 | 147 | 1. Centos 6.8 148 | 2. MySQL 5.5.16 149 | 3. Redis-x64-3.2.100 150 | 4. Mongodb 3.6.13 151 | 5. kafka_2.11-2.2.1 152 | 6. nginx-1.16.0 153 | 7. JRE 8u241 154 | 8. JDK 1.8 155 | 9. Vue 156 | 10. Zookeeper 157 | 158 | ## Recommended configuration for production environment 159 | 160 | ![生产环境建议配置](https://images.gitee.com/uploads/images/2020/0406/204436_dfff09a6_2182501.png "QQ截图20200406204341.png") 161 | 162 | ## File directory description 163 | 164 | **00_framework** 165 | 166 | └─———admin Background management API 167 | 168 | └─———bitrade-job Task management(Empty) 169 | 170 | └─———chat OTC Chat 171 | 172 | └─———cloud SpringCloud Eureka 173 | 174 | └─———core Core 175 | 176 | └─———exchange match trading 177 | 178 | └─———exchange-api order API 179 | 180 | └─———exchange-core order core 181 | 182 | └─———jar Other lib 183 | 184 | └─———market market API、K-line service 185 | 186 | └─———otc-api OTC trade API 187 | 188 | └─———otc-core OTC core 189 | 190 | └─———sql SQL script 191 | 192 | └─———ucenter-api user API 193 | 194 | └─———wallet wallet 195 | 196 | 197 | **01_wallet_rpc** 198 | 199 | └─———bitcoin 200 | 201 | └─———bsv 202 | 203 | └─———btm 204 | 205 | └─———eos 206 | 207 | └─———erc-eusdt 208 | 209 | └─———erc-token(可对接各种ERC20币种) 210 | 211 | └─———eth 212 | 213 | └─———ltc 214 | 215 | └─———usdt 216 | 217 | 218 | **02_App_Android** 219 | 220 | **03_App_IOS** 221 | 222 | **04_Web_Admin** 223 | 224 | **05_Web_Front** 225 | 226 | 227 | ## Use tutorial 228 | 229 | 1. Prepare the mysql database and create a database named "xxxx" 230 | 2. Prepare redis cache database 231 | 3. Prepare kafka streaming environment (first configure to run zookper, then configure to run kafka) 232 | 4. Prepare mongodb database environment, create users admin, xxxx, create bitrade database 233 | 5. Prepare Alibaba Cloud OSS (modify the place to be configured in the project) 234 | 6. Prepare nginx and modify the configuration file (optional, need to be configured for official launch) 235 | 7. Modify the configuration file in the framework code to prepare the environment configuration parameters 236 | 8. Compile to generate jar executable file 237 | 9. Run cloud.jar (microservices registration center) 238 | 10. Run exchange.jar (match trading engine) 239 | 11. Run market.jar (Quote Center, need to wait for Exchange.jar to fully start) 240 | 12. Run ucenter.jar (User Center) 241 | 13. Run other modules (wallet.jar, chat.jar, otc-api.jar, etc.) 242 | 14. Open mysql and import the xxxxxxx.sql file in the sql folder in the framework code. Note that if the trigger sql reports an error, you need to add a trigger for the wallet table 243 | 15. Run the front-end vue project 244 | 16. Run the back-end vue project 245 | 17. Run wallet RPC 246 | 18. Run the automated trading robot program (the code in this part is not uploaded, but it does not affect) 247 | 19. Run the Admin project (the service does not depend on other services, so you can just run this project and directly view the background) 248 | 249 | ## Technical Support 250 | This digital currency trading system is a project developed by my company for an exchange. The exchange has ceased operations due to team reasons, and our company was disbanded in February. Since I participated in the project, I was responsible for overall R&D management, architecture design and customer docking, so I mastered all the codes. 251 | 252 | There are some places that need special attention in the use of the function of this system, such as other operations after the new transaction pair, improper operation will cause data disorder errors. 253 | 254 | I can provide paid technical assistance and use training guidance! 255 | 256 | Email:877070886@qq.com 257 | 258 | ## Precautions 259 | 260 | When the memory is insufficient, enter top in the Linux console to view the java process occupies a lot of memory (a java process occupies more than 1G), because there are many jar packages to run, so you need to control the memory used by certain jar packages, you can choose A few less resource intensive projects are as follows: 261 | 262 | 263 | ``` 264 | java -jar -Xms128m -Xmx128m -Xmn200m -Xss256k admin-api.jar 265 | 266 | java -jar -Xms512m -Xmx512m -Xmn200m -Xss256k cloud.jar 267 | 268 | java -jar -Xms512m -Xmx512m -Xmn200m -Xss256k wallet.jar 269 | ``` 270 | 271 | 272 | ## About Mail & SMS 273 | 274 | 1. This system supports the operation status of the system for sending emails and short messages 275 | 2. System notification/alarm support: user registration, user authentication, user recharge/withdrawal, currency RPC operation status, system resource usage monitoring, etc. 24 kinds of monitoring 276 | 277 | 278 | ## Questions about database scripts 279 | 280 | Some reported that there is no complete SQL file. This is because the successfully compiled Jar will automatically map the Entity to a database structure after the first run. The SQL in the project only completes some database structures that Springcloud cannot complete. 281 | The automatic database configuration is located in the application.properties configuration file: 282 | 283 | > #jpa 284 | > spring.jpa.show-sql=true 285 | > spring.data.jpa.repositories.enabled=true 286 | > spring.jpa.hibernate.ddl-auto=update 287 | 288 | spring.jpa.hibernate.ddl-auto=update 289 | This configuration will automatically update the database structure. 290 | 291 | ## Core function description (user side) 292 | 293 | - [x] 1. Registration/login/real-name authentication/audit (currently only supports mobile phones, secondary development can be added to the mail, very simple) 294 | - [x] 2. Banner/Announcement/Help/Customized page (Banner supports separate settings for PC and APP, helps support various classification modes) 295 | - [x] 3. Fiat currency C2C transaction/fiat currency OTC transaction (supports two fiat currency models, the platform can undertake C2C fiat currency exchange in the early stage of the project, and OTC transactions can be opened later) 296 | - [x] 4. Coin trading (support for limit order, market order, and other commission modes can be added for secondary development) 297 | - [x] 5. Invite registered/promotion partners (support for ranking statistics on the number of invited promoters and commissions by day, week and month) 298 | - [x] 6. Innovation Lab (there are many supported functions in this part, and itemized explanations. In addition, the APP does not support this function for the time being) 299 | 300 | > - [x] 6-1. First launch panic buying activity mode (for example, when issuing a new trading pair, a certain number of currencies can be set on the trading pair for panic buying) 301 | > - [x] 6-2. The first distribution mode of activity (for example, before issuing the BTC/USDT trading pair, the official took out 5BTC for the activity, and divided the BTC equally according to how much USDT the user recharged mortgaged) 302 | > - [x] 6-3. Panic buying mode (for example, before the ZZZ/USDT trading pair is issued, the ZZZ currency price is 5USDT, and the official issuance activity price is 0.5USDT, you can use this mode) 303 | > - [x] 6-4. Control panel sharing mode (such as 6-3, only average distribution) 304 | > - [x] 6-5. Mining machine activity mode (support users to mortgage a certain amount of currency, and the official promise to return a certain amount of currency every month) 305 | 306 | - [x] 7. Red envelope function (support platform and official to issue a certain amount of currency red envelope, this function is suitable for user fission) 307 | - [x] 8. Various basic management such as user asset management, flow management, commission management, real name management 308 | 309 | ## Core function description (management side) 310 | 311 | - [x] 1. Summary (view platform operating data, including transaction amount, registered number, recharge, etc.) 312 | - [x] 2. Member management (member information management, member real name verification, member real name management, member balance management, member recharge/freeze balance, etc.) 313 | - [x] 3. Invitation management (member invitation information, member invitation ranking management) 314 | - [x] 4. CTC management (CTC order management, flow management, acceptor management) 315 | - [x] 5. Content management (PC advertising management, APP advertising management, announcement management, help management) 316 | - [x] 6. Financial management (charge and withdrawal management, financial flow management, reconciliation management, currency wallet balance management) 317 | - [x] 7. Currency management (new trading pair, management trading pair, new trading robot, setting trading robot parameters, setting market engine/trading engine, revoking all orders) 318 | - [x] 8. Event management (new activity, mining machine subscription, panic buying/division management) 319 | - [x] 9. Red envelope management (platform red envelope management, user red envelope management) 320 | - [x] 10. System management (role management, department management, user management, authority management, currency management, RPC management, version management) 321 | - [x] 11. Margin management (this function is considered in design, but not used during actual operation) 322 | - [x] 12. OTC management (advertising management, order management, OTC currency management, surrender management, etc., this function has not been verified by actual operation) 323 | 324 | ## About blockchain wallet RPC 325 | 326 | This project provides two wallet docking methods, one is self-built node + blockchain browser, and the other is third-party wallet docking. If you want to use a self-built node or blockchain browser, you can directly compile the code in 00_framework. If you want to use a third-party wallet for docking, you can download the project files of the YouDun wallet in the 07_Uduncloud folder and copy them to 00_framework. 327 | 328 | After you get the code, you can not connect the blockchain nodes during the debugging and running of this project, which will not have much impact; even if you do not connect the blockchain nodes, you can deploy one of them with matching transaction function Trading platform (just that users cannot recharge their wallet addresses). 329 | 330 | When you are gradually familiar with the entire system, and have a certain basic reserve of blockchain operation principles, node construction, and blockchain browser, you can start to study the projects under the **01_wallet_rpc** folder. Each currency corresponds to different data access methods. Most blockchain projects have the same or very similar wallet operation methods. For example, Bitcoin derivatives such as BTC, LTC, BCH, BSV, BCD, etc., have almost the same API operations. The same; another example is ETH, when you master the operation of a contract currency, the operation of other digital currencies based on ETH is almost the same. So, basically when you spend time understanding one, you understand a bunch of currencies. 331 | 332 | The wallet operation scheme used in this project is also different, and as far as possible to show you different usages: 333 | - Self-built full nodes such as BTC and USDT now require almost 300G of hard disk space; 334 | - Like ETH, self-built light nodes are used ([Reference Article](https://www.cnblogs.com/bizzan/p/11341713.html)), because the full node requires too much hard disk space; 335 | - Such as BCH, BSV, etc., use a third-party blockchain browser to obtain data; 336 | - Like XRP, the official has provided an interface to access block data ([Ripple API GitHub address] (https://github.com/ripple/ripple-lib/)) 337 | 338 | Generally speaking, when the amount of funds exchanged by the exchange is not large, you can explore it yourself, but when the amount of funds exchanged is large, if you are not confident about operating your wallet, you can also use a third-party wallet service Of course, this requires you to negotiate with the wallet service provider to pay an annual fee or something. 339 | 340 | The following figure is a brief explanatory diagram of the user recharge monitoring logic, just take a look at it: 341 | 342 | ![充值逻辑](https://images.gitee.com/uploads/images/2020/0327/162223_5d418523_2182501.png "13981024-76374161aedf70d6.png") 343 | 344 | 345 | ## System display (PC front end) 346 | 347 | ![首页](https://images.gitee.com/uploads/images/2020/0327/135803_75ec9a0b_2182501.png "01_首页.png") 348 | 349 | ![币币交易](https://images.gitee.com/uploads/images/2020/0327/135834_4a5fb1c4_2182501.png "02_币币交易.png") 350 | 351 | ![法币交易](https://images.gitee.com/uploads/images/2020/0327/135902_a7286b9c_2182501.png "03_法币交易CTC.png") 352 | 353 | ![登录](https://images.gitee.com/uploads/images/2020/0322/193759_edc5dc7b_2182501.png "图片5.png") 354 | 355 | ![活动/创新实验室](https://images.gitee.com/uploads/images/2020/0327/135930_0c02d004_2182501.png "04_创新实验室.png") 356 | 357 | ![创新实验室详情](https://images.gitee.com/uploads/images/2020/0327/140037_074a81a4_2182501.png "创新实验室详情.png") 358 | 359 | ![推广合伙人](https://images.gitee.com/uploads/images/2020/0327/140003_9b962fe7_2182501.png "07_推广合伙人.png") 360 | 361 | ![公告](https://images.gitee.com/uploads/images/2020/0322/193852_3ad12a6f_2182501.png "图片8.png") 362 | 363 | ![帮助](https://images.gitee.com/uploads/images/2020/0322/193902_ef09925e_2182501.png "图片9.png") 364 | 365 | ## System operation display (APP front end) 366 | 367 | ![首页](https://images.gitee.com/uploads/images/2020/0322/193927_9940ca7c_2182501.jpeg "图片10.jpg") 368 | 369 | ![行情](https://images.gitee.com/uploads/images/2020/0322/193941_ff5a16a2_2182501.jpeg "图片11.jpg") 370 | 371 | ![K线](https://images.gitee.com/uploads/images/2020/0322/193951_abf7b5b6_2182501.jpeg "图片12.jpg") 372 | 373 | ![交易](https://images.gitee.com/uploads/images/2020/0322/194003_d14a772a_2182501.jpeg "图片13.jpg") 374 | 375 | ![个人中心](https://images.gitee.com/uploads/images/2020/0322/194021_a047d3a5_2182501.jpeg "图片14.jpg") 376 | 377 | ![个人资产管理](https://images.gitee.com/uploads/images/2020/0322/194059_faeeeb4a_2182501.jpeg "图片15.jpg") 378 | 379 | ![邀请管理](https://images.gitee.com/uploads/images/2020/0322/194112_7ae11b00_2182501.jpeg "图片16.jpg") 380 | 381 | ## Some pages on the mobile phone Web 382 | 383 | ![APP下载](https://images.gitee.com/uploads/images/2020/0325/130921_7d8dee06_2182501.jpeg "12.jpg") 384 | 385 | ![抢红包](https://images.gitee.com/uploads/images/2020/0325/130936_18809c8f_2182501.jpeg "11.jpg") 386 | 387 | ![活动/创新实验室](https://images.gitee.com/uploads/images/2020/0325/130948_e36b562d_2182501.jpeg "13.jpg") 388 | 389 | 390 | ## System operation display (back-end) 391 | 392 | ![登录](https://images.gitee.com/uploads/images/2020/0322/194251_9b5293ff_2182501.png "图片17.png") 393 | 394 | ![首页](https://images.gitee.com/uploads/images/2020/0322/194305_f83e4f90_2182501.png "图片18.png") 395 | 396 | ![用户管理](https://images.gitee.com/uploads/images/2020/0322/194321_73eb8f58_2182501.png "图片19.png") 397 | 398 | ![邀请管理](https://images.gitee.com/uploads/images/2020/0322/194337_fd257186_2182501.png "图片20.png") 399 | 400 | ![法币交易订单管理](https://images.gitee.com/uploads/images/2020/0322/194406_ebe7328d_2182501.png "图片21.png") 401 | 402 | ![首页Banner管理](https://images.gitee.com/uploads/images/2020/0322/194433_4fb39b0a_2182501.png "图片22.png") 403 | 404 | ![交易对管理](https://images.gitee.com/uploads/images/2020/0322/194450_1eb7bb6f_2182501.png "图片23.png") 405 | 406 | ![活动管理](https://images.gitee.com/uploads/images/2020/0322/194505_204d23ce_2182501.png "图片24.png") 407 | 408 | ![红包管理](https://images.gitee.com/uploads/images/2020/0322/194531_e12eb93a_2182501.png "图片25.png") 409 | 410 | ![币种管理](https://images.gitee.com/uploads/images/2020/0322/194618_fe17409a_2182501.png "图片26.png") 411 | 412 | ![OTC管理,后端开发完成,前端未对接](https://images.gitee.com/uploads/images/2020/0322/194654_bd0acbe7_2182501.png "图片27.png") 413 | 414 | ## APP download picture example 415 | 416 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0324/182826_f0617759_2182501.png "download1.png") 417 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0324/182834_7a82f8a8_2182501.png "download2.png") 418 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0324/182840_c3d08fb7_2182501.png "download3.png") 419 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0324/182850_8b19fe57_2182501.png "download4.png") 420 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0324/182856_9206a79a_2182501.png "download5.png") 421 | 422 | ## Attention 423 | 424 | Anyone who uses this source code to engage in commercial activities and causes losses to others and himself is not responsible for me! 425 | -------------------------------------------------------------------------------- /管理后台截图.md: -------------------------------------------------------------------------------- 1 | # 首页 2 | 3 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111515_4033c52a_2182501.png "QQ截图20200325105611.png") 4 | 5 | # 会员管理 6 | 7 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111530_a97834a6_2182501.png "QQ截图20200325105658.png") 8 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111539_4ef748c1_2182501.png "QQ截图20200325105734.png") 9 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111547_6d328ac0_2182501.png "QQ截图20200325105758.png") 10 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111556_387069c3_2182501.png "QQ截图20200325105823.png") 11 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111606_c7175bfb_2182501.png "QQ截图20200325105841.png") 12 | 13 | # 邀请管理 14 | 15 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111636_21a0b667_2182501.png "QQ截图20200325105858.png") 16 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111648_17c0a28d_2182501.png "QQ截图20200325105914.png") 17 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111655_ac59d8bc_2182501.png "QQ截图20200325105926.png") 18 | 19 | # CTC管理 20 | 21 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111706_07d34a65_2182501.png "QQ截图20200325105949.png") 22 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111719_fb66a45e_2182501.png "QQ截图20200325110013.png") 23 | 24 | # 内容管理 25 | 26 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111729_05b1389c_2182501.png "QQ截图20200325110038.png") 27 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111743_1a3e4c8a_2182501.png "QQ截图20200325110052.png") 28 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111750_ab7685d8_2182501.png "QQ截图20200325110105.png") 29 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111757_89f38f9c_2182501.png "QQ截图20200325110111.png") 30 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111804_94f18a3b_2182501.png "QQ截图20200325110122.png") 31 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111815_c96d8418_2182501.png "QQ截图20200325110127.png") 32 | 33 | #财务管理 34 | 35 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111908_a0e14328_2182501.png "QQ截图20200325110135.png") 36 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111920_cfa958f0_2182501.png "QQ截图20200325110221.png") 37 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111928_36cb91e3_2182501.png "QQ截图20200325110236.png") 38 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111935_01244286_2182501.png "QQ截图20200325110244.png") 39 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111941_49b598bb_2182501.png "QQ截图20200325110258.png") 40 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111947_412f055e_2182501.png "QQ截图20200325110304.png") 41 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111953_d69e2523_2182501.png "QQ截图20200325110329.png") 42 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/111958_b4e97b67_2182501.png "QQ截图20200325110336.png") 43 | 44 | #币币管理 45 | 46 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/112007_c01ebd15_2182501.png "QQ截图20200325110345.png") 47 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/112019_a588e298_2182501.png "QQ截图20200325110355.png") 48 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/112025_0601d90b_2182501.png "QQ截图20200325110415.png") 49 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/112031_8f2feac6_2182501.png "QQ截图20200325110421.png") 50 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/0325/112037_e360cd7d_2182501.png "QQ截图20200325110436.png") 51 | 52 | 貌似码云传不了那么多图片。。。。看文件夹吧!!! --------------------------------------------------------------------------------