コード例 #1
0
 /**
  * @title 获取订单详情
  *
  * @param string $id 订单编号 108323 测试环境,不对订单所属进行验证
  *       
  * @method get
  */
 public function order_detail($id)
 {
     $orderModel = new OrderModel();
     $uid = $this->_user['uid'];
     $field = 'id,uid,created,type,status,title,goods_pic pic,realname,mobile,money,first_money,month,month_total,remark,failure_reason';
     $where = ['id' => $id, 'company_id' => ['exp', ' in (select id from zj_loan_company where uid=' . $uid . ')']];
     $order = $orderModel->where($where)->field($field)->find() or ajax_error('找不到此订单信息!');
     $order_id = $order['id'];
     $type_config = $orderModel->getType();
     $status_config = $orderModel->getStatus();
     $order['type_text'] = isset($type_config[$order['type']]) ? $type_config[$order['type']] : '未知:' . $order['type'];
     $order['status_text'] = isset($status_config[$order['status']]) ? $status_config[$order['status']] : '未知:' . $order['status'];
     // 自定义显示文字
     $item_texts = [['label' => '创建日期', 'text' => date('Y-m-d H:i', $order['created']), 'color' => '#666'], ['label' => '状态', 'text' => $order['status_text'], 'color' => '#666'], ['label' => '类型', 'text' => $order['type_text']], ['label' => '姓名', 'text' => $order['realname']], ['label' => '联系电话', 'text' => $order['mobile']], ['label' => '价格', 'text' => $order['money']], ['label' => '首付', 'text' => $order['first_money']], ['label' => '分期数', 'text' => $order['month']], ['label' => '月供', 'text' => $order['month_total']], ['label' => '客户备注', 'text' => $order['remark']], ['label' => 'divider'], ['label' => '业务员', 'text' => M()->table('zj_loan_order_salesman s')->join('zj_user u on u.uid=s.uid')->where('s.order_id=' . $order['id'])->getField('u.realname') ?: '-']];
     if ($order['status'] == $orderModel::STATUS_CHECK_FAILURE) {
         $item_texts[] = ['label' => '签约失败', 'text' => $order['failure_reason'] ?: '-'];
     }
     if ($order['status'] == $orderModel::STATUS_CLOSED) {
         $item_texts[] = ['label' => '关闭原因', 'text' => $order['failure_reason'] ?: '-'];
     }
     // 自定义操作
     $where = ['uid' => $order['uid']];
     $contract_status = M('loan_user_contract')->where($where)->getField('status');
     if ($contract_status === null) {
         $user_auth_text = '未提交资料';
     } elseif ($contract_status == 0) {
         // 检查提交资料是否完善
         $user_auth = M('loan_user_contract_auth')->where($where)->getField('auth_id', true);
         if ($user_auth) {
             $auth_config = M('loan_config_auth')->where('type=1 and status=1 and is_required=1')->getField('id', true);
             foreach ($auth_config as $key => $id) {
                 if (in_array($id, $user_auth)) {
                     unset($auth_config[$key]);
                 }
             }
             if ($auth_config) {
                 $user_auth_text = '待完善资料';
             } else {
                 $user_auth_text = '等待审核';
             }
         } else {
             $user_auth_text = '未提交资料';
         }
     } elseif ($contract_status == 1) {
         $user_auth_text = '审核已通过';
     } elseif ($contract_status == 2) {
         $user_auth_text = '审核不通过';
     }
     $item_pages = [['name' => 'auth_user', 'text' => $user_auth_text, 'color' => '#333333']];
     // 自定义按钮
     $btns = [];
     // 输出结果
     ajax_success(['order' => $order, 'item_text' => $item_texts, 'item_page' => $item_pages, 'btns' => $btns]);
 }
コード例 #2
0
 public function lists()
 {
     $orderModel = new OrderModel();
     $config = $this->_getWhere(I('cate', 'my'));
     $where = $config['where'];
     $type = I('type', 0, 'intval');
     if ($type) {
         $where['o.type'] = $type;
     }
     // 搜索
     $search = I('search');
     if ($search) {
         $where += ['o.id|o.realname' => $search];
     }
     $page_size = 30;
     $limit = I('limit', 0, 'intval');
     $model = M()->table('zj_loan_order o')->join('zj_university_campus c on c.id=o.campus_id', 'left');
     isset($where['f.payee_name']) and $model->join('zj_loan_order_finance f on f.order_id=o.id');
     $model->field('o.id,o.type,o.created,o.title,o.realname,c.university_name,c.name campus_name');
     $list = $model->where($where)->order('o.id desc')->limit($limit, $page_size)->select();
     $type = $orderModel->getType();
     foreach ($list as $key => $vo) {
         $list[$key]['type'] = mb_substr($type[$vo['type']], 0, 2);
     }
     ajax_success($list);
 }