stanley-king 2 anni fa
parent
commit
53579c8985

+ 3 - 1
admin/control/refill_successful.php

@@ -1,6 +1,7 @@
 <?php
 include(BASE_CONFIG_PATH . CONFIG_PREFIX . '/refill.ini.php');
 require_once(BASE_ROOT_PATH . '/core/framework/function/http.php');
+
 class refill_successfulControl extends SystemControl
 {
     private $SUCCESSFUL_URL = BASE_SITE_URL;
@@ -19,7 +20,8 @@ class refill_successfulControl extends SystemControl
         Tpl::showpage($page);
     }
 
-    private function successful_where($type) {
+    private function successful_where($type)
+    {
         if ($type == 'system') {
             $url = $this->SUCCESSFUL_URL . '/plot/mchdays';
         } elseif($type == 'provider') {

+ 2 - 2
docker/compose/workcuda/acc/docker-compose.yml

@@ -4,7 +4,7 @@ services:
   nginxsrv:
     image: nginx:alpine
     ports:
-      - "80:80"
+      - 80:80
     volumes:
       - ../../../../:/var/www/html
       - ../conf/etc/localtime:/etc/localtime:ro
@@ -23,7 +23,7 @@ services:
   mobilesrv:
     image: php-zts:7.3.18
     ports:
-      - "9100:9100"
+      - 9100:9100
     volumes:
       - ../../../../:/var/www/html
       - ../conf/etc/localtime:/etc/localtime:ro

+ 3 - 1
docker/compose/workcuda/cli/docker-compose.yml

@@ -40,7 +40,9 @@ services:
     command: ['vender-init']
 
   pythoncli:
-    image: pycpu:3.7.10
+    image: pyflask:3.7.10
+    ports:
+      - 5000:5000
     volumes:
       - /mnt/xyzshop/docker/compose/workcuda/conf/etc/localtime:/etc/localtime:ro
       - /mnt/xyzshop:/var/www/html

+ 1 - 1
docker/compose/workcuda/conf/nginx/nginx.conf

@@ -31,7 +31,7 @@ http
     {
     	listen       80;
         set  $folder_name /var/www/html;
-        server_name 192.168.1.83;
+        server_name 192.168.3.46;
         root $folder_name;
         index index.html index.php; 
 

+ 12 - 0
docker/compose/workcuda/statsec/docker-compose.yml

@@ -1,6 +1,18 @@
 version: "3.7"
 
 services:
+  flasksrv:
+    image: pycpu:3.7.10
+    volumes:
+      - ../../../../:/var/www/html
+      - ../conf/etc/localtime:/etc/localtime:ro
+      - /mnt/shoplog:/var/www/html/data/log
+      - /mnt/stdata:/var/www/html/data/stdata
+    ports:
+      - 5000:5000
+    container_name: "panda-flask"
+    command: ['python','plot_control.py']
+
   qreader:
     image: pycpu:3.7.10
     volumes:

+ 1 - 0
plot/app.py

@@ -28,6 +28,7 @@ curname = __name__
 
 @app.route('/plot/index')
 def index():
+    app.logger.debug('start')
     time_stamp = request.args.get('time_stamp')
     interval = request.args.get('interval')
     chname = request.args.get('chname')

+ 53 - 0
plot/plot_control.py

@@ -0,0 +1,53 @@
+# from gevent import monkey
+# from gevent.pywsgi import WSGIServer
+# from gevent import signal as geventsig
+
+import base64
+from io import BytesIO
+from matplotlib.figure import Figure
+import json
+
+from flask import request, jsonify
+import logging
+import time
+import signal as sig
+import sys, getopt
+
+from refill import ChannelPainter
+from refill import day_stamp
+
+from flask import Flask
+app = Flask(__name__)
+
+logging.basicConfig(filename='/var/www/html/data/log/flask.log',
+                    format='%(levelname)10s  %(asctime)s  %(name)10s %(thread)d %(message)s',
+                    level=logging.DEBUG)
+logger = logging.getLogger('plot')
+
+@app.route('/plot/channelratio')
+def channelratio():
+    try:
+        logger.debug('start chratio')
+        start_time = request.args.get('start_time') or None
+        end_time = request.args.get('end_time') or None
+        interval = request.args.get('interval') or None
+        chnames = request.args.get('chnames') or None
+        card_type = request.args.get('card_type') or None
+        spec = request.args.get('spec') or None
+
+        painter = ChannelPainter(start_time=start_time,end_time=end_time,interval=interval,chnames=chnames,card_type=card_type,spec=spec)
+        data = painter.paint()
+
+        logger.debug('start_time=%s end_time=%s interval= %s chnames=%s quality=%s card_type=%s amount=%s',
+                     start_time, interval, chnames, card_type, spec)
+    except Exception as ex:
+        logger.error(ex)
+    return None
+
+if __name__ == "__main__":
+    app.run(debug=True)
+    # monkey.patch_all()
+    # http_server = WSGIServer(('0.0.0.0', 5000), app)
+    # geventsig.signal(sig.SIGTERM, lambda: http_server.stop())
+    # geventsig.signal(sig.SIGINT, lambda: http_server.stop())
+    # http_server.serve_forever()

+ 10 - 0
plot/refill/ChannelPainter.py

@@ -0,0 +1,10 @@
+from .DataStream import EChPosmap as pos_map
+
+class ChannelPainter(object):
+    default_options = {
+    }
+
+    def __init__(self,**kwargs):
+        pass
+    def paint(self,**kwargs):
+        pass

+ 5 - 2
plot/refill/__init__.py

@@ -1,6 +1,6 @@
 
 from .QueueListener import queueListener
-from .DataStream import DataWriteStream,DataReadStream,open_hdf5
+from .DataStream import DataWriteStream,DataReadStream,open_hdf5,day_stamp
 from .MerchantWriter import MerchantWriter
 from .ChannelWriter import ChannelWriter
 from .NetchkWriter import NetchkWriter
@@ -9,7 +9,10 @@ from .MerchantReader import MerchantReader
 from .NetchkReader import NetchkReader
 from .ChannelReader import ChannelReader
 
+from .ChannelPainter import ChannelPainter
+
 __all__ = ['DataWriteStream', 'DataReadStream',
            'MerchantWriter', 'ChannelWriter','NetchkWriter',
            'MerchantReader','NetchkReader','ChannelReader',
-           'queueListener','open_hdf5']
+           'ChannelPainter',
+           'queueListener','open_hdf5','day_stamp']

+ 19 - 0
plot/testPlot.py

@@ -1,3 +1,4 @@
+import time
 import unittest
 import logging
 
@@ -52,6 +53,24 @@ class MyTestCase(unittest.TestCase):
         from functools import partial
         add_five = partial()
 
+    def test_key(self):
+        def person(name, age, *, city, job):
+            print(name, age, city, job)
+
+        person('Jack', 24, city='Beijing', job='Engineer')
+        person('Jack', 24, 'Beijing', job='Engineer')
+        person('Jack', 24, 'Beijing', 'Engineer')
+
+    def test_kwargs(self):
+        def paint(**kwargs):
+            start_time = kwargs.setdefault('start_time',None)
+
+            pass
+
+        paint(start_time=time.time(),end_time = time.time() + 3600)
+
+
+
 
 if __name__ == '__main__':
     unittest.main()