Quellcode durchsuchen

提交

groupmealweb
gwbvipvip vor 11 Monaten
Ursprung
Commit
7a82bc6e39
100 geänderte Dateien mit 7664 neuen und 3 gelöschten Zeilen
  1. +9
    -1
      config/proxy.js
  2. +4
    -2
      config/routes.js
  3. +1
    -0
      dist/151.12e85281.async.js
  4. +1
    -0
      dist/173.3fe077fe.async.js
  5. +27
    -0
      dist/215.8b6b685d.async.js
  6. +1
    -0
      dist/255.9ed9f795.async.js
  7. +1
    -0
      dist/311.9854aebb.async.js
  8. +1
    -0
      dist/471.20949dc8.chunk.css
  9. +58
    -0
      dist/471.79ac93bb.async.js
  10. +27
    -0
      dist/486.49ce1682.async.js
  11. +3
    -0
      dist/537.ff40990a.async.js
  12. +19
    -0
      dist/583.c7d21a56.async.js
  13. +1
    -0
      dist/59.9d6df77e.async.js
  14. +2
    -0
      dist/610.8de634a8.chunk.css
  15. +2
    -0
      dist/610.ca83f195.async.js
  16. +2
    -0
      dist/669.76091191.async.js
  17. +1
    -0
      dist/705.297b42f2.async.js
  18. +1
    -0
      dist/705.a0296ac4.chunk.css
  19. +1
    -0
      dist/826.89599a09.async.js
  20. +1
    -0
      dist/973.ad2a7a0e.async.js
  21. +1
    -0
      dist/977.8c6992c5.chunk.css
  22. +1
    -0
      dist/CNAME
  23. +62
    -0
      dist/asset-manifest.json
  24. +226
    -0
      dist/company/account/index.html
  25. +226
    -0
      dist/company/index.html
  26. +226
    -0
      dist/database/basic/batching/index.html
  27. +226
    -0
      dist/database/goods/goodsInfo/index.html
  28. +226
    -0
      dist/database/goods/goodsattribute/index.html
  29. +226
    -0
      dist/database/goods/goodstypemanage/index.html
  30. +226
    -0
      dist/database/goods/newgoods/index.html
  31. +226
    -0
      dist/database/index.html
  32. +226
    -0
      dist/device/deviceInfo/index.html
  33. +226
    -0
      dist/device/deviceType/index.html
  34. +226
    -0
      dist/device/deviceVesion/index.html
  35. +226
    -0
      dist/device/index.html
  36. BIN
     
  37. +226
    -0
      dist/groupMeal/shop/index.html
  38. BIN
     
  39. BIN
     
  40. BIN
     
  41. +226
    -0
      dist/index.html
  42. BIN
     
  43. +1
    -0
      dist/logo.svg
  44. +226
    -0
      dist/org/index.html
  45. +226
    -0
      dist/org/orgamange/index.html
  46. +226
    -0
      dist/org/roles/index.html
  47. +226
    -0
      dist/org/users/index.html
  48. +1
    -0
      dist/p__404.78b89234.async.js
  49. +1
    -0
      dist/p__404.b74445fb.chunk.css
  50. +2
    -0
      dist/p__Welcome.a394acf9.chunk.css
  51. +1
    -0
      dist/p__Welcome.f5a65af4.async.js
  52. +1
    -0
      dist/p__company__account.7b41312c.async.js
  53. +1
    -0
      dist/p__company__account.f6838307.chunk.css
  54. +1
    -0
      dist/p__database__basic__batching.5b012b67.chunk.css
  55. +1
    -0
      dist/p__database__basic__batching.74003566.async.js
  56. +1
    -0
      dist/p__database__goods__goodsInfo.48aa7be8.async.js
  57. +1
    -0
      dist/p__database__goods__goodsInfo.67f6136b.chunk.css
  58. +1
    -0
      dist/p__database__goods__goodsattribute.2acc51b0.async.js
  59. +1
    -0
      dist/p__database__goods__goodstypemanage.62323f42.async.js
  60. +1
    -0
      dist/p__database__goods__goodstypemanage.f6838307.chunk.css
  61. +1
    -0
      dist/p__database__goods__newgoods.465a016a.async.js
  62. +1
    -0
      dist/p__database__goods__newgoods.f3ef09c5.chunk.css
  63. +1
    -0
      dist/p__device__deviceInfo.956c5bea.async.js
  64. +1
    -0
      dist/p__device__deviceType.d434da00.async.js
  65. +1
    -0
      dist/p__device__deviceVesion.63cc2960.chunk.css
  66. +1
    -0
      dist/p__device__deviceVesion.8dc74e4a.async.js
  67. +1
    -0
      dist/p__groupMeal__shop.c1caa3bf.async.js
  68. +1
    -0
      dist/p__org__orgamange.5d1001bb.chunk.css
  69. +1
    -0
      dist/p__org__orgamange.7436883d.async.js
  70. +1
    -0
      dist/p__org__roles.a26b9ddd.async.js
  71. +1
    -0
      dist/p__org__users.94c0a8ec.async.js
  72. +1
    -0
      dist/p__sys__dictionary__dicttype.bb4276cb.async.js
  73. +1
    -0
      dist/p__sys__dictionary__dicttype.f6838307.chunk.css
  74. +1
    -0
      dist/p__sys__menus.be044d83.async.js
  75. +1
    -0
      dist/p__user__login.2f84d6a8.chunk.css
  76. +1
    -0
      dist/p__user__login.db9e24bc.async.js
  77. +5
    -0
      dist/pro_icon.svg
  78. +226
    -0
      dist/sys/dictionary/dicttype/index.html
  79. +226
    -0
      dist/sys/index.html
  80. +226
    -0
      dist/sys/menus/index.html
  81. +4
    -0
      dist/t__plugin-layout__Layout.bf4b85ae.async.js
  82. +1
    -0
      dist/t__plugin-layout__Layout.e1129705.chunk.css
  83. +1
    -0
      dist/umi.2d7db433.css
  84. +254
    -0
      dist/umi.80b36a37.js
  85. +226
    -0
      dist/user/index.html
  86. +226
    -0
      dist/user/login/index.html
  87. +226
    -0
      dist/welcome/index.html
  88. BIN
     
  89. BIN
     
  90. +6
    -0
      src/app.jsx
  91. +148
    -0
      src/pages/groupMeal/applet/appidmanager/appid/index.jsx
  92. +29
    -0
      src/pages/groupMeal/applet/appidmanager/appid/service.js
  93. +251
    -0
      src/pages/groupMeal/applet/appidmanager/payment/index.jsx
  94. +29
    -0
      src/pages/groupMeal/applet/appidmanager/payment/service.js
  95. +486
    -0
      src/pages/groupMeal/applet/basicconfiguration/index.jsx
  96. +12
    -0
      src/pages/groupMeal/applet/basicconfiguration/index.less
  97. +486
    -0
      src/pages/groupMeal/applet/materialmanager/index.jsx
  98. +12
    -0
      src/pages/groupMeal/applet/materialmanager/index.less
  99. +246
    -0
      src/pages/groupMeal/applet/pagemanager/index.jsx
  100. +12
    -0
      src/pages/groupMeal/applet/pagemanager/index.less

+ 9
- 1
config/proxy.js Datei anzeigen

@@ -9,13 +9,21 @@
export default {
dev: {
'/saasbase/': {
target: 'http://192.168.1.19:5006',
target: 'http://10.2.1.26:21995/saasbase/',
changeOrigin: true,
secure: false, //关闭证书验证
pathRewrite: {
'/saasbase/': '',
},
},
'/groupmeal/': {
target: 'http://localhost:5298',
changeOrigin: true,
secure: false, //关闭证书验证
pathRewrite: {
'/groupmeal/': '',
},
},
// Nginx发布的时候需要配置
'/cos/':{
target: 'https://hbl-test-1305371387.cos.ap-chengdu.myqcloud.com',


+ 4
- 2
config/routes.js Datei anzeigen

@@ -200,8 +200,10 @@ export default [
],
},
{
path: '/',
redirect: '/welcome',
path: '/groupMeal/shop',
icon: 'SettingOutlined',
name: '场景管理',
component: './groupMeal/shop',
},
{
path: '/welcome',


+ 1
- 0
dist/151.12e85281.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/173.3fe077fe.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 27
- 0
dist/215.8b6b685d.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/255.9ed9f795.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/311.9854aebb.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/471.20949dc8.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 58
- 0
dist/471.79ac93bb.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 27
- 0
dist/486.49ce1682.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 3
- 0
dist/537.ff40990a.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 19
- 0
dist/583.c7d21a56.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/59.9d6df77e.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2
- 0
dist/610.8de634a8.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2
- 0
dist/610.ca83f195.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2
- 0
dist/669.76091191.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/705.297b42f2.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/705.a0296ac4.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/826.89599a09.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/973.ad2a7a0e.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/977.8c6992c5.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/CNAME Datei anzeigen

@@ -0,0 +1 @@
preview.pro.ant.design

+ 62
- 0
dist/asset-manifest.json Datei anzeigen

@@ -0,0 +1,62 @@
{
"/umi.css": "/umi.2d7db433.css",
"/umi.js": "/umi.80b36a37.js",
"/t__plugin-layout__Layout.css": "/t__plugin-layout__Layout.e1129705.chunk.css",
"/t__plugin-layout__Layout.js": "/t__plugin-layout__Layout.bf4b85ae.async.js",
"/p__user__login.css": "/p__user__login.2f84d6a8.chunk.css",
"/p__user__login.js": "/p__user__login.db9e24bc.async.js",
"/p__sys__menus.js": "/p__sys__menus.be044d83.async.js",
"/p__sys__dictionary__dicttype.css": "/p__sys__dictionary__dicttype.f6838307.chunk.css",
"/p__sys__dictionary__dicttype.js": "/p__sys__dictionary__dicttype.bb4276cb.async.js",
"/p__company__account.css": "/p__company__account.f6838307.chunk.css",
"/p__company__account.js": "/p__company__account.7b41312c.async.js",
"/p__org__orgamange.css": "/p__org__orgamange.5d1001bb.chunk.css",
"/p__org__orgamange.js": "/p__org__orgamange.7436883d.async.js",
"/p__org__roles.js": "/p__org__roles.a26b9ddd.async.js",
"/p__org__users.js": "/p__org__users.94c0a8ec.async.js",
"/p__database__basic__batching.css": "/p__database__basic__batching.5b012b67.chunk.css",
"/p__database__basic__batching.js": "/p__database__basic__batching.74003566.async.js",
"/p__database__goods__goodstypemanage.css": "/p__database__goods__goodstypemanage.f6838307.chunk.css",
"/p__database__goods__goodstypemanage.js": "/p__database__goods__goodstypemanage.62323f42.async.js",
"/p__database__goods__goodsattribute.js": "/p__database__goods__goodsattribute.2acc51b0.async.js",
"/p__database__goods__newgoods.css": "/p__database__goods__newgoods.f3ef09c5.chunk.css",
"/p__database__goods__newgoods.js": "/p__database__goods__newgoods.465a016a.async.js",
"/p__database__goods__goodsInfo.css": "/p__database__goods__goodsInfo.67f6136b.chunk.css",
"/p__database__goods__goodsInfo.js": "/p__database__goods__goodsInfo.48aa7be8.async.js",
"/p__device__deviceType.js": "/p__device__deviceType.d434da00.async.js",
"/p__device__deviceInfo.js": "/p__device__deviceInfo.956c5bea.async.js",
"/p__device__deviceVesion.css": "/p__device__deviceVesion.63cc2960.chunk.css",
"/p__device__deviceVesion.js": "/p__device__deviceVesion.8dc74e4a.async.js",
"/p__groupMeal__shop.js": "/p__groupMeal__shop.c1caa3bf.async.js",
"/p__Welcome.css": "/p__Welcome.a394acf9.chunk.css",
"/p__Welcome.js": "/p__Welcome.f5a65af4.async.js",
"/p__404.css": "/p__404.b74445fb.chunk.css",
"/p__404.js": "/p__404.78b89234.async.js",
"/583.c7d21a56.async.js": "/583.c7d21a56.async.js",
"/705.a0296ac4.chunk.css": "/705.a0296ac4.chunk.css",
"/705.297b42f2.async.js": "/705.297b42f2.async.js",
"/151.12e85281.async.js": "/151.12e85281.async.js",
"/471.20949dc8.chunk.css": "/471.20949dc8.chunk.css",
"/471.79ac93bb.async.js": "/471.79ac93bb.async.js",
"/173.3fe077fe.async.js": "/173.3fe077fe.async.js",
"/537.ff40990a.async.js": "/537.ff40990a.async.js",
"/610.8de634a8.chunk.css": "/610.8de634a8.chunk.css",
"/610.ca83f195.async.js": "/610.ca83f195.async.js",
"/311.9854aebb.async.js": "/311.9854aebb.async.js",
"/826.89599a09.async.js": "/826.89599a09.async.js",
"/255.9ed9f795.async.js": "/255.9ed9f795.async.js",
"/59.9d6df77e.async.js": "/59.9d6df77e.async.js",
"/973.ad2a7a0e.async.js": "/973.ad2a7a0e.async.js",
"/669.76091191.async.js": "/669.76091191.async.js",
"/977.8c6992c5.chunk.css": "/977.8c6992c5.chunk.css",
"/215.8b6b685d.async.js": "/215.8b6b685d.async.js",
"/486.49ce1682.async.js": "/486.49ce1682.async.js",
"/public/logo.png": "/logo.png",
"/public/logo.svg": "/logo.svg",
"/public/icons/icon-512x512.png": "/icons/icon-512x512.png",
"/public/favicon.ico": "/favicon.ico",
"/public/icons/icon-192x192.png": "/icons/icon-192x192.png",
"/public/icons/icon-128x128.png": "/icons/icon-128x128.png",
"/public/pro_icon.svg": "/pro_icon.svg",
"/public/CNAME": "/CNAME"
}

+ 226
- 0
dist/company/account/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/company/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/basic/batching/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/goods/goodsInfo/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/goods/goodsattribute/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/goods/goodstypemanage/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/goods/newgoods/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/database/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/device/deviceInfo/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/device/deviceType/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/device/deviceVesion/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/device/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>


+ 226
- 0
dist/groupMeal/shop/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>




+ 226
- 0
dist/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>


+ 1
- 0
dist/logo.svg
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 226
- 0
dist/org/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/org/orgamange/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/org/roles/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/org/users/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 1
- 0
dist/p__404.78b89234.async.js Datei anzeigen

@@ -0,0 +1 @@
(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[571],{7594:function(u,_,t){"use strict";t.r(_);var P=t(57106),s=t(6129),d=t(57663),E=t(71577),e=t(67294),a=t(48971),n=t(85893),o=function(){return(0,n.jsx)(s.ZP,{status:"404",title:"404",subTitle:"Sorry, the page you visited does not exist.",extra:(0,n.jsx)(E.Z,{type:"primary",onClick:function(){return a.m8.push("/")},children:"Back Home"})})};_.default=o}}]);

+ 1
- 0
dist/p__404.b74445fb.chunk.css Datei anzeigen

@@ -0,0 +1 @@
.ant-result{padding:48px 32px}.ant-result-success .ant-result-icon>.anticon{color:#52c41a}.ant-result-error .ant-result-icon>.anticon{color:#ff4d4f}.ant-result-info .ant-result-icon>.anticon{color:#fa541c}.ant-result-warning .ant-result-icon>.anticon{color:#faad14}.ant-result-image{width:250px;height:295px;margin:auto}.ant-result-icon{margin-bottom:24px;text-align:center}.ant-result-icon>.anticon{font-size:72px}.ant-result-title{color:rgba(0,0,0,.85);font-size:24px;line-height:1.8;text-align:center}.ant-result-subtitle{color:rgba(0,0,0,.45);font-size:14px;line-height:1.6;text-align:center}.ant-result-extra{margin:24px 0 0;text-align:center}.ant-result-extra>*{margin-right:8px}.ant-result-extra>:last-child{margin-right:0}.ant-result-content{margin-top:24px;padding:24px 40px;background-color:#fafafa}.ant-result-rtl{direction:rtl}.ant-result-rtl .ant-result-extra>*{margin-right:0;margin-left:8px}.ant-result-rtl .ant-result-extra>:last-child{margin-left:0}

+ 2
- 0
dist/p__Welcome.a394acf9.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__Welcome.f5a65af4.async.js Datei anzeigen

@@ -0,0 +1 @@
(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[185],{8668:function(s){s.exports={pre:"pre___3fTUI"}},41496:function(s,n,_){"use strict";_.r(n);var o=_(402),r=_(67294),t=_(28790),e=_(48971),l=_(8668),c=_.n(l),a=_(85893),P=function(E){var d=E.children;return _jsx("pre",{className:styles.pre,children:_jsx("code",{children:_jsx(_Typography.Text,{copyable:!0,children:d})})})};n.default=function(){var u=(0,e.YB)();return(0,a.jsx)(t.ZP,{})}},97435:function(s,n){"use strict";function _(o,r){for(var t=Object.assign({},o),e=0;e<r.length;e+=1){var l=r[e];delete t[l]}return t}n.Z=_}}]);

+ 1
- 0
dist/p__company__account.7b41312c.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__company__account.f6838307.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__basic__batching.5b012b67.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__basic__batching.74003566.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__goodsInfo.48aa7be8.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__goodsInfo.67f6136b.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__goodsattribute.2acc51b0.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__goodstypemanage.62323f42.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__goodstypemanage.f6838307.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__newgoods.465a016a.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__database__goods__newgoods.f3ef09c5.chunk.css Datei anzeigen

@@ -0,0 +1 @@
.ant-pro-descriptions .ant-descriptions-view{overflow:visible!important;overflow:initial!important}

+ 1
- 0
dist/p__device__deviceInfo.956c5bea.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__device__deviceType.d434da00.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__device__deviceVesion.63cc2960.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__device__deviceVesion.8dc74e4a.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__groupMeal__shop.c1caa3bf.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__org__orgamange.5d1001bb.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__org__orgamange.7436883d.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__org__roles.a26b9ddd.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__org__users.94c0a8ec.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__sys__dictionary__dicttype.bb4276cb.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__sys__dictionary__dicttype.f6838307.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__sys__menus.be044d83.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/p__user__login.2f84d6a8.chunk.css Datei anzeigen

@@ -0,0 +1 @@
.container___2XU-J{display:flex;flex-direction:column;height:100vh;overflow:auto;background:#f0f2f5}.lang___3UZBu{width:100%;height:40px;line-height:44px;text-align:right}.lang___3UZBu .ant-dropdown-trigger{margin-right:24px}.content___232he{display:flex;flex:1 1;flex-direction:row}@media (min-width:768px){.container___2XU-J{background-image:url(https://gw.alipayobjects.com/zos/rmsportal/TVYTbAXWheQpRcWDaDMu.svg);background-repeat:no-repeat;background-position:center 110px;background-size:100%}.content___232he{display:flex;flex-direction:row;justify-content:center;width:100%}}.top___2e5qd{display:flex;flex:2.5 1;flex-direction:column;justify-content:center;text-align:center;background-color:#009688}.header___1G_uO{position:relative;line-height:44px;text-align:center}.header___1G_uO a{text-decoration:none}.header___1G_uO>div{width:500px;margin:auto}.logo___2RIUt{width:500px;height:180px;margin-right:16px;vertical-align:top}.title___3xYCK{position:relative;top:2px;color:#009688;font-weight:600;font-size:33px;font-family:Avenir,"Helvetica Neue",Arial,Helvetica,sans-serif;text-align:center}.desc___1GQtf{width:590px;padding-left:150px;color:#fff;font-size:38px;text-align:center}@media screen and (max-width:780px){.top___2e5qd{display:none;text-align:center}}.main___oMoRI{display:flex;flex:1.3 1;flex-direction:column;justify-content:center;width:390px;padding:80px;background-color:#f6f8fb}@media screen and (max-width:576px){.main___oMoRI{width:95%;max-width:390px}.main___oMoRI .title___3xYCK{position:relative;top:2px;color:#009688;font-weight:600;font-size:30px;font-family:Avenir,"Helvetica Neue",Arial,Helvetica,sans-serif;text-align:center}}.main___oMoRI .ant-tabs-nav-list{margin:auto;font-size:16px}.main___oMoRI .icon___1dSHb{margin-left:16px;color:rgba(0,0,0,.2);font-size:24px;vertical-align:middle;cursor:pointer;transition:color .3s}.main___oMoRI .icon___1dSHb:hover{color:#fa541c}.main___oMoRI .other___3ljbI{margin-top:24px;line-height:22px;text-align:left}.main___oMoRI .other___3ljbI .register___1vN_i{float:right}.main___oMoRI .prefixIcon___57iuX{color:#fa541c;font-size:14px}

+ 1
- 0
dist/p__user__login.db9e24bc.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 5
- 0
dist/pro_icon.svg Datei anzeigen

@@ -0,0 +1,5 @@
<svg width="42" height="42" xmlns="http://www.w3.org/2000/svg">
<g>
<path fill="#070707" d="m6.717392,13.773912l5.6,0c2.8,0 4.7,1.9 4.7,4.7c0,2.8 -2,4.7 -4.9,4.7l-2.5,0l0,4.3l-2.9,0l0,-13.7zm2.9,2.2l0,4.9l1.9,0c1.6,0 2.6,-0.9 2.6,-2.4c0,-1.6 -0.9,-2.4 -2.6,-2.4l-1.9,0l0,-0.1zm8.9,11.5l2.7,0l0,-5.7c0,-1.4 0.8,-2.3 2.2,-2.3c0.4,0 0.8,0.1 1,0.2l0,-2.4c-0.2,-0.1 -0.5,-0.1 -0.8,-0.1c-1.2,0 -2.1,0.7 -2.4,2l-0.1,0l0,-1.9l-2.7,0l0,10.2l0.1,0zm11.7,0.1c-3.1,0 -5,-2 -5,-5.3c0,-3.3 2,-5.3 5,-5.3s5,2 5,5.3c0,3.4 -1.9,5.3 -5,5.3zm0,-2.1c1.4,0 2.2,-1.1 2.2,-3.2c0,-2 -0.8,-3.2 -2.2,-3.2c-1.4,0 -2.2,1.2 -2.2,3.2c0,2.1 0.8,3.2 2.2,3.2z" class="st0" id="Ant-Design-Pro"/>
</g>
</svg>

+ 226
- 0
dist/sys/dictionary/dicttype/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/sys/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/sys/menus/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 4
- 0
dist/t__plugin-layout__Layout.bf4b85ae.async.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/t__plugin-layout__Layout.e1129705.chunk.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1
- 0
dist/umi.2d7db433.css
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 254
- 0
dist/umi.80b36a37.js
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 226
- 0
dist/user/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/user/login/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>

+ 226
- 0
dist/welcome/index.html Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta
name="keywords"
content="antd,umi,umijs,ant design,Scaffolding, layout, Ant Design, project, Pro, admin, console, homepage, out-of-the-box, middle and back office, solution, component library"
/>
<meta
name="description"
content="
An out-of-box UI solution for enterprise applications as a React boilerplate."
/>
<meta
name="description"
content="
Out-of-the-box mid-stage front-end/design solution."
/>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Ant Design Pro</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<!-- <script src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=Rvf71uBzNi7rWo1bhCvzbmLTFbPihNur"></script> -->
<link rel="stylesheet" href="/umi.2d7db433.css" />
<script>
window.routerBase = "/";
</script>
<script>
//! umi version: 3.5.39
</script>
</head>
<body>
<noscript>Out-of-the-box mid-stage front/design solution!</noscript>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s
cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: "tnum";
font-feature-settings: "tnum";
}

.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}

.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}

.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}

.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}

.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}

.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}

.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}

.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}

.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}

.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}

@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}

@keyframes antSpinMove {
to {
opacity: 1;
}
}

@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}

@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/pro_icon.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div
style="display: flex; align-items: center; justify-content: center"
>
<img
src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"
width="32"
style="margin-right: 8px"
/>
Ant Design
</div>
</div>
</div>

<script src="/umi.80b36a37.js"></script>
</body>
</html>



+ 6
- 0
src/app.jsx Datei anzeigen

@@ -248,6 +248,12 @@ export async function getInitialState() {
},
]
},
{
path: '/groupMeal/shop',
icon: 'SettingOutlined',
name: '场景管理',
component: './groupMeal/shop',
}
];
// api.queryMenus();
return data;


+ 148
- 0
src/pages/groupMeal/applet/appidmanager/appid/index.jsx Datei anzeigen

@@ -0,0 +1,148 @@
import React, { useState, useRef } from 'react';
import { PlusOutlined } from '@ant-design/icons';
import { PageContainer } from '@ant-design/pro-layout';
import { Drawer, Row, Col, Modal, Form, Input, Button, InputNumber, TreeSelect, Popconfirm, message } from 'antd';
import ProTable from '@ant-design/pro-table';
import { page, add, del, update } from './service';

const PayTemplate = () => {
const actionRef = useRef();
const [form] = Form.useForm();
const [drawerVisible, setDrawerVisible] = useState(false);
const [currentRow, setCurrentRow] = useState({});
const columns = [
{
title: '主键',
dataIndex: 'id',
tip: '规则名称是唯一的key',
hideInSearch: true,
hideInTable: true,
},
{
title: 'APPID',
dataIndex: 'appId',
valueType: 'textarea',
hideInSearch: true,
},
{
title: '操作',
dataIndex: 'option',
valueType: 'option',
width: 300,
render: (_, record) => [
<a
key={record.id}
onClick={async () => {
form.setFieldsValue(record);
setCurrentRow(record);
setDrawerVisible(true);
}} >
修改
</a>,
<Popconfirm
title="确定要删除吗?"
onConfirm={() => {
var input = [record.id];
del(input).then((re) => {
if (re.data) {
message.success('删除成功');
actionRef.current.reload();
} else {
message.error('删除失败');
}
});
}}
okText="确定"
cancelText="取消"
>
<a key={record.id} >
删除
</a>
</Popconfirm>


],
},
];
return (
<PageContainer header={{
title: '',
breadcrumb: {},
}}>
<ProTable
toolBarRender={() => {
return <Button
type="primary"
key="primary"
onClick={() => {setDrawerVisible(true) }} >
<PlusOutlined /> 新建
</Button>
}}
headerTitle=""
actionRef={actionRef}
rowKey="id"
search={false}
request={async (params) => {
var queryData = [];
var total = 0;
await page(JSON.stringify(params)).then((re) => {
queryData = re.data.data;
total = re.data.total;
});
return {
data: queryData,
success: true,
total: total,
};
}}
columns={columns}
pagination={{ defaultPageSize: 10 }}
/>
{/* ------------------------ */}

<Modal open={drawerVisible} onOk={() => { form.submit() }} onCancel={() => { setDrawerVisible(false) }}>
<Form
form={form}
preserve={false}
layout="horizontal"
labelCol={{ span: 4 }}
onFinish={async (value) => {
if (value.id) {
update(value).then((re) => {
if (re.data) {
message.success('修改成功');
setDrawerVisible(false);
actionRef.current.reload();
} else {
message.error('修改失败');
}
});
} else {
add(value).then((re) => {
if (re.data) {
message.success('添加成功');
setDrawerVisible(false);
actionRef.current.reload();
} else {
message.error('添加失败');
}
});

}
}}
>
<Form.Item name="id" hidden={true}>
<Input />
</Form.Item>
<br />
<Form.Item name="appId" label="APPID" rules={[{ required: true, max: 500 }]}>
<Input placeholder="请输入appid" />
</Form.Item>
</Form>
</Modal>
</PageContainer>
);
};

export default PayTemplate;

+ 29
- 0
src/pages/groupMeal/applet/appidmanager/appid/service.js Datei anzeigen

@@ -0,0 +1,29 @@
import { request } from 'umi';

export function page(data) {
return request(`/groupmeal/api/appid/getappidpage`, {
method: 'post',
data: data,
});
}

export function add(data) {
return request(`/groupmeal/api/appid/add`, {
method: 'post',
data: data,
});
}

export function del(data) {
return request(`/groupmeal/api/appid/delete`, {
method: 'post',
data: data,
});
}

export function update(data) {
return request(`/groupmeal/api/appid/update`, {
method: 'post',
data: data,
});
}

+ 251
- 0
src/pages/groupMeal/applet/appidmanager/payment/index.jsx Datei anzeigen

@@ -0,0 +1,251 @@
import React, { useState, useRef } from 'react';
import { PlusOutlined } from '@ant-design/icons';
import { PageContainer, FooterToolbar } from '@ant-design/pro-layout';
import { Drawer, Row, Col, Modal, Form, Input, Button, InputNumber, TreeSelect, Popconfirm, message } from 'antd';
import ProTable from '@ant-design/pro-table';
import Field from '@ant-design/pro-field';
import { CopyOutlined } from '@ant-design/icons';

import { useIntl, FormattedMessage } from 'umi';
import { getPayTemplatePageList, add, deletepaytemplate, update } from './service';

const PayTemplate = () => {
const actionRef = useRef();
const [currentRow, setCurrentRow] = useState({});
//drawer 显示控制
const [drawerVisible, setDrawerVisible] = useState(false);

//请求详情
const requestPayTemplate = async (fields) => {

var data = {
name: fields.name,
id: fields.id
};
var list = [];
fields.payTemplateOutDtoInfo.forEach(element => {
if (element.payType == 1) {
data.wxappId = element.appId;
data.wxid = element.id;
data.wxKey = element.key;
data.wxpId = element.pId;
data.wxpayType = 1;
data.wxprivateKey = element.privateKey;
data.wxpubLicKey = element.pubLicKey;
} else {
data.zfbappId = element.appId;
data.zfbid = element.id;
data.zfbKey = element.key;
data.zfbpId = element.pId;
data.zfbpayType = 2;
data.zfbprivateKey = element.privateKey;
data.zfbpubLicKey = element.pubLicKey;
}

});
return data;
};


const columns = [
{
title: '主键',
dataIndex: 'id',
tip: '规则名称是唯一的key',
hideInSearch: true,
hideInTable: true,
},
{
title: '名称',
dataIndex: 'name',
valueType: 'textarea',
},
{
title: '操作',
dataIndex: 'option',
valueType: 'option',
width: 300,
render: (_, record) => [
<a
key={record.id}
onClick={async () => {
var data = await requestPayTemplate(record);
setCurrentRow(data);
setDrawerVisible(true);
}} >
修改
</a>,
<Popconfirm
title="确定要删除此配置吗?"
onConfirm={() =>{
var input = [record.id];
deletepaytemplate(input).then((re) => {
if (re.data) {
message.success('删除成功');
actionRef.current.reload();
} else {
message.error('删除失败');
}
});
}}
okText="确定"
cancelText="取消"
>
<a key={record.id} >
删除
</a>
</Popconfirm>


],
},
];
const intl = useIntl();
return (
<PageContainer header={{
title: '',
breadcrumb: {},
}}>
<ProTable
toolBarRender={() => {
return <Button
type="primary"
key="primary1"
onClick={() => {
setCurrentRow({});
setDrawerVisible(true);

}}
>
<PlusOutlined /> 新建
</Button>
}}
headerTitle="支付配置"
actionRef={actionRef}
rowKey="id"
search={{
labelWidth: 120,
}}
request={async (params) => {
var queryData = [];
var total = 0;
await getPayTemplatePageList(JSON.stringify(params)).then((re) => {
queryData = re.data.data;
total = re.data.total;
});
return {
data: queryData,
success: true,
total: total,
};
}}
columns={columns}
pagination={{ defaultPageSize: 10 }}
/>
{/* ------------------------ */}
<Drawer
title="支付配置"
key="1"
placement="right"
size="large"
width="900"
onClose={() => {
setDrawerVisible(false);
}}
visible={drawerVisible}
destroyOnClose
>
<Form
preserve={false}
layout="horizontal"
initialValues={currentRow}
labelCol={{ span: 8 }}
wrapperCol={{ span: 16 }}
onFinish={async (value) => {
if (value.id) {
update(value).then((re) => {
if (re.data) {
message.success('修改成功');
setDrawerVisible(false);
actionRef.current.reload();
} else {
message.error('修改失败');
}
});
} else {
add(value).then((re) => {
if (re.data) {
message.success('添加成功');
setDrawerVisible(false);
actionRef.current.reload();
} else {
message.error('添加失败');
}
});

}
}}
>
<Form.Item name="id" hidden={true}>
<Input />
</Form.Item>
<Form.Item name="name" label="名称" rules={[{ required: true, max: 20 }]}>
<Input placeholder="请输入名称" />
</Form.Item>
<Row>
<Col span={11} >
<h3>微信</h3>
<Form.Item name="wxid" hidden={true}>
<Input />
</Form.Item>
<Form.Item name="wxappId" label="AppId" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入appId" />
</Form.Item>
<Form.Item name="wxpId" tooltip="微信的MCHid" label="MchId" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入MchId" />
</Form.Item>
<Form.Item name="wxKey" tooltip="微信的aAppKey" label="AppKey" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入AppKey" />
</Form.Item>
<Form.Item name="wxpubLicKey" tooltip="证书 " label="证书" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入证书" />
</Form.Item>
<Form.Item name="wxprivateKey" tooltip="密码" label="密码" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入密码" />
</Form.Item>
</Col>
<Col span={2} ></Col>
<Col span={11} >
<h3>支付宝</h3>
<Form.Item name="zfbid" hidden={true}>
<Input />
</Form.Item>
<Form.Item name="zfbappId" label="AppId" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入appId" />
</Form.Item>
<Form.Item name="zfbpId" tooltip="支付宝的Pid" label="PId" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入PId" />
</Form.Item>
<Form.Item name="zfbKey" tooltip="支付宝的pk" label="PK" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入PK" />
</Form.Item>
<Form.Item name="zfbpubLicKey" tooltip="公钥 " label="公钥" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入公钥" />
</Form.Item>
<Form.Item name="zfbprivateKey" tooltip="私钥" label="私钥" rules={[{ required: true, max: 3000 }]}>
<Input placeholder="请输入私钥" />
</Form.Item>
</Col>
</Row>
<Form.Item>
<Button type="primary" htmlType="submit">
保存
</Button>
</Form.Item>
</Form>
</Drawer>
</PageContainer>
);
};

export default PayTemplate;

+ 29
- 0
src/pages/groupMeal/applet/appidmanager/payment/service.js Datei anzeigen

@@ -0,0 +1,29 @@
import { request } from 'umi';

export function getPayTemplatePageList(data) {
return request(`/groupmeal/api/paytemplate/getPayTemplatePageList`, {
method: 'post',
data: data,
});
}

export function add(data) {
return request(`/groupmeal/api/paytemplate/add`, {
method: 'post',
data: data,
});
}

export function deletepaytemplate(data) {
return request(`/groupmeal/api/paytemplate/delete`, {
method: 'post',
data: data,
});
}

export function update(data) {
return request(`/groupmeal/api/paytemplate/update`, {
method: 'post',
data: data,
});
}

+ 486
- 0
src/pages/groupMeal/applet/basicconfiguration/index.jsx Datei anzeigen

@@ -0,0 +1,486 @@
import { PlusOutlined } from '@ant-design/icons';
import ProTable from '@ant-design/pro-table';
import { PageContainer } from '@ant-design/pro-layout';
import { Button, Card, Image, Select, message, Modal, Input, Upload, Popconfirm } from 'antd';
import React, { useRef, useState } from 'react';
import appletAPI from "../service";
import { useEffect } from 'react';
import styles from "./index.less";
import axios from 'axios';

const getBase64 = (file) =>
new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = (error) => reject(error);
});


const Material = () => {
const actionRef = useRef();
const [selectedStore, setSelectedStore] = useState('');
const [storeList, setStoreList] = useState([]);
const [isModalVisible, setIsModalVisible] = useState(false);
const [currentImage, setCurrentImage] = useState({
id: '',
pageId: '',
materialName: '',
materialCode: '',
materialPath: [],
materialType: 0
});

const [previewVisible, setPreviewVisible] = useState(false);
const [previewImage, setPreviewImage] = useState('');
const [previewTitle, setPreviewTitle] = useState('');
const [fileList, setFileList] = useState([]);

const [miniPageList, setMiniPageList] = useState([]);

const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [total, setTotal] = useState(0);

const handleCancel = () => setPreviewVisible(false);
const handlePreview = async (file) => {
if (!file.url && !file.preview) {
file.preview = await getBase64(file.originFileObj);
}
setPreviewImage(file.url || file.preview);
setPreviewVisible(true);
setPreviewTitle(file.name || file.url.substring(file.url.lastIndexOf('/') + 1));
};

const handleChange = ({ fileList: newFileList }) => {
newFileList.forEach(item => {
item.status = 'done'
});
setFileList(newFileList)
};

const columns = [
{
title: '素材名称',
dataIndex: 'materialName',
ellipsis: true,
},
{
title: '素材编码',
dataIndex: 'materialCode',
ellipsis: true,
},
{
title: '素材图片',
dataIndex: 'materialPath',
render: (_, record) => (
<Image
style={{width: '50%', height: '50%'}}
src={ JSON.parse(record.materialPath)[0]}
fallback="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMIAAADDCAYAAADQvc6UAAABRWlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8LAwSDCIMogwMCcmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsis7PPOq3QdDFcvjV3jOD1boQVTPQrgSkktTgbSf4A4LbmgqISBgTEFyFYuLykAsTuAbJEioKOA7DkgdjqEvQHEToKwj4DVhAQ5A9k3gGyB5IxEoBmML4BsnSQk8XQkNtReEOBxcfXxUQg1Mjc0dyHgXNJBSWpFCYh2zi+oLMpMzyhRcASGUqqCZ16yno6CkYGRAQMDKMwhqj/fAIcloxgHQqxAjIHBEugw5sUIsSQpBobtQPdLciLEVJYzMPBHMDBsayhILEqEO4DxG0txmrERhM29nYGBddr//5/DGRjYNRkY/l7////39v///y4Dmn+LgeHANwDrkl1AuO+pmgAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAwqADAAQAAAABAAAAwwAAAAD9b/HnAAAHlklEQVR4Ae3dP3PTWBSGcbGzM6GCKqlIBRV0dHRJFarQ0eUT8LH4BnRU0NHR0UEFVdIlFRV7TzRksomPY8uykTk/zewQfKw/9znv4yvJynLv4uLiV2dBoDiBf4qP3/ARuCRABEFAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghgg0Aj8i0JO4OzsrPv69Wv+hi2qPHr0qNvf39+iI97soRIh4f3z58/u7du3SXX7Xt7Z2enevHmzfQe+oSN2apSAPj09TSrb+XKI/f379+08+A0cNRE2ANkupk+ACNPvkSPcAAEibACyXUyfABGm3yNHuAECRNgAZLuYPgEirKlHu7u7XdyytGwHAd8jjNyng4OD7vnz51dbPT8/7z58+NB9+/bt6jU/TI+AGWHEnrx48eJ/EsSmHzx40L18+fLyzxF3ZVMjEyDCiEDjMYZZS5wiPXnyZFbJaxMhQIQRGzHvWR7XCyOCXsOmiDAi1HmPMMQjDpbpEiDCiL358eNHurW/5SnWdIBbXiDCiA38/Pnzrce2YyZ4//59F3ePLNMl4PbpiL2J0L979+7yDtHDhw8vtzzvdGnEXdvUigSIsCLAWavHp/+qM0BcXMd/q25n1vF57TYBp0a3mUzilePj4+7k5KSLb6gt6ydAhPUzXnoPR0dHl79WGTNCfBnn1uvSCJdegQhLI1vvCk+fPu2ePXt2tZOYEV6/fn31dz+shwAR1sP1cqvLntbEN9MxA9xcYjsxS1jWR4AIa2Ibzx0tc44fYX/16lV6NDFLXH+YL32jwiACRBiEbf5KcXoTIsQSpzXx4N28Ja4BQoK7rgXiydbHjx/P25TaQAJEGAguWy0+2Q8PD6/Ki4R8EVl+bzBOnZY95fq9rj9zAkTI2SxdidBHqG9+skdw43borCXO/ZcJdraPWdv22uIEiLA4q7nvvCug8WTqzQveOH26fodo7g6uFe/a17W3+nFBAkRYENRdb1vkkz1CH9cPsVy/jrhr27PqMYvENYNlHAIesRiBYwRy0V+8iXP8+/fvX11Mr7L7ECueb/r48eMqm7FuI2BGWDEG8cm+7G3NEOfmdcTQw4h9/55lhm7DekRYKQPZF2ArbXTAyu4kDYB2YxUzwg0gi/41ztHnfQG26HbGel/crVrm7tNY+/1btkOEAZ2M05r4FB7r9GbAIdxaZYrHdOsgJ/wCEQY0J74TmOKnbxxT9n3FgGGWWsVdowHtjt9Nnvf7yQM2aZU/TIAIAxrw6dOnAWtZZcoEnBpNuTuObWMEiLAx1HY0ZQJEmHJ3HNvGCBBhY6jtaMoEiJB0Z29vL6ls58vxPcO8/zfrdo5qvKO+d3Fx8Wu8zf1dW4p/cPzLly/dtv9Ts/EbcvGAHhHyfBIhZ6NSiIBTo0LNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiEC/wGgKKC4YMA4TAAAAABJRU5ErkJggg==">
</Image>
)
},
{
title: '操作',
valueType: 'option',
key: 'option',
render: (_, record) => [
<a onClick={() => onEditMaterial(record)}>
编辑
</a>,
<Popconfirm
title="确定要删除此素材吗?"
onConfirm={() => onDeleteMaterial(record)}
okText="确定"
cancelText="取消"
>
<a href="#">删除</a>
</Popconfirm>
]
},
];

const uploadButton = (
<div>
<PlusOutlined />
<div
style={{
marginTop: 8,
}}
>
Upload
</div>
</div>
);

/**
* 获取店铺列表
*/
const onFetchStoreList = async () => {
const response = await appletAPI.GetAllStore();
if (response.statusCode === 200) {
setStoreList(response.data);
setSelectedStore(response.data[0].id);
} else {
message.error(response.msg || '获取店铺列表失败');
}
}

const uploadProp = {
name: 'file',
showUploadList: true,
multiple: false,
accept: '.png, .jpg, .jpeg, .gif',
// 这里需要指定文件上传的content-type
headers: {
'Content-Type': 'application/octet-stream',
},
customRequest({
action,
file,
headers,
onError,
onProgress,
withCredentials,
}) {
//覆盖action 上传之前获取上传地址
var index = file.name.lastIndexOf(".");
var ext = file.name.substr(index + 1);
let fileData = null;
appletAPI.GetCosRequestURL({ directory: "applet", fileExtension: ext, method: "PUT" }).then((r) => {
action = r.data.allUrl;
const reader = new FileReader();
reader.readAsArrayBuffer(file);
reader.onload = (e) => {
fileData = e.target.result;
axios.put(action, fileData, {
withCredentials,
headers,
onUploadProgress: ({ total, loaded }) => {
onProgress({ percent: Math.round(loaded / total * 100).toFixed(2) }, file);
},
}).then(response => {
if (response.status == 200 || response.statusText == 'OK') {
const tempUploadImage = JSON.parse(JSON.stringify(currentImage));
tempUploadImage.materialPath.push(r.data.seeUrl);
setCurrentImage(tempUploadImage);
message.success('上传成功!');
}
}).catch(onError);
};
});
return {
abort() {
console.log('upload progress is aborted.');
},
};
},
};

/**
* 添加、更新页面素材
*/
const onAddPageMaterial = async () => {
if (!currentImage.pageId) {
message.info('请选择所属页面');
return;
} else if (!currentImage.materialName) {
message.info('请填写素材名称');
return;
} else if (!currentImage.materialCode) {
message.info('请填写素材编码');
return;
} else if (currentImage.materialPath.length === 0) {
message.info('请选择至少上传一张素材图片');
return;
}
const jsonData = {
pageId: currentImage.pageId,
materialName: currentImage.materialName,
materialCode: currentImage.materialCode,
materialPath: JSON.stringify(currentImage.materialPath),
materialType: currentImage?.materialType?.toString()
}
if (currentImage.id) {
jsonData.id = currentImage.id;
const response = await appletAPI.UpdateMiniMaterial(jsonData);
if (response.statusCode === 200) {
message.success('更新成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error('更新失败')
}
} else {
const response = await appletAPI.AddMinimaterial(jsonData);
if (response.statusCode === 200) {
message.success('添加成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error('添加失败')
}
}
}

/**
* 编辑素材
* @param {*} record
*/
const onEditMaterial = (record) => {
const materialPath = JSON.parse(record.materialPath);
const material = {
id: record.id,
pageId: record.pageId,
materialName: record.materialName,
materialCode: record.materialCode,
materialPath: materialPath
}
if (materialPath.length > 1) {
material.materialType = "1";
} else {
material.materialType = "0";
}
const fileList = [];
materialPath.forEach((item, index) => {
fileList.push({
uid: index,
name: item.split('/applet/')[1] || "图片.jpg",
status: 'done',
url: item,
});
});
setFileList(fileList);
setCurrentImage(material);
setIsModalVisible(true);
}

/**
* 删除素材
* @param {*} record
*/
const onDeleteMaterial = async (record) => {
const response = await appletAPI.DeleteMiniMaterial(record.id);
if (response.statusCode === 200) {
actionRef.current.reload();
message.success('删除成功');
} else {
message.error(response.errors || '删除失败');
}
}

/**
* 获取小程序页面
*/
const onFetchMiniPageList = async () => {
const response = await appletAPI.MiniPageList({
current: 1,
pageSize: 999,
storeId: selectedStore
});
if (response.statusCode === 200) {
setMiniPageList(response.data.items);
} else {
message.error(response.errors || '获取页面列表失败')
}
}

const onBeforeCreate = () => {
setFileList([]);
setCurrentImage({
pageId: '',
materialName: '',
materialCode: '',
materialPath: [],
materialType: "0"
});
}

useEffect(() => {
onFetchStoreList();
}, []);

useEffect(() => {
if (!selectedStore) return;
onFetchMiniPageList();
actionRef.current.reload();
}, [selectedStore]);

return <PageContainer header={{
title: '',
breadcrumb: {},
}}>
<Card style={{ marginBottom: '10px' }}>
<div className={styles.table_search_item}>
<div>
当前门店:
</div>
<Select style={{ width: 300 }} value={selectedStore} onChange={(value) => {
setSelectedStore(value);
}}>
{
storeList.map(item => {
return <Option value={item.id} key={item.id}>{item.name}</Option>
})
}
</Select>
</div>
</Card>
<ProTable
search={false}
columns={columns}
actionRef={actionRef}
cardBordered
editable={{
type: 'multiple',
}}
request={async () => {
if (!selectedStore) return;
const jsonData = {
"current": currentPage,
"pageSize": pageSize,
"storeId": selectedStore
}
const response = await appletAPI.MinimaterialListByStore(jsonData);
const pageList = [];
response.data.forEach(item => {
pageList.push(...item.list);
});
return {
data: pageList,
success: true,
total: 10,
}
}}
columnsState={{
persistenceKey: 'pro-table-singe-demos',
persistenceType: 'localStorage',
onChange(value) {
},
}}
rowKey="id"
options={{
setting: {
listsHeight: 400,
},
}}
dateFormatter="string"
headerTitle="图片管理"
toolBarRender={() => [
<Button key="button" icon={<PlusOutlined />} type="primary" onClick={() => { setIsModalVisible(true); onBeforeCreate() }}>
新建
</Button>
]}
/>
<Modal title="编辑素材" visible={isModalVisible} footer={null} onOk={onAddPageMaterial} onCancel={() => setIsModalVisible(false)} bodyStyle={{ padding: '32px 40px 1px 48px',height: '465px'}}>
<div className={styles.edit_image_card}>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
素材名称:
</div>
<div className={styles.edit_image_suffix}>
<Input placeholder='请输入素材名称' value={currentImage.materialName} onChange={value => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialName = value.target.value;
setCurrentImage(tempImg);
}}></Input>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
素材编码:
</div>
<div className={styles.edit_image_suffix}>
<Input placeholder='请输入素材编码' value={currentImage.materialCode} onChange={value => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialCode = value.target.value;
setCurrentImage(tempImg);
}}></Input>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
所属页面:
</div>
<div className={styles.edit_image_suffix}>
<Select placeholder="请选择所在页面" style={{ width: '100%' }} value={currentImage.pageId} onChange={(value) => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.pageId = value;
setCurrentImage(tempImg);
}}>
{
miniPageList.map(item => {
return <Option value={item.id} key={item.id}>{item.pageName}</Option>
})
}
</Select>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
数量:
</div>
<div className={styles.edit_image_suffix}>
<Select placeholder="请选择素材数量" style={{ width: '100%' }} value={currentImage.materialType} onChange={(value) => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialType = value;
setCurrentImage(tempImg);
}}>
<Option value={"0"} >单张</Option>
<Option value={"1"} >多张</Option>
</Select>
</div>
</div>
<Upload
listType="picture-card"
fileList={fileList}
onPreview={handlePreview}
onChange={handleChange}
onRemove={(remove) => {
const findIndex = fileList.findIndex(item => item.uid === remove.uid);
if (findIndex > -1) {
const tempUpload = JSON.parse(JSON.stringify(currentImage));
tempUpload.materialPath.splice(findIndex, 1);
setCurrentImage(tempUpload);
}
}}
{...uploadProp}
>
{
(() => {
if (currentImage.materialType === "0") {
if (fileList.length >= 1) {
return null;
} else {
return uploadButton
}
} else {
return <>{fileList.length >= 9 ? null : uploadButton}</>
}
})()
}
</Upload>
<Button htmlType="button" style={{float:'right',left:10}} onClick={() => setIsModalVisible(false)}>
取消
</Button>
<Button type="primary" htmlType="submit" style={{float:'right'}} onClick={()=> onAddPageMaterial()}>保存</Button>
</div>
</Modal>
<Modal visible={previewVisible} title={previewTitle} footer={null} onCancel={handleCancel}>
<img
alt="example"
style={{
width: '100%',
}}
src={previewImage}
/>
</Modal>
</PageContainer >
}
export default Material;

+ 12
- 0
src/pages/groupMeal/applet/basicconfiguration/index.less Datei anzeigen

@@ -0,0 +1,12 @@
.table_search_item {
display: flex;
align-items: center;
}

.edit_image_item {
margin-bottom: 10px;
}

.edit_image_prev {
margin-bottom: 5px;
}

+ 486
- 0
src/pages/groupMeal/applet/materialmanager/index.jsx Datei anzeigen

@@ -0,0 +1,486 @@
import { PlusOutlined } from '@ant-design/icons';
import ProTable from '@ant-design/pro-table';
import { PageContainer } from '@ant-design/pro-layout';
import { Button, Card, Image, Select, message, Modal, Input, Upload, Popconfirm } from 'antd';
import React, { useRef, useState } from 'react';
import appletAPI from "../service";
import { useEffect } from 'react';
import styles from "./index.less";
import axios from 'axios';

const getBase64 = (file) =>
new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = (error) => reject(error);
});


const Material = () => {
const actionRef = useRef();
const [selectedStore, setSelectedStore] = useState('');
const [storeList, setStoreList] = useState([]);
const [isModalVisible, setIsModalVisible] = useState(false);
const [currentImage, setCurrentImage] = useState({
id: '',
pageId: '',
materialName: '',
materialCode: '',
materialPath: [],
materialType: 0
});

const [previewVisible, setPreviewVisible] = useState(false);
const [previewImage, setPreviewImage] = useState('');
const [previewTitle, setPreviewTitle] = useState('');
const [fileList, setFileList] = useState([]);

const [miniPageList, setMiniPageList] = useState([]);

const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [total, setTotal] = useState(0);

const handleCancel = () => setPreviewVisible(false);
const handlePreview = async (file) => {
if (!file.url && !file.preview) {
file.preview = await getBase64(file.originFileObj);
}
setPreviewImage(file.url || file.preview);
setPreviewVisible(true);
setPreviewTitle(file.name || file.url.substring(file.url.lastIndexOf('/') + 1));
};

const handleChange = ({ fileList: newFileList }) => {
newFileList.forEach(item => {
item.status = 'done'
});
setFileList(newFileList)
};

const columns = [
{
title: '素材名称',
dataIndex: 'materialName',
ellipsis: true,
},
{
title: '素材编码',
dataIndex: 'materialCode',
ellipsis: true,
},
{
title: '素材图片',
dataIndex: 'materialPath',
render: (_, record) => (
<Image
style={{width: '50%', height: '50%'}}
src={JSON.parse(record.materialPath)[0]}
fallback="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMIAAADDCAYAAADQvc6UAAABRWlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8LAwSDCIMogwMCcmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsis7PPOq3QdDFcvjV3jOD1boQVTPQrgSkktTgbSf4A4LbmgqISBgTEFyFYuLykAsTuAbJEioKOA7DkgdjqEvQHEToKwj4DVhAQ5A9k3gGyB5IxEoBmML4BsnSQk8XQkNtReEOBxcfXxUQg1Mjc0dyHgXNJBSWpFCYh2zi+oLMpMzyhRcASGUqqCZ16yno6CkYGRAQMDKMwhqj/fAIcloxgHQqxAjIHBEugw5sUIsSQpBobtQPdLciLEVJYzMPBHMDBsayhILEqEO4DxG0txmrERhM29nYGBddr//5/DGRjYNRkY/l7////39v///y4Dmn+LgeHANwDrkl1AuO+pmgAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAwqADAAQAAAABAAAAwwAAAAD9b/HnAAAHlklEQVR4Ae3dP3PTWBSGcbGzM6GCKqlIBRV0dHRJFarQ0eUT8LH4BnRU0NHR0UEFVdIlFRV7TzRksomPY8uykTk/zewQfKw/9znv4yvJynLv4uLiV2dBoDiBf4qP3/ARuCRABEFAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghgg0Aj8i0JO4OzsrPv69Wv+hi2qPHr0qNvf39+iI97soRIh4f3z58/u7du3SXX7Xt7Z2enevHmzfQe+oSN2apSAPj09TSrb+XKI/f379+08+A0cNRE2ANkupk+ACNPvkSPcAAEibACyXUyfABGm3yNHuAECRNgAZLuYPgEirKlHu7u7XdyytGwHAd8jjNyng4OD7vnz51dbPT8/7z58+NB9+/bt6jU/TI+AGWHEnrx48eJ/EsSmHzx40L18+fLyzxF3ZVMjEyDCiEDjMYZZS5wiPXnyZFbJaxMhQIQRGzHvWR7XCyOCXsOmiDAi1HmPMMQjDpbpEiDCiL358eNHurW/5SnWdIBbXiDCiA38/Pnzrce2YyZ4//59F3ePLNMl4PbpiL2J0L979+7yDtHDhw8vtzzvdGnEXdvUigSIsCLAWavHp/+qM0BcXMd/q25n1vF57TYBp0a3mUzilePj4+7k5KSLb6gt6ydAhPUzXnoPR0dHl79WGTNCfBnn1uvSCJdegQhLI1vvCk+fPu2ePXt2tZOYEV6/fn31dz+shwAR1sP1cqvLntbEN9MxA9xcYjsxS1jWR4AIa2Ibzx0tc44fYX/16lV6NDFLXH+YL32jwiACRBiEbf5KcXoTIsQSpzXx4N28Ja4BQoK7rgXiydbHjx/P25TaQAJEGAguWy0+2Q8PD6/Ki4R8EVl+bzBOnZY95fq9rj9zAkTI2SxdidBHqG9+skdw43borCXO/ZcJdraPWdv22uIEiLA4q7nvvCug8WTqzQveOH26fodo7g6uFe/a17W3+nFBAkRYENRdb1vkkz1CH9cPsVy/jrhr27PqMYvENYNlHAIesRiBYwRy0V+8iXP8+/fvX11Mr7L7ECueb/r48eMqm7FuI2BGWDEG8cm+7G3NEOfmdcTQw4h9/55lhm7DekRYKQPZF2ArbXTAyu4kDYB2YxUzwg0gi/41ztHnfQG26HbGel/crVrm7tNY+/1btkOEAZ2M05r4FB7r9GbAIdxaZYrHdOsgJ/wCEQY0J74TmOKnbxxT9n3FgGGWWsVdowHtjt9Nnvf7yQM2aZU/TIAIAxrw6dOnAWtZZcoEnBpNuTuObWMEiLAx1HY0ZQJEmHJ3HNvGCBBhY6jtaMoEiJB0Z29vL6ls58vxPcO8/zfrdo5qvKO+d3Fx8Wu8zf1dW4p/cPzLly/dtv9Ts/EbcvGAHhHyfBIhZ6NSiIBTo0LNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiEC/wGgKKC4YMA4TAAAAABJRU5ErkJggg==">
</Image>
)
},
{
title: '操作',
valueType: 'option',
key: 'option',
render: (_, record) => [
<a onClick={() => onEditMaterial(record)}>
编辑
</a>,
<Popconfirm
title="确定要删除此素材吗?"
onConfirm={() => onDeleteMaterial(record)}
okText="确定"
cancelText="取消"
>
<a href="#">删除</a>
</Popconfirm>
]
},
];

const uploadButton = (
<div>
<PlusOutlined />
<div
style={{
marginTop: 8,
}}
>
Upload
</div>
</div>
);

/**
* 获取店铺列表
*/
const onFetchStoreList = async () => {
const response = await appletAPI.GetAllStore();
if (response.isSuccess) {
setStoreList(response.data);
setSelectedStore(response.data[0].id);
} else {
message.error(response.msg || '获取店铺列表失败');
}
}

const uploadProp = {
name: 'file',
showUploadList: true,
multiple: false,
accept: '.png, .jpg, .jpeg, .gif',
// 这里需要指定文件上传的content-type
headers: {
'Content-Type': 'application/octet-stream',
},
customRequest({
action,
file,
headers,
onError,
onProgress,
withCredentials,
}) {
//覆盖action 上传之前获取上传地址
var index = file.name.lastIndexOf(".");
var ext = file.name.substr(index + 1);
let fileData = null;
appletAPI.GetCosRequestURL({ directory: "applet", fileExtension: ext, method: "PUT" }).then((r) => {
action = r.allUrl;
const reader = new FileReader();
reader.readAsArrayBuffer(file);
reader.onload = (e) => {
fileData = e.target.result;
axios.put(action, fileData, {
withCredentials,
headers,
onUploadProgress: ({ total, loaded }) => {
onProgress({ percent: Math.round(loaded / total * 100).toFixed(2) }, file);
},
}).then(response => {
if (response.status == 200 || response.statusText == 'OK') {
const tempUploadImage = JSON.parse(JSON.stringify(currentImage));
tempUploadImage.materialPath.push(r.seeUrl);
setCurrentImage(tempUploadImage);
message.success('上传成功!');
}
}).catch(onError);
};
});
return {
abort() {
console.log('upload progress is aborted.');
},
};
},
};

/**
* 添加、更新页面素材
*/
const onAddPageMaterial = async () => {
if (!currentImage.pageId) {
message.info('请选择所属页面');
return;
} else if (!currentImage.materialName) {
message.info('请填写素材名称');
return;
} else if (!currentImage.materialCode) {
message.info('请填写素材编码');
return;
} else if (currentImage.materialPath.length === 0) {
message.info('请选择至少上传一张素材图片');
return;
}
const jsonData = {
pageId: currentImage.pageId,
materialName: currentImage.materialName,
materialCode: currentImage.materialCode,
materialPath: JSON.stringify(currentImage.materialPath),
materialType: currentImage.materialType
}
if (currentImage.id) {
jsonData.id = currentImage.id;
const response = await appletAPI.UpdateMiniMaterial(jsonData);
if (response.statusCode === 200) {
message.success('更新成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error('更新失败')
}
} else {
const response = await appletAPI.AddMinimaterial(jsonData);
if (response.statusCode === 200) {
message.success('添加成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error('添加失败')
}
}
}

/**
* 编辑素材
* @param {*} record
*/
const onEditMaterial = (record) => {
const materialPath = JSON.parse(record.materialPath);
const material = {
id: record.id,
pageId: record.pageId,
materialName: record.materialName,
materialCode: record.materialCode,
materialPath: materialPath
}
if (materialPath.length > 1) {
material.materialType = 1;
} else {
material.materialType = 0;
}
const fileList = [];
materialPath.forEach((item, index) => {
fileList.push({
uid: index,
name: item.split('/applet/')[1] || "图片.jpg",
status: 'done',
url: item,
});
});
setFileList(fileList);
setCurrentImage(material);
setIsModalVisible(true);
}

/**
* 删除素材
* @param {*} record
*/
const onDeleteMaterial = async (record) => {
const response = await appletAPI.DeleteMiniMaterial(record.id);
if (response.statusCode === 200) {
actionRef.current.reload();
message.success('删除成功');
} else {
message.error(response.errors || '删除失败');
}
}

/**
* 获取小程序页面
*/
const onFetchMiniPageList = async () => {
const response = await appletAPI.MiniPageList({
current: 1,
pageSize: 999,
storeId: selectedStore
});
if (response.statusCode === 200) {
setMiniPageList(response.data.items);
} else {
message.error(response.errors || '获取页面列表失败')
}
}

const onBeforeCreate = () => {
setFileList([]);
setCurrentImage({
pageId: '',
materialName: '',
materialCode: '',
materialPath: [],
materialType: 0
});
}

useEffect(() => {
onFetchStoreList();
}, []);

useEffect(() => {
if (!selectedStore) return;
onFetchMiniPageList();
actionRef.current.reload();
}, [selectedStore]);

return <PageContainer>
<Card style={{ marginBottom: '10px' }}>
<div className={styles.table_search_item}>
<div>
当前门店:
</div>
<Select style={{ width: 300 }} value={selectedStore} onChange={(value) => {
setSelectedStore(value);
}}>
{
storeList.map(item => {
return <Option value={item.id} key={item.id}>{item.store_Name}</Option>
})
}
</Select>
</div>
</Card>
<ProTable
search={false}
columns={columns}
actionRef={actionRef}
cardBordered
editable={{
type: 'multiple',
}}
request={async () => {
if (!selectedStore) return;
const jsonData = {
"current": currentPage,
"pageSize": pageSize,
"storeId": selectedStore
}
const response = await appletAPI.MinimaterialListByStore(jsonData);
const pageList = [];
response.data.forEach(item => {
pageList.push(...item.list);
});
return {
data: pageList,
success: true,
total: 10,
}
}}
columnsState={{
persistenceKey: 'pro-table-singe-demos',
persistenceType: 'localStorage',
onChange(value) {
},
}}
rowKey="id"
options={{
setting: {
listsHeight: 400,
},
}}
pagination={{
pageSize: 5,
onChange: (page) => console.log(page),
}}
dateFormatter="string"
headerTitle="图片管理"
toolBarRender={() => [
<Button key="button" icon={<PlusOutlined />} type="primary" onClick={() => { setIsModalVisible(true); onBeforeCreate() }}>
新建
</Button>
]}
/>
<Modal title="编辑素材" visible={isModalVisible} footer={null} onOk={onAddPageMaterial} onCancel={() => setIsModalVisible(false)} bodyStyle={{ padding: '32px 40px 1px 48px',height: '465px'}}>
<div className={styles.edit_image_card}>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
素材名称:
</div>
<div className={styles.edit_image_suffix}>
<Input placeholder='请输入素材名称' value={currentImage.materialName} onChange={value => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialName = value.target.value;
setCurrentImage(tempImg);
}}></Input>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
素材编码:
</div>
<div className={styles.edit_image_suffix}>
<Input placeholder='请输入素材编码' value={currentImage.materialCode} onChange={value => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialCode = value.target.value;
setCurrentImage(tempImg);
}}></Input>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
所属页面:
</div>
<div className={styles.edit_image_suffix}>
<Select placeholder="请选择所在页面" style={{ width: '100%' }} value={currentImage.pageId} onChange={(value) => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.pageId = value;
setCurrentImage(tempImg);
}}>
{
miniPageList.map(item => {
return <Option value={item.id} key={item.id}>{item.pageName}</Option>
})
}
</Select>
</div>
</div>
<div className={styles.edit_image_item}>
<div className={styles.edit_image_prev}>
数量:
</div>
<div className={styles.edit_image_suffix}>
<Select placeholder="请选择素材数量" style={{ width: '100%' }} value={currentImage.materialType} onChange={(value) => {
const tempImg = JSON.parse(JSON.stringify(currentImage));
tempImg.materialType = value;
setCurrentImage(tempImg);
}}>
<Option value={0} key={0}>单张</Option>
<Option value={1} key={1}>多张</Option>
</Select>
</div>
</div>
<Upload
listType="picture-card"
fileList={fileList}
onPreview={handlePreview}
onChange={handleChange}
onRemove={(remove) => {
const findIndex = fileList.findIndex(item => item.uid === remove.uid);
if (findIndex > -1) {
const tempUpload = JSON.parse(JSON.stringify(currentImage));
tempUpload.materialPath.splice(findIndex, 1);
setCurrentImage(tempUpload);
}
}}
{...uploadProp}
>
{
(() => {
if (currentImage.materialType === 0) {
if (fileList.length >= 1) {
return null;
} else {
return uploadButton
}
} else {
return <>{fileList.length >= 9 ? null : uploadButton}</>
}
})()
}
</Upload>
<Button htmlType="button" style={{float:'right',left:10}} onClick={() => setIsModalVisible(false)}>
取消
</Button>
<Button type="primary" htmlType="submit" style={{float:'right'}} onClick={()=> onAddPageMaterial()}>保存</Button>
</div>
</Modal>
<Modal visible={previewVisible} title={previewTitle} footer={null} onCancel={handleCancel}>
<img
alt="example"
style={{
width: '100%',
}}
src={previewImage}
/>
</Modal>
</PageContainer >
}
export default Material;

+ 12
- 0
src/pages/groupMeal/applet/materialmanager/index.less Datei anzeigen

@@ -0,0 +1,12 @@
.table_search_item {
display: flex;
align-items: center;
}

.edit_image_item {
margin-bottom: 10px;
}

.edit_image_prev {
margin-bottom: 5px;
}

+ 246
- 0
src/pages/groupMeal/applet/pagemanager/index.jsx Datei anzeigen

@@ -0,0 +1,246 @@
import ProTable from '@ant-design/pro-table';
import { PageContainer } from '@ant-design/pro-layout';
import { PlusOutlined } from '@ant-design/icons';
import { Button, Modal, Form, Input, Select, Card, message, Popconfirm } from 'antd';
import React, { useRef, useState, useEffect } from 'react';
import appletAPI from "../service";
import styles from "./index.less";

const pageManage = () => {
const actionRef = useRef();
const [isModalVisible, setIsModalVisible] = useState(false);
const [pageForm] = Form.useForm();
const [storeList, setStoreList] = useState([]);
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [total, setTotal] = useState(0);
const [selectedStore, setSelectedStore] = useState('');

const columns = [
{
title: '页面名称',
dataIndex: 'pageName',
ellipsis: true,
},
{
title: '页面路径',
dataIndex: 'pageRoute',
ellipsis: true,
},
{
title: '所属门店',
dataIndex: 'storeId',
ellipsis: true,
},
{
title: '操作',
valueType: 'option',
key: 'option',
render: (_, record) => [
<a onClick={() => {
pageForm.setFieldsValue(record);
setIsModalVisible(true);
}}>
编辑
</a>,
<Popconfirm
title="确定要删除此页面吗?"
onConfirm={() => onDeletePage(record)}
okText="确定"
cancelText="取消"
>
<a href="#">删除</a>
</Popconfirm>
],
}
];

const onBeforeCreate = () => {
setIsModalVisible(true);
pageForm.resetFields();
}

/**
* 添加/修改页面信息
*/
const onFinishPage = async (values) => {
if (values.id) {
const response = await appletAPI.MiniPageUpdate(values);
if (response.statusCode === 200) {
message.success('修改成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error(response.errors);
}
} else {
const response = await appletAPI.MiniPageAdd(values);
if (response.statusCode === 200) {
message.success('添加成功');
setIsModalVisible(false);
actionRef.current.reload();
} else {
message.error(response.errors);
}
}
}

/**
* 删除页面
* @param {*} record
*/
const onDeletePage = async (record) => {
const response = await appletAPI.MiniPageDelete(record.id);
if (response.statusCode === 200) {
message.success('删除成功');
actionRef.current.reload();
} else {
message.error(response.errors);
}
}

/**
* 获取店铺列表
*/
const onFetchStoreList = async () => {
const response = await appletAPI.GetAllStore();
if (response.statusCode==200) {
setStoreList(response.data);
setSelectedStore(response.data[0].id);
} else {
message.error(response.msg || '获取店铺列表失败');
}
}

useEffect(() => {
onFetchStoreList();
}, []);

useEffect(() => {
actionRef.current.reload();
}, [selectedStore]);

return <PageContainer>
<Card style={{ marginBottom: '10px' }}>
<div className={styles.table_search_item}>
<div>
归属场景:
</div>
<Select style={{ width: 300 }} value={selectedStore} onChange={(value) => {
setSelectedStore(value);
}}>
{
storeList.map(item => {
return <Option value={item.id} key={item.id}>{item.name}</Option>
})
}
</Select>
</div>
</Card>
<ProTable
columns={columns}
actionRef={actionRef}
cardBordered
editable={{
type: 'multiple',
}}
request={async () => {
if (!selectedStore) return;
const jsonData = {
"current": currentPage,
"pageSize": pageSize,
"storeId": selectedStore
}
const response = await appletAPI.MiniPageList(jsonData);
return {
data: response.data.items,
success: true,
total: response.data.totalCount,
}
}}
rowKey="id"
search={false}
pagination={{
pageSize: 5,
onChange: (page) => console.log(page),
}}
dateFormatter="string"
headerTitle="页面管理"
toolBarRender={() => [
<Button key="button" icon={<PlusOutlined />} type="primary" onClick={onBeforeCreate}>
新建
</Button>
]}
/>
<Modal title="编辑页面" footer={false} visible={isModalVisible} onOk={() => setIsModalVisible(false)} onCancel={() => setIsModalVisible(false)} bodyStyle={{ padding: '32px 40px 1px 48px' }}>
<Form
name="basic"
form={pageForm}
onFinish={onFinishPage}
>
<Form.Item
name="id"
hidden={true}
>
<Input />
</Form.Item>
<Form.Item
label="页面名称"
name="pageName"
rules={[
{
required: true,
message: '请输入页面名称!',
},
]}
>
<Input />
</Form.Item>

<Form.Item
label="页面路径"
name="pageRoute"
rules={[
{
required: true,
message: '请输入页面路径!',
},
]}
>
<Input />
</Form.Item>

<Form.Item
label="所属门店"
name="storeId"
rules={[
{
required: true,
message: '请选择门店!',
},
]}
>
<Select allowClear placeholder="请选择门店" style={{ width: '100%' }}>
{
storeList.map(item => {
return <Option value={item.id} key={item.id}>{item.store_Name}</Option>
})
}
</Select>
</Form.Item>

<Form.Item>
<Button htmlType="button" style={{float:'right',left:10}} onClick={() => setIsModalVisible(false)}>
取消
</Button>
<Button type="primary" htmlType="submit" style={{float:'right'}} >
保存
</Button>
</Form.Item>
</Form>
</Modal>
</PageContainer>
}

export default pageManage;

+ 12
- 0
src/pages/groupMeal/applet/pagemanager/index.less Datei anzeigen

@@ -0,0 +1,12 @@
.table_search_item {
display: flex;
align-items: center;
}

.edit_image_item {
margin-bottom: 10px;
}

.edit_image_prev {
margin-bottom: 5px;
}

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.

Laden…
Abbrechen
Speichern