function refund()
 {
     $order_sn = $_REQUEST['order_sn'];
     $model = M("order");
     $info = $model->where("order_sn = '{$order_sn}'")->find();
     $data = array("out_trade_no" => $order_sn, "total_fee" => intval($info["pay_money"] * 100), "refund_fee" => intval($info["pay_money"] * 100));
     $url = "http://" . $_SERVER['SERVER_NAME'] . "/Wxpay/example/refund.php";
     $post_params = $data;
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS, $post_params);
     $result = curl_exec($ch);
     curl_close($ch);
     $data = array("order_status" => 7);
     $model->where("order_sn = '{$order_sn}'")->save($data);
     // 服务商相关操作
     $turn_order_model = M("turn_order");
     $turn_order_info = $turn_order_model->where("sod_id='{$info['so_id']}' and order_id = '{$info['id']}'")->find();
     $data = array("state" => 1);
     $turn_order_model->where("sod_id='{$info['so_id']}' and order_id = '{$info['id']}'")->save($data);
     $bank_model = M("bank");
     $bank_info_older = $bank_model->where("bank_id='{$info['services_id']}'")->find();
     if (!empty($bank_info_older)) {
         $data = array("money" => $bank_info_older['money'] - $turn_order_info['money'] > 0 ? $bank_info_older['money'] - $turn_order_info['money'] : 0, "end_money" => $bank_info_older['end_money'] - $turn_order_info['money'] > 0 ? $bank_info_older['end_money'] - $turn_order_info['money'] : 0);
         $bank_model->where("id='{$bank_info_older['id']}'")->save($data);
         // 记录
         $bank_info_older = $bank_model->where("bank_id='{$info['services_id']}'")->find();
         $data = array("services_id" => $bank_info_older['bank_id'], "income_money" => 0, "pay_money" => $turn_order_info['money'], "end_money" => $bank_info_older['end_money'], "user_money" => $bank_info_older['user_money'], "money" => $bank_info_older['money'], "order_id" => $info['id'], "c_time" => time());
         $jl_model = M("services_jilu");
         $jl_model->add($data);
     }
     // 修改违章状态
     $data = array("is_manage" => 0, "manage_time" => time());
     $endorsement_model = M("Endorsement");
     $endorsement_model->where("id={$info['endorsement_id']}")->save($data);
     // 推送消息
     $model = M();
     $user = $model->table("cw_order as o")->join("cw_user as u on u.id=o.user_id")->join("cw_car as c on c.id=o.car_id")->field("u.openid, o.order_sn, c.license_number")->where("o.id = '{$info['id']}'")->find();
     if (!empty($user)) {
         $model = new IndexController();
         $data = array('first' => array('value' => urlencode(first_key), 'color' => "#000000"), 'keyword1' => array('value' => urlencode("{$user['order_sn']}"), 'color' => '#000000'), 'keyword2' => array('value' => urlencode("{$user['license_number']}"), 'color' => '#000000'), 'keyword3' => array('value' => urlencode(status3), 'color' => '#000000'), 'remark' => array('value' => urlencode(last_key), 'color' => '#000000'));
         include_once 'application/Weixin/Conf/config.php';
         $model->doSend(0, '', $user['openid'], MUBAN3, URL2, $data);
     }
     $this->ajaxReturn(1);
     return true;
 }
 public function manage()
 {
     $state = $_REQUEST['state'];
     $id = $_REQUEST['id'];
     $turn_order_model = M("turn_order");
     $info = $turn_order_model->where("id='{$id}' and state in (0,3,4)")->find();
     if (empty($info)) {
         $this->redirect("Xitong/window");
     }
     $latest_info = $turn_order_model->where("order_id='{$info['order_id']}'")->order("id desc")->find();
     if ($latest_info['id'] != $info['id']) {
         $this->redirect("Xitong/window");
     }
     $model = M();
     $v = $model->field("a.id as order_id,a.pay_sn,a.order_sn,b.id as car_id,b.license_number,c.time,c.area,c.code,c.money,c.points,a.last_time,a.pay_money,a.order_status,a.pay_type,d.id as user_id,d.phone,a.services_id,a.money as order_money,a.endorsement_id,a.user_id")->table("cw_order as a")->join("cw_car as b on a.car_id=b.id")->join("cw_endorsement as c on c.id=a.endorsement_id")->join("cw_services as d on a.services_id=d.id")->where("a.id = '{$info['order_id']}'")->find();
     $to_list = $turn_order_model->field("tos.id,tos.c_time,tos.state,tos.l_time,tos.services_id as s_id,tos.money")->table("cw_turn_order as tos")->where("tos.order_id = '{$info['order_id']}'")->select();
     $s_ids = array();
     foreach ($to_list as $c => $p) {
         if ($p["s_id"] != null) {
             $s_ids[] = $p["s_id"];
         }
     }
     $user_model = M("User");
     $user = $user_model->where("id = '{$v['user_id']}'")->find();
     $order_model = M("Order");
     switch ($state) {
         case 1:
             // 办不了
             $fuwu = $this->find_fuwu($v["car_id"], $v["code"], $v["money"], $v["points"], $v["area"], $s_ids);
             if (!empty($fuwu)) {
                 $data = array("state" => 1, "l_time" => time());
                 $turn_order_model->where("id='{$info['id']}'")->save($data);
                 $data = array("order_id" => $v['order_id'], "services_id" => $fuwu['s_id'], "sod_id" => $fuwu['so_id'], "so_type" => $fuwu['so_type'], "money" => $fuwu['so_money'], "state" => 0, "c_time" => time(), "l_time" => time());
                 $turn_order_model->add($data);
                 $data = array("services_id" => $fuwu['s_id'], "so_id" => $fuwu['so_id'], "so_type" => $fuwu['so_type']);
                 $order_model->where("id='{$v['order_id']}'")->save($data);
                 $services_model = M("services");
                 $services_info = $services_model->where("id='{$fuwu['s_id']}'")->find();
                 if (!empty($services_info)) {
                     $data = array("all_nums" => $services_info['all_nums'] + 1);
                     $services_model->where("id='{$fuwu['s_id']}'")->save();
                 }
                 if ($info['state'] == 3 or $info['state'] == 4) {
                     // 转钱
                     $bank_model = M("bank");
                     $bank_info_older = $bank_model->where("bank_id='{$v['services_id']}'")->find();
                     if (!empty($bank_info_older)) {
                         $data = array("money" => $bank_info_older['money'] - $info['money'] > 0 ? $bank_info_older['money'] - $info['money'] : 0, "end_money" => $bank_info_older['end_money'] - $info['money'] > 0 ? $bank_info_older['end_money'] - $info['money'] : 0);
                         $bank_model->where("id='{$bank_info_older['id']}'")->save($data);
                     }
                     // 记录
                     $bank_info_older = $bank_model->where("bank_id='{$v['services_id']}'")->find();
                     $data = array("services_id" => $bank_info_older['bank_id'], "income_money" => 0, "pay_money" => $info['money'], "end_money" => $bank_info_older['end_money'], "user_money" => $bank_info_older['user_money'], "money" => $bank_info_older['money'], "order_id" => $v['order_id'], "c_time" => time());
                     $jl_model = M("services_jilu");
                     $jl_model->add($data);
                 }
                 /*
                 $bank_info = $bank_model->where ( "bank_id='{$fuwu['s_id']}'" )->find ();
                 if (! empty ( $bank_info )) {
                 	$data = array (
                 			"money" => $bank_info ['money'] + $fuwu['so_money'],
                 			"end_money" => $bank_info ['end_money'] + $fuwu['so_money']
                 	);
                 	$bank_model->where ( "id='{$bank_info['id']}'" )->save ( $data );
                 }
                 // 记录
                 $bank_info = $bank_model->where ( "bank_id='{$fuwu['s_id']}'" )->find ();
                 $data = array (
                 		"services_id" => $bank_info ['bank_id'],
                 		"income_money" => $fuwu['so_money'],
                 		"pay_money" => 0,
                 		"end_money" => $bank_info ['end_money'],
                 		"user_money" => $bank_info ['user_money'],
                 		"money" => $bank_info ['money'],
                 		"order_id" => $v ['order_id'],
                 		"c_time" => time ()
                 );
                 $jl_model = M ( "services_jilu" );
                 $jl_model->add ( $data );
                 */
             } else {
                 $data = array("state" => 6, "l_time" => time());
                 $turn_order_model->where("id='{$info['id']}'")->save($data);
                 $data = array("order_status" => 8);
                 $order_model->where("id='{$v['order_id']}'")->save($data);
                 // 修改违章状态
                 $data = array("is_manage" => 0, "manage_time" => time());
                 $endorsement_model = M("Endorsement");
                 $endorsement_model->where("id={$v['endorsement_id']}")->save($data);
                 if ($info['state'] == 3 or $info['state'] == 4) {
                     //扣钱
                     $bank_model = M("bank");
                     $bank_info_older = $bank_model->where("bank_id='{$v['services_id']}'")->find();
                     if (!empty($bank_info_older)) {
                         $data = array("money" => $bank_info_older['money'] - $info['money'] > 0 ? $bank_info_older['money'] - $info['money'] : 0, "end_money" => $bank_info_older['end_money'] - $info['money'] > 0 ? $bank_info_older['end_money'] - $info['money'] : 0);
                         $bank_model->where("id='{$bank_info_older['id']}'")->save($data);
                     }
                     // 记录
                     $bank_info_older = $bank_model->where("bank_id='{$v['services_id']}'")->find();
                     $data = array("services_id" => $bank_info_older['bank_id'], "income_money" => 0, "pay_money" => $info['money'], "end_money" => $bank_info_older['end_money'], "user_money" => $bank_info_older['user_money'], "money" => $bank_info_older['money'], "order_id" => $v['order_id'], "c_time" => time());
                     $jl_model = M("services_jilu");
                     $jl_model->add($data);
                 }
             }
             //$this->postBizApi($order_info, $user, 1);
             break;
         case 3:
             // 我来办理
             $data = array("state" => 3, 'l_time' => time(), 'do_time' => time());
             $turn_order_model->where("id='{$info['id']}'")->save($data);
             $data = array("last_time" => time(), "order_status" => 3);
             $order_model->where("id='{$v['order_id']}'")->save($data);
             // 评估
             $services_model = M("services");
             $services_info = $services_model->where("id='{$v['services_id']}'")->find();
             if (!empty($services_info)) {
                 $data = array("nums" => $services_info['nums'] + 1);
                 $services_model->where("id='{$v['services_id']}'")->save($data);
             }
             $bank_model = M("bank");
             $bank_info = $bank_model->where("bank_id='{$v['services_id']}'")->find();
             if (!empty($bank_info)) {
                 $data = array("money" => $bank_info['money'] + $info['money'], "end_money" => $bank_info['end_money'] + $info['money']);
                 $bank_model->where("id='{$bank_info['id']}'")->save($data);
             } else {
                 $data = array("bank_id" => $v['services_id'], "name" => 0, "user_bank" => 0, "user_number" => 0, "money" => $info['money'], "end_money" => $info['money'], "user_money" => 0, "create_time" => time());
                 $bank_model->add($data);
             }
             $bank_info = $bank_model->where("bank_id='{$v['services_id']}'")->find();
             $data = array("services_id" => $v['services_id'], "income_money" => $info['money'], "pay_money" => 0, "end_money" => $bank_info['end_money'], "user_money" => $bank_info['user_money'], "money" => $bank_info['money'], "order_id" => $info['order_id'], "c_time" => time());
             $jl_model = M("services_jilu");
             $jl_model->add($data);
             // 推送消息
             if ($user["is_att"] == 0 && $user['channel'] == 0) {
                 $data = array('first' => array('value' => urlencode(first_key), 'color' => "#000000"), 'keyword1' => array('value' => urlencode("{$v['order_sn']}"), 'color' => '#000000'), 'keyword2' => array('value' => urlencode("{$v['license_number']}"), 'color' => '#000000'), 'keyword3' => array('value' => urlencode(status1), 'color' => '#000000'), 'remark' => array('value' => urlencode(last_key), 'color' => '#000000'));
                 include_once 'application/Weixin/Conf/config.php';
                 $model = new IndexController();
                 $msgurl = "/index.php?g=weixin&m=order&a=index";
                 if (runEnv == 'production') {
                     $weixin_url = "http://weixin.xiaoxianlink.com" . $msgurl;
                 } elseif (runEnv == 'test') {
                     $weixin_url = "http://wxdev.xiaoxianlink.com" . $msgurl;
                 } else {
                     $weixin_url = "http://wx.xiaoxian.com" . $msgurl;
                 }
                 $model->doSend(0, '', $user['openid'], MUBAN3, $weixin_url, $data);
             }
             $this->postBizApi($order_info, $user, 3);
             break;
         case 4:
             // 办理完成
             $data = array("state" => 4, 'l_time' => time(), 'finish_time' => time());
             $turn_order_model->where("id='{$info['id']}'")->save($data);
             /*
             $data = array (
             		"last_time" => time (),
             		"order_status" => 4 
             );
             $order_model->where ( "id='{$order_info['id']}'" )->save ( $data );
             $this->postBizApi($order_info, $user, 4);
             */
             break;
         default:
             break;
     }
     $this->redirect("Xitong/window");
 }
 function help()
 {
     $model = M("help");
     if ($_POST) {
         $info = $model->find();
         $data = array("url" => $_POST['url'], "c_time" => time());
         if (empty($info)) {
             $model->add($data);
         } else {
             $model->where("id='{$info['id']}'")->save($data);
         }
         /* start 增加帮助与规则更新提醒推送 */
         if ($re > 0) {
             //推送消息
             $model_push = new IndexController();
             $model_push->pushMessageToApp(content8, title8, content8);
             //插入消息表
             $model_push->add_message('', 3, 8, '', content8);
         }
         /* end */
     }
     $info = $model->find();
     $this->assign('info', $info);
     $this->display();
 }