stanley-king 9 лет назад
Родитель
Сommit
51d7db57f1

+ 1 - 0
admin/control/bonus.php

@@ -81,6 +81,7 @@ class bonusControl extends SystemControl
                 $menu_array = array(
                     1=>array('menu_key'=>'bonus_type_list','menu_name'=>'已发红包', 'menu_url'=>'index.php?act=bonus&op=bonus_type'),
                     2=>array('menu_key'=>'bonus_type_add','menu_name'=>'添加定向红包', 'menu_url'=>'index.php?act=bonus&op=bonus_type_add'),
+                    3=>array('menu_key'=>'bonus_type_add_random','menu_name'=>'添加随机红包', 'menu_url'=>'index.php?act=bonus&op=bonus_type_add_random'),
                 );
                 break;
             case 'type':

+ 68 - 3
admin/templates/default/bonus.bonus_type_form.php

@@ -21,13 +21,49 @@
         <input type="hidden" name="type_id" value="<?php echo $output['id'];?>"/>
         <table class="table tb-type2">
             <tbody>
+
+            <tr class="noborder">
+                <td class="required" colspan="2"><label class="validation hb_name" for="type_name">红包名称:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td width="200"><input type="text" id="type_name" name="type_name" class="hb_input" value="<?php echo  isset($output['data'])? $output['data']['type_name'] : '';?>"></td>
+                <td class=" vatop tips"></td>
+            </tr>
+
+            <tr class="noborder">
+                <td class="required" colspan="2"><label class="validation hb_name" for="pass_name">发送者:</label></td>
+            </tr>
+            <tr>
+                <td><input type="text" id="pass_name" name="pass_name" class="hb_input" value="<?php echo  isset($output['data'])? $output['data'][''] : '';?>"></td>
+                <td class="vatop tips"></td>
+            </tr>
+
+            <tr class="noborder">
+                <td><label class="hb_name" for="pass_msg">祝福语:</label></td>
+            </tr>
+            <tr>
+                <td><input type="text" id="pass_msg" name="pass_msg" class="hb_input" value="<?php echo  isset($output['data'])? $output['data']['type_name'] : '';?>"></td>
+                <td class="vatop tips"></td>
+            </tr>
+
             <tr class="noborder">
-                <td class="required" colspan="2"><label class="validation" for="type_name">红包名称</label></td>
+                <td class="required" colspan="2"><label class="validation hb_name" for="h5">H5链接:</label></td>
+            </tr>
+            <tr>
+                <td><input type="text" id="h5" name="h5" class="hb_input" value="<?php echo  isset($output['data'])? $output['data']['type_name'] : '';?>"></td>
+                <td class="vatop tips"></td>
             </tr>
+
+
             <tr class="noborder">
-                <td class="vatop rowform"><input type="text" id="type_name" name="type_name" class="txt" value="<?php echo  isset($output['data'])? $output['data']['type_name'] : '';?>"></td>
+                <td class="required" colspan="2"><label class="validation hb_name" for="h5_url">链接参数:</label></td>
+            </tr>
+
+            <tr>
+                <td><input type="text" id="h5_url" name="h5_url" class="hb_input" value="<?php echo  isset($output['data'])? $output['data']['type_name'] : '';?>"></td>
                 <td class="vatop tips"></td>
             </tr>
+
             <tr class="noborder">
                 <td class="required" colspan="2"><label class="validation" for="send_type">发放方式</label></td>
             </tr>
@@ -40,6 +76,7 @@
             <tr class="noborder">
                 <td class="required" colspan="2"><label>上传CSV文件</label></td>
             </tr>
+
             <tr class="noborder">
                 <td class="vatop rowform">
                     <span class="type-file-box">
@@ -48,6 +85,8 @@
                 </td>
                 <td class="vatop tips"></td>
             </tr>
+
+
             <tr class="noborder">
                 <td class="required" colspan="2"><label class="validation" for="send_start_date">开始发放时间</label></td>
             </tr>
@@ -101,6 +140,10 @@
         $("#send_end_date").datepicker();
         $("#use_start_date").datepicker();
         $("#use_end_date").datepicker();
+        $("#pass_name").datepicker();
+        $("#h5").datepicker();
+        $("#h5_url").datepicker();
+
         $("#type_form").validate({
             errorPlacement: function(error, element){
                 error.appendTo(element.parent().parent().prev().find('td:first'));
@@ -124,11 +167,23 @@
                 use_end_date: {
                     required : true,
                     date      : false
+                },
+                _name: {
+                    required : true,
+                    date      : false
+                },
+                h5: {
+                    required : true,
+                    date      : false
+                },
+                h5_url: {
+                    required : true,
+                    date      : false
                 }
             },
             messages : {
                 type_name: {
-                    required : '红包类型名称不能为空'
+                    required : '红包名称不能为空'
                 },
                 send_start_date: {
                     required : '开始发放时间不能为空'
@@ -141,10 +196,20 @@
                 },
                 use_end_date: {
                     required : '结束使用时间不能为空'
+                },
+                pass_name: {
+                    required : '发送者不能为空'
+                },
+                h5: {
+                    required : 'h5链接不能为空'
+                },
+                h5_url: {
+                    required : '链接参数不能为空'
                 }
             }
         });
     });
+
     $(function(){
         var textButton="<input type='text' name='textfield' id='textfield1' class='type-file-text' /><input type='button' name='button' id='button1' value='' class='type-file-button' />"
         $(textButton).insertBefore("#bonus_file");

+ 1 - 0
admin/templates/default/bonus.bonus_type_list.php

@@ -15,6 +15,7 @@
             </ul>
         </div>
     </div>
+
     <div class="fixed-empty"></div>
     <table class="table tb-type2" id="prompt">
         <tbody>

+ 3 - 2
crontab/crawl/fetch_goods.php

@@ -22,6 +22,7 @@ require_once (BASE_CRONTAB_PATH . '/crawl/upload_file.php');
 require_once (BASE_CRONTAB_PATH . '/crawl/upload_control.php');
 require_once (BASE_CRONTAB_PATH . '/crawl/tm_pagereq.php');
 require_once (BASE_CORE_PATH . '/framework/libraries/uploadfile.php');
+require_once (BASE_CRONTAB_PATH . '/crawl/skumatcher.php');
 
 date_default_timezone_set('Asia/Shanghai');
 
@@ -51,5 +52,5 @@ function not_null($str)
 //$spec = new spec_attr_parser();
 //$spec->proc();
 
-$importer = new product_importer();
-$importer->proc_shop();
+//$importer = new product_importer();
+//$importer->proc_shop();

+ 85 - 0
crontab/crawl/skumatcher.php

@@ -0,0 +1,85 @@
+<?php
+
+/**
+ * Created by PhpStorm.
+ * User: stanley-king
+ * Date: 16/1/9
+ * Time: 下午1:35
+ */
+class skumatcher
+{
+    private $input_file;
+    private $good_file;
+    private $err_file;
+    private $mod_goods_common;
+    private $mod_goods;
+
+    public function __construct($input)
+    {
+        if(file_exists($input) == false) {
+            throw new Exception("no such file {$input}.");
+        }
+
+        $this->input_file = new SplFileObject($input);
+        $this->input_file->setFlags(SplFileObject::READ_CSV | SplFileObject::READ_AHEAD | SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE);
+        $this->good_file = new SplFileObject("./good.csv","a");
+        $this->err_file = new SplFileObject("./err.csv","a");
+
+        $this->mod_goods_common = Model('goods_common');
+        $this->mod_goods = Model('goods');
+    }
+
+    public function proc()
+    {
+        foreach($this->input_file as $line)
+        {
+            $this->parase_one($line[0]);
+        }
+    }
+
+    private function match_item($name)
+    {
+        $items = $this->mod_goods_common->field('goods_commonid,goods_name')->where(array('goods_name' => $name))->select();
+        if(empty($items)) {
+            $con['goods_name'] = array('like',"%{$name}%");
+            $items = $this->mod_goods_common->field('goods_commonid,goods_name')->where($con)->select();
+        }
+        if(empty($items)) {
+            $len = mb_strlen($name);
+            $name_x = mb_substr($name,0,$len / 2);
+            $con['goods_name'] = array('like',"%{$name_x}%");
+            $items = $this->mod_goods_common->field('goods_commonid,goods_name')->where($con)->select();
+        }
+
+        return $items;
+    }
+
+    private function parase_one($name)
+    {
+        $items = $this->match_item($name);
+
+        if(empty($items)) {
+            $fields = array($name);
+            $this->err_file->fputcsv($fields,',');
+            return;
+        }
+        $goods_commonid = $items[0]['goods_commonid'];
+        $goods = $this->mod_goods->field('*')->where(array('goods_commonid' => $goods_commonid))->limit(false)->select();
+        if(empty(goods)) {
+            $fields = array($name);
+            $this->err_file->fputcsv($fields,',');
+            return;
+        }
+
+        foreach($goods as $val)
+        {
+            $fields = array($val['goods_name'],$val['goods_serial'],$val['num_iid']);
+            $this->good_file->fputcsv($fields,',');
+        }
+    }
+}
+
+
+$matcher =  new skumatcher('/Users/stanley-king/Desktop/name.csv');
+$matcher->proc();
+

+ 1 - 1
run.php

@@ -4,7 +4,7 @@
 define('BASE_ROOT_PATH',str_replace('\\','/',dirname(__FILE__)));
 
 require_once (BASE_ROOT_PATH . '/fooder.php');
-$gfcgi_run = 1;
+$gfcgi_run = 2;
 
 if($gfcgi_run == 0) { //模拟请求
     $file = BASE_ROOT_PATH . '/debug_run.php';