浏览代码

Merge branch 'test' of git.oschina.net:yiguanjia/php into test

洪海涛 8 年之前
父节点
当前提交
134cdbf8a1

+ 0 - 138
www/protected/commands/getPetUserWorkCommand.php

@@ -1,138 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: PHP
- * Date: 2016/11/9
- * Time: 15:31
- */
-class GetPetUserWorkCommand extends CConsoleCommand{
-    public function run($args) {
-        error_reporting(E_ERROR);
-        ini_set('memory_limit', '256M');
-        //ini_set('mongo.long_as_object',1);
-        set_time_limit(0);
-       // $this->getPetUser();
-
-
-    }
-    public function getKennel(){
-        $count = 0;
-        $page = intval(Yii::app()->redis->get('page'));
-        if (empty($page)) $page =1;
-        var_dump($page);
-        while($page) {
-            if ($count >= 10) {
-                Yii::app()->redis->set('page', intval(--$page));
-                exit;
-            }
-            var_dump($page);
-            $res = CommonFn::simple_http("http://deal.wozhua.mobi/api/kennel/list?user_id=546b16f50eb9fb494f8b4664&page=".$page++."&rows=10");
-            $res = json_decode($res,true);
-            if ($res['success']) {
-                $list = $res['data']['list'];
-
-                foreach ($list as $key => $value) {
-                    $count++;
-                    $tmp = json_decode(CommonFn::simple_http("http://deal.wozhua.mobi/api/kennel/desc?user_id=546b16f50eb9fb494f8b4664&kennel_id=" . $value['id']), true);
-                    if (!empty($tmp)) {
-                        $tmp = $tmp['data'];
-                        if (!empty(Kennel::model()->get(new MongoId($value['id'])))) {
-                            $kennel = Kennel::model()->get(new MongoId($value['id']));
-                        } else {
-                            $kennel = new Kennel();
-                        }
-                        $kennel->_id = new MongoId($value['id']);
-                        $kennel->status = 0;
-                        $kennel->weight = 0;
-                        $kennel->name = $value['name'];
-                        $kennel->avatar = $value['avatar'];
-                        $kennel->region = $value['region'];
-                        $kennel->video = $value['video'];
-                        if ($value['is_certified']) {
-                            $kennel->type = 1;
-                        } else {
-                            $kennel->type = 2;
-                        }
-                        $kennel->tags = $tmp['tags'];
-                        $kennel->desc = $tmp['desc'];
-                        foreach ($tmp['desc_pics'] as $v) {
-                            $kennel->desc_pics[] = $v;
-                        }
-                        $kennel->address = $tmp['address'];
-                        $kennel->phone = $tmp['phone'];
-                        $kennel->favorable_rate = $tmp['favorable_rate'];
-                        $kennel->comment_count = $tmp['comment_count'];
-                        $kennel->favorable_count = $tmp['favorable_count'];
-                        $kennel->average = $tmp['favorable_star'];
-                        $success = $kennel->save();
-                        if ($success) {
-                            echo "success";
-                        }
-                        sleep(3);
-                    }
-                }
-                sleep(3);
-            }
-        }
-    }
-    public function getPetUser(){
-        $m = new MongoClient(DB_CONNETC);
-        $collection = $m->selectCollection('fuwu','material');
-        var_dump($collection->drop());
-        $c = $m->selectCollection('fuwu','stock');
-        var_dump($c->drop());
-      /*  $m = new MongoClient(DB_CONNETC);
-        $count = 0;
-        $collection = $m->selectCollection('cute','pet_user');
-        $cursor = $collection->find();
-        $cursor->sort(array('id' => -1));
-        $index = $cursor->getNext()['id'];
-        if (empty($index)){
-            $index = 1;
-        }
-
-        while($index) {
-            if($count>= 50){
-                exit;
-            }
-            $count++;
-            $res = CommonFn::simple_http('http://pet.appcute.im/api/user/get?id=' . $index++);
-            $d = json_decode($res, true);
-            if ($d['error'] == 10000) {
-                $data = $d['data'];
-                if (!$collection->findOne(array('id' => $data['id']))) {
-                    foreach($data['photos'] as $key => $value) {
-                        $data['photos'][$key] = $value;
-                    }
-                    foreach ($data['contact'] as $key => $value) {
-                        $data['contact'][$key] = $value;
-                    }
-                    foreach ($data['services'] as $key => $value) {
-                        $data['services'][$key] = $value;
-                    }
-                    foreach ($data['area'] as $key => $value) {
-                        if (is_array($data['area'][$key])){
-                            foreach($data['area'][$key] as $k => $v) {
-                                $data['area'][$key][$k] = $v;
-                            }
-                        } else {
-                            $data['area'][$key] = $value;
-                        }
-
-                    }
-                    $collection->insert($data);
-                }
-            }
-            sleep(3);
-        }*/
-    }
-
-
-    public function writeLastIndex($index){
-        echo $index;
-        $file = fopen(dirname(__FILE__).'/../data/petUser.json', "w") or die("Unable to open file!");
-        $data['last_index'] = $index;
-        fwrite($file, json_encode($data));
-        fclose($file);
-    }
-}

+ 58 - 2
www/protected/modules/o2o/controllers/AdvisoryController.php

@@ -7,6 +7,58 @@
  */
 class AdvisoryController extends O2oBaseController {
 
+    public function actionIndex(){
+        $status_option = CommonFn::getComboboxData(Advisory::$status_option, 1, true, 100);
+        $this->render('index', [
+            'status_option' => $status_option
+           ]);
+    }
+    public function actionList(){
+        $pageParams = CommonFn::getPageParams();
+
+        $id     = intval(Yii::app()->request->getParam('id'));
+        $search = Yii::app()->request->getParam('search', '');
+        $status = intval(Yii::app()->request->getParam('status', 100));
+
+        $criteria = new EMongoCriteria($pageParams);
+        // id筛选
+        if ($id) {
+            $criteria->_id('==', new MongoId($id));
+        }
+        // 状态筛选
+        if ($status != 100) {
+            $criteria->status('==', $status);
+        }
+
+        $cursor = Advisory::model()->findAll($criteria);
+        $rows = CommonFn::getRowsFromCursor($cursor);
+        $parsedRows = Advisory::model()->parse($rows);
+        $total = $cursor->count();
+
+        echo CommonFn::composeDatagridData($parsedRows, $total);
+
+    }
+    public function actionEdit(){
+        $status = intval(Yii::app()->request->getParam('status', 100));
+        $id     = Yii::app()->request->getParam('id');
+        if (!$id) {
+            CommonFn::requestAjax(false, '');
+        }
+        if ($status == 100) {
+            CommonFn::requestAjax(false, '请选择状态');
+        }
+        $advisory = Advisory::model()->get(new MongoId($id));
+        $advisory->status = $status;
+        $success = $advisory->save();
+        if ($success) {
+            CommonFn::requestAjax(true, '修改成功');
+        }
+
+    }
+
+
+
+
     //名宿保洁
     public function actionSinglesDay(){
 
@@ -24,7 +76,9 @@ class AdvisoryController extends O2oBaseController {
             $advisory->mobile = $mobile;
             $advisory->num = $num;
             $advisory->area =$area;
-            $advisory->status = 0;
+            $advisory->type = '名宿保洁';
+            $advisory->time = time();
+            $advisory->status = 1;
             $advisory->tech_content = $tech_content;
             if ($advisory->save()) {
                 echo '您的咨询已发送成功,请等待我们的企业管家与您联系,温馨提示,一般是一个工作日内,日间致电给您,请留意。';exit;
@@ -49,7 +103,9 @@ class AdvisoryController extends O2oBaseController {
             $advisory->mobile = $mobile;
             $advisory->num = $num;
             $advisory->area = $area;
-            $advisory->status = 0;
+            $advisory->time = time();
+            $advisory->type = '企业服务';
+            $advisory->status = 1;
             $advisory->tech_content = $tech_content;
             if ($advisory->save()) {
                 echo '您的咨询已发送成功,请等待我们的企业管家与您联系,温馨提示,一般是一个工作日内,日间致电给您,请留意。';

+ 11 - 1
www/protected/modules/o2o/models/Advisory.php

@@ -14,8 +14,15 @@ class Advisory extends MongoAr{
     public $homeType;
     public $num;
     public $sex;
+    public $type;//咨询类型
     public $tech_content;//服务内容
     public $status;//0 待处理 1 已处理
+    public $time;//创建时间
+
+    public static $status_option = array(
+        1 => '待处理',
+        2 => '已处理'
+    );
     public function __construct($scenario='insert'){
         $this->setMongoDBComponent(Yii::app()->getComponent('mongodb_o2o'));
         parent::__construct($scenario);
@@ -49,11 +56,14 @@ class Advisory extends MongoAr{
 
         $newRow['user_name'] = CommonFn::get_val_if_isset($row,'user_name','');
         $newRow['mobile'] = CommonFn::get_val_if_isset($row,'mobile','');
-        $newRow['area'] = intval(CommonFn::get_val_if_isset($row,'area',''));
+        $newRow['area'] = CommonFn::get_val_if_isset($row,'area','');
         $newRow['homeType'] = CommonFn::get_val_if_isset($row,'homeType','');
         $newRow['num'] = CommonFn::get_val_if_isset($row,'num','');
         $newRow['sex'] = CommonFn::get_val_if_isset($row,'sex','');
         $newRow['tech_content'] = CommonFn::get_val_if_isset($row,'tech_content','');
+        $newRow['status'] = CommonFn::get_val_if_isset($row,'status');
+        $newRow['time'] = CommonFn::get_val_if_isset($row,'time','');
+        $newRow['type'] = CommonFn::get_val_if_isset($row,'type','');
         if(APPLICATION=='admin'){
 
             $newRow['action_user'] = CommonFn::get_val_if_isset($row,'action_user',"");

+ 418 - 0
www/protected/modules/o2o/views/advisory/index.php

@@ -0,0 +1,418 @@
+<style>
+    .f_label {width: 90px;}
+    .accordion-body {padding: 0;}
+    #view_select_position {
+        display:inline-block;
+        padding:1px 4px 1px 4px;
+        border:1px solid #999999;
+        text-decoration:none;
+        color:#333333;
+    }
+</style>
+
+<div id="main">
+    <div region="west" border="false" id="west_panel">
+        <table id="dg_content"></table>
+        <div id="tb_content">
+
+            <div class="tb_line">
+                <span class="tb_label">状态: </span>
+                <input id="filter_status" />
+
+            </div>
+
+
+        </div>
+    </div>
+    <div id="acc_container" class="accordion" region="center">
+        <div region="center" title="充值卡" data-options="iconCls:'icon-save',selected:true">
+            <div class="easyui-layout detail_layout">
+                <div data-options="region:'center'" class="detail_center">
+                    <div class="detail_main">
+                        <form id="content_form" method="post">
+                            <ul>
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>ID: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <input type="hidden" name="id" id="id"/>
+                                            <span id="id_str"></span>
+                                        </div>
+                                    </div>
+                                </li>
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>咨询类型: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <!--                                            <input type="text" name="mobile" id="edit_denomination" value='' />-->
+                                            <span id="type"></span>
+                                        </div>
+                                    </div>
+                                </li>
+
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>联系方式: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+<!--                                            <input type="text" name="mobile" id="edit_denomination" value='' />-->
+                                            <span id="mobile"></span>
+                                        </div>
+                                    </div>
+                                </li>
+
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>区域: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <span id="area"></span>
+<!--                                            <textarea name="area" id="area" style="width: 250px;min-height: 100px"></textarea>-->
+                                        </div>
+                                    </div>
+                                </li>
+
+
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>房型: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <span id="homeType"></span>
+<!--                                            <input id="edit_order" name="homeType" />-->
+                                        </div>
+                                    </div>
+                                </li>
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>房源数: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <span id="num"> </span>
+                                            <!--<input id="edit_order" name="num" />-->
+                                        </div>
+                                    </div>
+                                </li>
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>服务: </span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <span id="tech_content"> </span><!--<id="edit_order" name="tech_content" />-->
+                                        </div>
+                                    </div>
+                                </li>
+
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                            <span>状态:</span>
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <input id="setStatus" name="status" />
+                                        </div>
+                                    </div>
+                                </li>
+                                <li class="f_item">
+                                    <div class="box">
+                                        <div class="f_label">
+                                        </div>
+                                        <div class="box_flex f_content">
+                                            <span id="action_info" style="color:green;"></span>
+                                        </div>
+                                    </div>
+                                </li>
+
+                            </ul>
+                        </form>
+                    </div>
+                    <div data-options="region:'south'" class="detail_south">
+                        <div class="detail_toolbar">
+                            <a href="#" class="easyui-linkbutton set_button" iconCls="icon-save" onclick="save_content();return false;">保存</a>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<div style="display:none;">
+    <div id="refund_tip_dialog" style="padding: 30px 0;">
+        <div style="text-align:center;"><span id="refund_tip"></span></div>
+    </div>
+</div>
+<script language="javascript" type="text/javascript" src="<?php echo Yii::app()->request->baseUrl; ?>/js/coolautosuggest/jquery.coolautosuggest.js"></script>
+<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/js/coolautosuggest/jquery.coolautosuggest.css" />
+<script type="text/javascript">
+    var jq_dg_content = $('#dg_content');
+    var jq_content_form = $('#content_form');
+    var jq_filter_status = $('#filter_status');
+    var jq_setStatus_add = $('#setStatus_add');
+    var module_router = site_root + '/index.php?r=o2o/Advisory';
+    var status_data = <?php echo json_encode($status_option); ?>;
+    var jq_setStatus = $('#setStatus');
+    var w_width = $(window).width();
+    var w_height = $(window).height();
+    var jq_ss = $('#ss');
+    var jq_action_info = $('#action_info');
+
+    var jq_add_dialog = $('#add_dialog');
+    var jq_add_form = $('#add_form');
+
+
+    var jq_set_precedence = $('#set_precedence');
+
+
+    var jq_acc = $('#acc_container');
+
+    $(function(){
+
+        jq_acc.accordion({
+            height: w_height - 18,
+            onSelect: function(title) {
+
+            }
+        });
+
+
+
+        var buttons = $.extend([], $.fn.datebox.defaults.buttons);
+        buttons[0].text = '确定';
+
+        jq_setStatus.combobox({
+            editable: false,
+            data: status_data
+        });
+
+
+        jq_setStatus_add.combobox({
+            editable: false,
+            data: (function () {
+                var status_data_temp = new Array();
+                $.extend(status_data_temp, status_data);
+                status_data_temp.shift();
+
+                return status_data_temp;
+            })()
+        });
+
+
+
+
+
+
+
+        var p_width = parseInt(w_width / 2);
+        if (p_width < 520){
+            p_width = 520;
+        }
+        var d_width = p_width - 10;
+        $('#west_panel').css({width : p_width});
+        $('#main').css({width: w_width - 25, height: w_height - 18}).layout();
+
+        jq_ss.searchbox({
+            width: 130,
+            searcher:function(value){
+                search_content();
+            },
+            prompt: '请输入关键字'
+        });
+
+        jq_setStatus.combobox({
+            editable: false,
+            data: status_data
+        });
+
+
+        jq_dg_content.datagrid({
+            url: module_router + '/list',
+            title: '咨询列表',
+            width: d_width,
+            height: w_height - 18,
+            fitColumns: true,
+            autoRowHeight: true,
+            striped: true,
+            toolbar: '#tb_content',
+            singleSelect: true,
+            selectOnCheck: false,
+            checkOnSelect: false,
+            rowStyler: function(index,row){
+                if (row.status==1){
+                    //return 'color:red;';
+                }else if(row.status==-3){
+                    return 'color:green;';
+                }
+            },
+            pagination: true,
+            pageList: [20, 30, 50],
+            pageSize: 20,
+            nowrap: false,
+            idField: 'id',
+            sortName: 'order_time',
+            sortOrder: 'desc',
+            queryParams: get_param_obj(),
+            frozenColumns:[[
+                {field:'ck',checkbox:true}
+            ]],
+            columns:[[
+                {field:'user_name', title:'姓名', width:25,sortable:false},
+                {field:'mobile', title:'联系方式', width:50, sortable: true},
+                {field:'status', title:'状态', width:50, sortable: true,
+                    formatter: function(value, row){
+                        return get_filed_text(value, status_data);
+                    }
+                },
+                {field:'time', title:'咨询时间', width:70,sortable:true,formatter: function(value, row){
+                    var now=new Date(value*1000);
+
+                    var   month=now.getMonth()+1;
+                    var   date=now.getDate();
+                    var   hour = now.getHours();
+                    return   month+"月"+date+"日"+hour+":00";
+                }
+                },
+            ]],
+
+            onSelect: function(index, row){
+                var data = $.extend({}, row);
+                $('#id_str').html(data.id);
+                $('#id').html(data.id);
+                $('#user_name').html(data.user_name);
+                $('#mobile').html(data.mobile);
+                $('#area').html(data.area);
+                $('#homeType').html(data.homeType);
+                $('#num').html(data.num);
+                $('#type').html(data.type);
+                $('#user_name').html(data.user_name);
+                $('#tech_content').html(data.tech_content);
+                jq_content_form.form('load', data);
+                $('#admins_edit_info').html('');
+                if (data['action_user'] != ''){
+                    jq_action_info.html('信息已被编辑: ' + data['action_user'] + ' ' + data['action_time']);
+                } else {
+                    jq_action_info.html('');
+                }
+
+            }
+
+        });
+
+        jq_filter_status.combobox({
+            width: 100,
+            data: status_data,
+            editable: false,
+            onSelect: function(){
+                search_content();
+            }
+        });
+
+
+
+
+        jq_content_form.form({
+            url: module_router + '/edit',
+            onSubmit: function(param){
+                if ($('#order_id').val() == ""){
+                    return false;
+                }
+                var isValid = $(this).form('validate');
+                if (!isValid){
+                    $.messager.progress('close');
+                }
+                return isValid;
+            },
+            success: function(res){
+                $.messager.progress('close');
+                var res = JSON.parse(res);
+
+                if (res.success){
+                    jq_dg_content.datagrid('reload');
+                }
+                if(res.success){
+                    $.messager.show({
+                        title: '提示',
+                        msg: '保存成功',
+                        timeout: 3500,
+                        showType: 'slide'
+                    });
+
+                    $('#technician_id').val(0);
+                }else{
+                    $.messager.show({
+                        title: '提示',
+                        msg: res.message,
+                        timeout: 3500,
+                        showType: 'slide'
+                    });
+                }
+            }
+        });
+
+        jq_add_form.form({
+            url : module_router + '/add',
+            onSubmit : function (param) {
+                var isValid = $(this).form('validate');
+                if (!isValid){
+                    $.messager.progress('close');
+                }
+                return isValid;
+            },
+            success : function (res) {
+                $.messager.progress('close');
+                var res = JSON.parse(res);
+
+                if (res.success) {
+                    $.messager.show({
+                        title : '提示',
+                        msg : '保存成功',
+                        timeout : 3500,
+                        showType : 'slide'
+                    });
+                    jq_add_dialog.dialog('close');
+                    jq_dg_content.datagrid('reload');
+                } else {
+                    $.messager.show({
+                        title : '提示',
+                        msg : res.message,
+                        timeout : 3500,
+                        showType : 'slide'
+                    });
+                }
+            }
+        });
+
+
+    });
+
+    function save_content(){
+        if ($('#recharge_id').val() == ""){
+            return false;
+        }
+        $.messager.progress();
+        jq_content_form.submit();
+    }
+    function search_content(){
+
+        var filter_status = jq_filter_status.combobox('getValue');
+
+        jq_dg_content.datagrid({
+            pageNum: 1,
+            queryParams: {
+                status : filter_status
+            }
+        });
+
+    };
+
+
+
+</script>