Browse Source

retail check

xiaoyu 2 years ago
parent
commit
eee6fcb9fc

+ 19 - 1
docker/compose/xiaoyu/admin/docker-compose.yml

@@ -85,4 +85,22 @@ services:
 #      - ../../../../data/upload:/var/www/html/data/upload
 #      - ../../../../data/upload:/var/www/html/data/upload
 #      - ../../../../data/log:/var/www/html/data/log
 #      - ../../../../data/log:/var/www/html/data/log
 #    container_name: "panda-token-refresh"
 #    container_name: "panda-token-refresh"
-#    command: [ php,"/var/www/html/crontab/index.php",'vendor','token_refresh' ]
+#    command: [ php,"/var/www/html/crontab/index.php",'vendor','token_refresh' ]
+
+  vapisrv:
+    image: php-zts:7.3.18
+    ports:
+      - 9103:9103
+    volumes:
+      - ../../../../:/var/www/html
+      - ../conf/etc/localtime:/etc/localtime:ro
+      - ../conf/php/php.ini:/usr/local/etc/php/php.ini
+      - ../../../../data/upload:/var/www/html/data/upload
+      - ../../../../data/log:/var/www/html/data/log
+      - ../conf/php/vapi-spwan-start:/usr/local/bin/docker-spwan-start
+    container_name: "panda-vapi"
+    command: [ 'docker-spwan-start' ]
+    deploy:
+      resources:
+        limits:
+          cpus: '8'

+ 9 - 0
docker/compose/xiaoyu/conf/nginx/nginx.conf

@@ -70,6 +70,15 @@ http
             include fastcgi_params;
             include fastcgi_params;
         }
         }
 
 
+        location ~ /vapi/[/\w]+\.php$ {
+            root           $folder_name;
+            fastcgi_pass   vapisrv:9103;
+            fastcgi_index  index.php;
+            fastcgi_param  SCRIPT_FILENAME  $folder_name$fastcgi_script_name;
+            fastcgi_param  SIGN $http_sign;
+            include fastcgi_params;
+        }
+
         location ~ \.php$ {
         location ~ \.php$ {
 	        add_header Cache-Control no-store;
 	        add_header Cache-Control no-store;
             root           $folder_name;
             root           $folder_name;

+ 11 - 0
docker/compose/xiaoyu/conf/php/vapi-spwan-start

@@ -0,0 +1,11 @@
+#!/bin/sh
+set -e
+spawn-fcgi -a 0.0.0.0 -p 9103 -F 16 -f "php /var/www/html/vapi/vapi.php"
+
+time=$(date "+%Y%m%d")
+
+if [ ! -f "/var/www/html/data/log/${time}-vapi.log" ]; then
+    touch "/var/www/html/data/log/${time}-vapi.log"
+fi
+
+tail -f "/var/www/html/data/log/${time}-vapi.log"

+ 28 - 12
vapi/control/retail.php

@@ -7,31 +7,47 @@ class retailControl extends vbaseControl
         parent::__construct();
         parent::__construct();
     }
     }
 
 
-    public function retail_recordOp()
+    private function check_params($params)
     {
     {
-        $channel_code = $_POST['channel_code'];
+        $channel_code = $params['channel_code'];
         if(empty($channel_code)) {
         if(empty($channel_code)) {
-            return self::outerr(300,"渠道信息有误.");
+            return [false, "渠道信息有误."];
         }
         }
-        $province = $_POST['province'] ?? '';
-        $city = $_POST['city'] ?? '';
-        $area = $_POST['area'] ?? '';
-        $address = $_POST['address'] ?? '';
+        $province = $params['province'] ?? '';
+        $city = $params['city'] ?? '';
+        $area = $params['area'] ?? '';
+        $address = $params['address'] ?? '';
         if(empty($province) || empty($city) || empty($area) || empty($address)) {
         if(empty($province) || empty($city) || empty($area) || empty($address)) {
-            return self::outerr(300,"地址信息有误.");
+            return [false, "地址信息有误."];
         }
         }
 
 
-        $applicant_name = $_POST['applicant_name'];
-        $contact_phone = $_POST['contact_phone'];
+        $applicant_name = $params['applicant_name'];
+        $contact_phone = $params['contact_phone'];
         if(empty($applicant_name) || empty($contact_phone)) {
         if(empty($applicant_name) || empty($contact_phone)) {
-            return self::outerr(300,"联系人信息有误.");
+            return [false, "联系人信息有误."];
+        }
+        if(!preg_match('/^1\d{10}$/', $contact_phone)) {
+            return [false, "联系人电话格式有误."];
+        }
+        $retail = Model('')->table('retail')->where(['contact_phone' => $contact_phone])->find();
+        if(!empty($retail)) {
+            return [false, "此联系电话已申请过."];
         }
         }
 
 
-        $params = [
+        $insert = [
             'channel_code' => $channel_code, 'province' => $province, 'city' => $city, 'area' => $area,
             'channel_code' => $channel_code, 'province' => $province, 'city' => $city, 'area' => $area,
             'address' => $address, 'applicant_name' => $applicant_name, 'contact_phone' => $contact_phone,
             'address' => $address, 'applicant_name' => $applicant_name, 'contact_phone' => $contact_phone,
             'create_time' => time(), 'retail_sn' => $this->make_sn()
             'create_time' => time(), 'retail_sn' => $this->make_sn()
         ];
         ];
+        return [true, $insert];
+    }
+
+    public function retail_recordOp()
+    {
+        [$success, $params] = $this->check_params($_POST);
+        if ($success === false) {
+            return self::outerr(300, $params);
+        }
 
 
         $resp = Model('')->table('retail')->insert($params);
         $resp = Model('')->table('retail')->insert($params);
         if ($resp) {
         if ($resp) {