This commit is contained in:
PC-202306242200\Administrator
2024-10-23 18:27:30 +08:00
parent 87631d5079
commit fdd7e33fbe
29 changed files with 284 additions and 113 deletions

View File

@@ -84,9 +84,9 @@ export default defineConfig({
}, },
define: { define: {
'process.env': { 'process.env': {
API_URL: "https://iadminapi.zhongshuai2023.com", // API_URL: "https://iadminapi.zhongshuai2023.com",
// API_URL: "http://192.168.1.63:1002", // API_URL: "http://192.168.1.63:1002",
// API_URL: "http://192.168.1.54:1002", API_URL: "http://192.168.1.54:1002",
WS_URL: "ws://lv.com", WS_URL: "ws://lv.com",
STATIC_URL: "http://lv.com", STATIC_URL: "http://lv.com",
WEMAP_KEY: 'ZFDBZ-YUTWB-353UZ-NYKEY-JTVIZ-Q3F6X' WEMAP_KEY: 'ZFDBZ-YUTWB-353UZ-NYKEY-JTVIZ-Q3F6X'

10
dist/193.a9a204fa.async.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
"use strict";(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[6709],{49091:function(de,A,i){var l=i(35361),x=i(11642),E=i(73356),B=i(56929),O=i(959),H=i(50925),F=i(41268),w=i(50159),v=i(50959),X=i(50756),T=i(11527),c=["rules","name","phoneName","fieldProps","onTiming","captchaTextRender","captchaProps"],y=v.forwardRef(function(C,j){var G=H.Z.useFormInstance(),k=(0,v.useState)(C.countDown||60),ee=(0,O.Z)(k,2),K=ee[0],re=ee[1],te=(0,v.useState)(!1),Q=(0,O.Z)(te,2),I=Q[0],P=Q[1],J=(0,v.useState)(),Y=(0,O.Z)(J,2),oe=Y[0],D=Y[1],le=C.rules,r=C.name,d=C.phoneName,g=C.fieldProps,s=C.onTiming,e=C.captchaTextRender,o=e===void 0?function(u,m){return u?"".concat(m," \u79D2\u540E\u91CD\u65B0\u83B7\u53D6"):"\u83B7\u53D6\u9A8C\u8BC1\u7801"}:e,t=C.captchaProps,a=(0,B.Z)(C,c),n=function(){var u=(0,E.Z)((0,x.Z)().mark(function m(h){return(0,x.Z)().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,D(!0),b.next=4,a.onGetCaptcha(h);case 4:D(!1),P(!0),b.next=13;break;case 8:b.prev=8,b.t0=b.catch(0),P(!1),D(!1),console.log(b.t0);case 13:case"end":return b.stop()}},m,null,[[0,8]])}));return function(h){return u.apply(this,arguments)}}();return(0,v.useImperativeHandle)(j,function(){return{startTiming:function(){return P(!0)},endTiming:function(){return P(!1)}}}),(0,v.useEffect)(function(){var u=0,m=C.countDown;return I&&(u=window.setInterval(function(){re(function(h){return h<=1?(P(!1),clearInterval(u),m||60):h-1})},1e3)),function(){return clearInterval(u)}},[I]),(0,v.useEffect)(function(){s&&s(K)},[K,s]),(0,T.jsxs)("div",{style:(0,l.Z)((0,l.Z)({},g==null?void 0:g.style),{},{display:"flex",alignItems:"center"}),ref:j,children:[(0,T.jsx)(F.Z,(0,l.Z)((0,l.Z)({},g),{},{style:(0,l.Z)({flex:1,transition:"width .3s",marginRight:8},g==null?void 0:g.style)})),(0,T.jsx)(w.ZP,(0,l.Z)((0,l.Z)({style:{display:"block"},disabled:I,loading:oe},t),{},{onClick:(0,E.Z)((0,x.Z)().mark(function u(){var m;return(0,x.Z)().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(f.prev=0,!d){f.next=9;break}return f.next=4,G.validateFields([d].flat(1));case 4:return m=G.getFieldValue([d].flat(1)),f.next=7,n(m);case 7:f.next=11;break;case 9:return f.next=11,n("");case 11:f.next=16;break;case 13:f.prev=13,f.t0=f.catch(0),console.log(f.t0);case 16:case"end":return f.stop()}},u,null,[[0,13]])})),children:o(I,K)}))]})}),q=(0,X.G)(y);A.Z=q},20902:function(de,A,i){var l=i(35361),x=i(56929),E=i(50959),B=i(20734),O=i(11527),H=["fieldProps","proFieldProps"],F=function(v,X){var T=v.fieldProps,c=v.proFieldProps,y=(0,x.Z)(v,H);return(0,O.jsx)(B.Z,(0,l.Z)({ref:X,valueType:"textarea",fieldProps:T,proFieldProps:c},y))};A.Z=E.forwardRef(F)},23885:function(de,A,i){i.d(A,{Z:function(){return s}});var l=i(50959),x=i(82187),E=i.n(x),B=i(8146),O=i(76144),H=i(15676),F=i(39910),w=i(70939),v=function(e,o){var t={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&o.indexOf(a)<0&&(t[a]=e[a]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(e);n<a.length;n++)o.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(t[a[n]]=e[a[n]]);return t},T=e=>{var{prefixCls:o,className:t,hoverable:a=!0}=e,n=v(e,["prefixCls","className","hoverable"]);const{getPrefixCls:u}=l.useContext(O.E_),m=u("card",o),h=E()(`${m}-grid`,t,{[`${m}-grid-hoverable`]:a});return l.createElement("div",Object.assign({},n,{className:h}))},c=i(601),y=i(54531),q=i(79349),C=i(56352);const j=e=>{const{antCls:o,componentCls:t,headerHeight:a,cardPaddingBase:n,tabsMarginBottom:u}=e;return Object.assign(Object.assign({display:"flex",justifyContent:"center",flexDirection:"column",minHeight:a,marginBottom:-1,padding:`0 ${(0,c.bf)(n)}`,color:e.colorTextHeading,fontWeight:e.fontWeightStrong,fontSize:e.headerFontSize,background:e.headerBg,borderBottom:`${(0,c.bf)(e.lineWidth)} ${e.lineType} ${e.colorBorderSecondary}`,borderRadius:`${(0,c.bf)(e.borderRadiusLG)} ${(0,c.bf)(e.borderRadiusLG)} 0 0`},(0,y.dF)()),{"&-wrapper":{width:"100%",display:"flex",alignItems:"center"},"&-title":Object.assign(Object.assign({display:"inline-block",flex:1},y.vS),{[` "use strict";(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[6709,193],{49091:function(de,A,i){var l=i(35361),x=i(11642),E=i(73356),B=i(56929),O=i(959),H=i(50925),F=i(41268),w=i(50159),v=i(50959),X=i(50756),T=i(11527),c=["rules","name","phoneName","fieldProps","onTiming","captchaTextRender","captchaProps"],y=v.forwardRef(function(C,j){var G=H.Z.useFormInstance(),k=(0,v.useState)(C.countDown||60),ee=(0,O.Z)(k,2),K=ee[0],re=ee[1],te=(0,v.useState)(!1),Q=(0,O.Z)(te,2),I=Q[0],P=Q[1],J=(0,v.useState)(),Y=(0,O.Z)(J,2),oe=Y[0],D=Y[1],le=C.rules,r=C.name,d=C.phoneName,g=C.fieldProps,s=C.onTiming,e=C.captchaTextRender,o=e===void 0?function(u,m){return u?"".concat(m," \u79D2\u540E\u91CD\u65B0\u83B7\u53D6"):"\u83B7\u53D6\u9A8C\u8BC1\u7801"}:e,t=C.captchaProps,a=(0,B.Z)(C,c),n=function(){var u=(0,E.Z)((0,x.Z)().mark(function m(h){return(0,x.Z)().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,D(!0),b.next=4,a.onGetCaptcha(h);case 4:D(!1),P(!0),b.next=13;break;case 8:b.prev=8,b.t0=b.catch(0),P(!1),D(!1),console.log(b.t0);case 13:case"end":return b.stop()}},m,null,[[0,8]])}));return function(h){return u.apply(this,arguments)}}();return(0,v.useImperativeHandle)(j,function(){return{startTiming:function(){return P(!0)},endTiming:function(){return P(!1)}}}),(0,v.useEffect)(function(){var u=0,m=C.countDown;return I&&(u=window.setInterval(function(){re(function(h){return h<=1?(P(!1),clearInterval(u),m||60):h-1})},1e3)),function(){return clearInterval(u)}},[I]),(0,v.useEffect)(function(){s&&s(K)},[K,s]),(0,T.jsxs)("div",{style:(0,l.Z)((0,l.Z)({},g==null?void 0:g.style),{},{display:"flex",alignItems:"center"}),ref:j,children:[(0,T.jsx)(F.Z,(0,l.Z)((0,l.Z)({},g),{},{style:(0,l.Z)({flex:1,transition:"width .3s",marginRight:8},g==null?void 0:g.style)})),(0,T.jsx)(w.ZP,(0,l.Z)((0,l.Z)({style:{display:"block"},disabled:I,loading:oe},t),{},{onClick:(0,E.Z)((0,x.Z)().mark(function u(){var m;return(0,x.Z)().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(f.prev=0,!d){f.next=9;break}return f.next=4,G.validateFields([d].flat(1));case 4:return m=G.getFieldValue([d].flat(1)),f.next=7,n(m);case 7:f.next=11;break;case 9:return f.next=11,n("");case 11:f.next=16;break;case 13:f.prev=13,f.t0=f.catch(0),console.log(f.t0);case 16:case"end":return f.stop()}},u,null,[[0,13]])})),children:o(I,K)}))]})}),q=(0,X.G)(y);A.Z=q},20902:function(de,A,i){var l=i(35361),x=i(56929),E=i(50959),B=i(20734),O=i(11527),H=["fieldProps","proFieldProps"],F=function(v,X){var T=v.fieldProps,c=v.proFieldProps,y=(0,x.Z)(v,H);return(0,O.jsx)(B.Z,(0,l.Z)({ref:X,valueType:"textarea",fieldProps:T,proFieldProps:c},y))};A.Z=E.forwardRef(F)},23885:function(de,A,i){i.d(A,{Z:function(){return s}});var l=i(50959),x=i(82187),E=i.n(x),B=i(8146),O=i(76144),H=i(15676),F=i(39910),w=i(70939),v=function(e,o){var t={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&o.indexOf(a)<0&&(t[a]=e[a]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(e);n<a.length;n++)o.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(t[a[n]]=e[a[n]]);return t},T=e=>{var{prefixCls:o,className:t,hoverable:a=!0}=e,n=v(e,["prefixCls","className","hoverable"]);const{getPrefixCls:u}=l.useContext(O.E_),m=u("card",o),h=E()(`${m}-grid`,t,{[`${m}-grid-hoverable`]:a});return l.createElement("div",Object.assign({},n,{className:h}))},c=i(601),y=i(54531),q=i(79349),C=i(56352);const j=e=>{const{antCls:o,componentCls:t,headerHeight:a,cardPaddingBase:n,tabsMarginBottom:u}=e;return Object.assign(Object.assign({display:"flex",justifyContent:"center",flexDirection:"column",minHeight:a,marginBottom:-1,padding:`0 ${(0,c.bf)(n)}`,color:e.colorTextHeading,fontWeight:e.fontWeightStrong,fontSize:e.headerFontSize,background:e.headerBg,borderBottom:`${(0,c.bf)(e.lineWidth)} ${e.lineType} ${e.colorBorderSecondary}`,borderRadius:`${(0,c.bf)(e.borderRadiusLG)} ${(0,c.bf)(e.borderRadiusLG)} 0 0`},(0,y.dF)()),{"&-wrapper":{width:"100%",display:"flex",alignItems:"center"},"&-title":Object.assign(Object.assign({display:"inline-block",flex:1},y.vS),{[`
> ${t}-typography, > ${t}-typography,
> ${t}-typography-edit-content > ${t}-typography-edit-content
`]:{insetInlineStart:0,marginTop:0,marginBottom:0}}),[`${o}-tabs-top`]:{clear:"both",marginBottom:u,color:e.colorText,fontWeight:"normal",fontSize:e.fontSize,"&-bar":{borderBottom:`${(0,c.bf)(e.lineWidth)} ${e.lineType} ${e.colorBorderSecondary}`}}})},G=e=>{const{cardPaddingBase:o,colorBorderSecondary:t,cardShadow:a,lineWidth:n}=e;return{width:"33.33%",padding:o,border:0,borderRadius:0,boxShadow:` `]:{insetInlineStart:0,marginTop:0,marginBottom:0}}),[`${o}-tabs-top`]:{clear:"both",marginBottom:u,color:e.colorText,fontWeight:"normal",fontSize:e.fontSize,"&-bar":{borderBottom:`${(0,c.bf)(e.lineWidth)} ${e.lineType} ${e.colorBorderSecondary}`}}})},G=e=>{const{cardPaddingBase:o,colorBorderSecondary:t,cardShadow:a,lineWidth:n}=e;return{width:"33.33%",padding:o,border:0,borderRadius:0,boxShadow:`

4
dist/index.html vendored
View File

@@ -3,11 +3,11 @@
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge"> <meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>广东星动</title> <title>广东星动</title>
<link rel="stylesheet" href="/umi.7b0758b1.css"> <link rel="stylesheet" href="/umi.332f7838.css">
<script async="" src="/scripts/loading.js"></script> <script async="" src="/scripts/loading.js"></script>
</head> </head>
<body> <body>
<div id="root"></div> <div id="root"></div>
<script src="/umi.0ff77be7.js"></script> <script src="/umi.a1ab328c.js"></script>
</body></html> </body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
"use strict";(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[6660],{25387:function(M,f,n){n.r(f);var D=n(90228),r=n.n(D),E=n(87999),u=n.n(E),d=n(48305),h=n.n(d),o=n(57571),l=n(50959),m=n(94675),v=n(35384),t=n(11527);f.default=function(p){var s=p.values,_=p.modalOpenState,a=p.onModalOpenState,c=(0,l.useState)(null),e=h()(c,2),R=e[0],U=e[1],j=(0,l.useState)(null),y=h()(j,2),K=y[0],L=y[1],O=(0,l.useRef)();(0,l.useEffect)(function(){O.current&&O.current.reload()},[s]);var I=[{title:"\u7528\u6237ID",dataIndex:"userId",search:!1},{title:"\u8BBE\u5907ID",dataIndex:"deviceId",search:!1},{title:"\u5206\u8D26\u65E5\u671F",dataIndex:"incomeDate",search:!1},{title:"\u521B\u5EFA\u65F6\u95F4",dataIndex:"createTime",search:!1}];return(0,t.jsx)(t.Fragment,{children:(0,t.jsx)(m.Z,{width:"800px",title:"\u6536\u76CA\u5217\u8868",open:_,onOk:function(){a(!1)},onCancel:function(){a(!1)},children:(0,t.jsx)(t.Fragment,{children:(0,t.jsx)(v.Z,{actionRef:O,rowKey:"id",search:{labelWidth:120},request:function(){var P=u()(r()().mark(function b(A,C,W){var g,T;return r()().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,(0,o.TY)({id:s==null?void 0:s.userId});case 2:return g=i.sent,T=g.data,i.abrupt("return",{data:T||[],total:T.length});case 5:case"end":return i.stop()}},b)}));return function(b,A,C){return P.apply(this,arguments)}}(),columns:I},"logList")})})})}},57571:function(M,f,n){n.d(f,{Lb:function(){return h},TY:function(){return v},zK:function(){return p}});var D=n(90228),r=n.n(D),E=n(87999),u=n.n(E),d=n(7485);function h(_){return o.apply(this,arguments)}function o(){return o=u()(r()().mark(function _(a){return r()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,d.request)("/api/device/page",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:a||{}}));case 1:case"end":return e.stop()}},_)})),o.apply(this,arguments)}function l(_){return m.apply(this,arguments)}function m(){return m=_asyncToGenerator(_regeneratorRuntime().mark(function _(a){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",request("/api/device/incomeday/page",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:a||{}}));case 1:case"end":return e.stop()}},_)})),m.apply(this,arguments)}function v(_){return t.apply(this,arguments)}function t(){return t=u()(r()().mark(function _(a){return r()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,d.request)("/api/device/getDeviceInfoVO",{method:"GET",headers:{"Content-Type":"application/json;charset=UTF-8"},params:a}));case 1:case"end":return e.stop()}},_)})),t.apply(this,arguments)}function p(_){return s.apply(this,arguments)}function s(){return s=u()(r()().mark(function _(a){return r()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,d.request)("/api/device/importDeviceData ",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:a||{}}));case 1:case"end":return e.stop()}},_)})),s.apply(this,arguments)}}}]);

View File

@@ -0,0 +1 @@
"use strict";(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[6660],{25387:function(I,D,n){n.r(D);var E=n(90228),a=n.n(E),O=n(87999),i=n.n(O),u=n(48305),v=n.n(u),m=n(57571),c=n(50959),h=n(94675),y=n(35384),_=n(11527);D.default=function(f){var s=f.values,T=f.modalOpenState,l=f.onModalOpenState,g=(0,c.useState)(null),d=v()(g,2),t=d[0],r=d[1],o=(0,c.useState)(null),e=v()(o,2),K=e[0],L=e[1],P=(0,c.useRef)();(0,c.useEffect)(function(){P.current&&P.current.reload()},[s]);var C=[{title:"\u7528\u6237ID",dataIndex:"userId",search:!1},{title:"\u8BBE\u5907ID",dataIndex:"deviceId",search:!1},{title:"\u5206\u8D26\u65E5\u671F",dataIndex:"incomeDate",search:!1},{title:"\u521B\u5EFA\u65F6\u95F4",dataIndex:"createTime",search:!1}];return(0,_.jsx)(_.Fragment,{children:(0,_.jsx)(h.Z,{width:"800px",title:"\u6536\u76CA\u5217\u8868",open:T,onOk:function(){l(!1)},onCancel:function(){l(!1)},children:(0,_.jsx)(_.Fragment,{children:(0,_.jsx)(y.Z,{actionRef:P,rowKey:"id",search:{labelWidth:120},request:function(){var b=i()(a()().mark(function j(R,U,x){var A,M;return a()().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,(0,m.TY)({id:s==null?void 0:s.userId});case 2:return A=p.sent,M=A.data,p.abrupt("return",{data:M||[],total:M.length});case 5:case"end":return p.stop()}},j)}));return function(j,R,U){return b.apply(this,arguments)}}(),columns:C},"logList")})})})}},57571:function(I,D,n){n.d(D,{Lb:function(){return v},S$:function(){return T},TY:function(){return y},Xt:function(){return g},zK:function(){return f}});var E=n(90228),a=n.n(E),O=n(87999),i=n.n(O),u=n(7485);function v(t){return m.apply(this,arguments)}function m(){return m=i()(a()().mark(function t(r){return a()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,u.request)("/api/device/page",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:r||{}}));case 1:case"end":return e.stop()}},t)})),m.apply(this,arguments)}function c(t){return h.apply(this,arguments)}function h(){return h=_asyncToGenerator(_regeneratorRuntime().mark(function t(r){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",request("/api/device/incomeday/page",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:r||{}}));case 1:case"end":return e.stop()}},t)})),h.apply(this,arguments)}function y(t){return _.apply(this,arguments)}function _(){return _=i()(a()().mark(function t(r){return a()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,u.request)("/api/device/getDeviceInfoVO",{method:"GET",headers:{"Content-Type":"application/json;charset=UTF-8"},params:r}));case 1:case"end":return e.stop()}},t)})),_.apply(this,arguments)}function f(t){return s.apply(this,arguments)}function s(){return s=i()(a()().mark(function t(r){return a()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,u.request)("/api/device/importDeviceData",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:r||{}}));case 1:case"end":return e.stop()}},t)})),s.apply(this,arguments)}function T(t){return l.apply(this,arguments)}function l(){return l=i()(a()().mark(function t(r){return a()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,u.request)("/api/device/getDeviceAnalyze",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:r||{}}));case 1:case"end":return e.stop()}},t)})),l.apply(this,arguments)}function g(t){return d.apply(this,arguments)}function d(){return d=i()(a()().mark(function t(r){return a()().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,u.request)("/api/device/export",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},data:r||{},responseType:"blob"}));case 1:case"end":return e.stop()}},t)})),d.apply(this,arguments)}}}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -236,6 +236,10 @@
height: 0.5rem height: 0.5rem
} }
.h-3\.5 {
height: 0.875rem
}
.h-6 { .h-6 {
height: 1.5rem height: 1.5rem
} }

View File

@@ -1,4 +1,5 @@
[{ [
{
"name": "充值", "name": "充值",
"id": 1100 "id": 1100
}, },
@@ -6,6 +7,10 @@
"name": "后台充值", "name": "后台充值",
"id": 1200 "id": 1200
}, },
{
"name": "增值收益转换",
"id": 1300
},
{ {
"name": "购买商品", "name": "购买商品",
"id": 2100 "id": 2100
@@ -77,5 +82,21 @@
{ {
"name": "提现失败", "name": "提现失败",
"id": 4200 "id": 4200
},
{
"name": "转赠付款",
"id": 5100
},
{
"name": "转赠收款",
"id": 5200
},
{
"name": "转换减少",
"id": 6100
},
{
"name": "转换增加",
"id": 6200
} }
] ]

View File

@@ -87,7 +87,7 @@ const LogTableList: React.FC = () => {
hidden:true hidden:true
}, },
{ {
title: '钱包', title: '增值收益',
dataIndex: 'points2', dataIndex: 'points2',
valueType: 'text', valueType: 'text',
search: false, search: false,

View File

@@ -136,7 +136,7 @@ const LogTableList: React.FC = () => {
search: false, search: false,
}, },
{ {
title: '收益', title: '基础收益',
dataIndex: 'points1', dataIndex: 'points1',
valueType: 'text', valueType: 'text',
search: false, search: false,

View File

@@ -1,8 +1,8 @@
import { devicePage, importDeviceData } from '@/services/piles'; import { devicePage, importDeviceData, getDeviceAnalyze, deviceExport } from '@/services/piles';
import { exportData } from '@/utils/func'; import { exportData } from '@/utils/func';
import React, { useRef, useEffect, useState } from 'react'; import React, { useRef, useEffect, useState } from 'react';
import { useIntl, useAccess } from '@umijs/max'; import { useIntl, useAccess } from '@umijs/max';
import { message, Tag, Image, Button, Select } from 'antd'; import { message, Tag, Image, Button, Select, Row, Col, Card } from 'antd';
import { ActionType, PageContainer, ProTable } from '@ant-design/pro-components'; import { ActionType, PageContainer, ProTable } from '@ant-design/pro-components';
import BonusFormModal from './components/BonusFormModal'; import BonusFormModal from './components/BonusFormModal';
import TempFormModal from './components/TempFormModal'; import TempFormModal from './components/TempFormModal';
@@ -17,6 +17,15 @@ const LogTableList: React.FC = () => {
const [tempFormModal, setTempFormModal] = useState(false); const [tempFormModal, setTempFormModal] = useState(false);
const access = useAccess() const access = useAccess()
const [shopOption, setShopOption] = useState([]); const [shopOption, setShopOption] = useState([]);
const [count, setCountRows] = useState(false);
const countInit = async (params) => {
const { success, data } = await getDeviceAnalyze(params);
if (success) {
setCountRows(data)
}
}
const handleTemp = async (fields) => { const handleTemp = async (fields) => {
@@ -119,11 +128,38 @@ const LogTableList: React.FC = () => {
title: '设备状态', title: '设备状态',
dataIndex: 'deviceStatus', dataIndex: 'deviceStatus',
valueType: 'text', valueType: 'text',
search: false,
render: (_: any, record: any) => { render: (_: any, record: any) => {
let color = record.deviceStatus == 1 ? 'volcano' : record.deviceStatus == 2 ? 'orange' : 'red' let color = record.deviceStatus == 1 ? 'volcano' : record.deviceStatus == 2 ? 'orange' : 'red'
return <Tag color={color}>{record.deviceStatus == 1 ? '已安装' : record.deviceStatus == 2 ? '已运营' : '未安装'}</Tag> return <Tag color={color}>{record.deviceStatus == 1 ? '已安装' : record.deviceStatus == 2 ? '已运营' : '未安装'}</Tag>
}, },
renderFormItem: (
_,
{ type, defaultRender, formItemProps, fieldProps, ...rest },
form,
) => {
return <Select
{...fieldProps}
allowClear
showSearch
placeholder="请输入选择"
style={{ width: "100%" }}
filterOption={false}
fieldNames={{
label: "label",
value: "value"
}}
options={[
{
label: '未安装',
value: '0'
},
{
label: '已安装',
value: '1'
},
]}
/>
},
}, },
{ {
title: '安装站点名称', title: '安装站点名称',
@@ -162,23 +198,93 @@ const LogTableList: React.FC = () => {
title: '分账类型', title: '分账类型',
dataIndex: 'paymentType', dataIndex: 'paymentType',
valueType: 'text', valueType: 'text',
search: false,
render: (_: any, record: any) => { render: (_: any, record: any) => {
let color = record.paymentType == 1 ? 'volcano' : 'red' let color = ['magenta', 'red', 'volcano', 'orange', 'gold']
return <Tag color={color}>{record.paymentType == 1 ? '普通分账' : '分账'}</Tag> let name = ['不分账', '普通分账', '赠送桩', '冻结收益']
return <Tag color={color[record.paymentType]}>{name[record.paymentType]}</Tag>
},
renderFormItem: (
_,
{ type, defaultRender, formItemProps, fieldProps, ...rest },
form,
) => {
return <Select
{...fieldProps}
placeholder="请输入选择"
style={{ width: "100%" }}
fieldNames={{
label: "label",
value: "value"
}}
options={[
{
label: '不分账',
value: '0'
},
{
label: '普通分账',
value: '1'
},
{
label: '赠送桩',
value: '2'
},
{
label: '冻结收益',
value: '3'
}
]}
/>
}, },
}, },
{ {
title: '创建时间', title: '创建时间',
dataIndex: 'createTime', dataIndex: 'createTime',
valueType: 'text', valueType: 'dateRange',
search: false, search: {
transform: (value) => {
return {
createTimeBegin: value[0],
createTimeEnd: value[1],
};
},
},
render: (_: any, record: any) => {
return record.createTime
},
}, },
]; ];
return ( return (
<PageContainer> <PageContainer>
<Row gutter={10}>
<Col span={6}>
<Card>
<div></div>
<div>: {count?.deviceTotal}</div>
</Card>
</Col>
<Col span={6}>
<Card>
<div></div>
<div>: {count?.installedCount}</div>
</Card>
</Col>
<Col span={6}>
<Card>
<div></div>
<div>: {count?.notInstalledCount}</div>
</Card>
</Col>
<Col span={6}>
<Card>
<div></div>
<div>: {count?.expiredCount}</div>
</Card>
</Col>
</Row>
<div className='h-3.5'></div>
<div style={{ width: '100%', float: 'right' }}> <div style={{ width: '100%', float: 'right' }}>
<BonusFormModal <BonusFormModal
values={row} values={row}
@@ -199,12 +305,20 @@ const LogTableList: React.FC = () => {
defaultCollapsed: false, defaultCollapsed: false,
}} }}
toolBarRender={() => [ toolBarRender={() => [
<Button type="primary" onClick={async () => {
let data = JSON.parse(JSON.stringify(searchParams))
delete data.pageSize
delete data.current
let _res = await deviceExport(data)
exportData(_res, '设备记录')
}}></Button>,
<Button hidden={!access.hasPerms('/api/device/importDeviceData')} onClick={async () => { <Button hidden={!access.hasPerms('/api/device/importDeviceData')} onClick={async () => {
setTempFormModal(true) setTempFormModal(true)
}}></Button> }}></Button>
]} ]}
request={async (params, sorter, filter) => { request={async (params, sorter, filter) => {
setSearchParams({ ...params }); setSearchParams({ ...params });
countInit(params)
let { data } = await devicePage(params) let { data } = await devicePage(params)
return { return {
data: data?.records || [], data: data?.records || [],

View File

@@ -51,12 +51,12 @@ export default ({ values, modalOpenState, onModalOpenState }) => {
}, },
}, },
{ {
title: '余额', title: '增值收益',
dataIndex: 'points2', dataIndex: 'points2',
search: false, search: false,
}, },
{ {
title: '收益', title: '基础收益',
dataIndex: 'points1', dataIndex: 'points1',
search: false, search: false,
}, },

View File

@@ -258,13 +258,13 @@ const LogTableList: React.FC = () => {
}, },
}, },
{ {
title: '钱包', title: '增值收益',
dataIndex: 'points2', dataIndex: 'points2',
valueType: 'text', valueType: 'text',
search: false, search: false,
}, },
{ {
title: '收益', title: '基础收益',
dataIndex: 'points1', dataIndex: 'points1',
valueType: 'text', valueType: 'text',
search: false, search: false,

View File

@@ -43,3 +43,25 @@ export async function importDeviceData(body) {
}); });
} }
export async function getDeviceAnalyze(body) {
return request('/api/device/getDeviceAnalyze', {
method: 'POST',
headers: {
'Content-Type': 'application/json;charset=UTF-8',
},
data: body || {},
});
}
export async function deviceExport(body) {
return request('/api/device/export', {
method: 'POST',
headers: {
'Content-Type': 'application/json;charset=UTF-8',
},
data: body || {},
responseType: 'blob'
});
}