model = new BalanceCard(); $this->balance_order = new BalanceOrder(); $this->water_model = new BalanceWater(); } /** * @author chenniang * @DataTime: 2021-07-04 19:09 * @功能说明:储值充值卡列表 */ public function cardList(){ $input = $this->_param; $dis[] = ['uniacid','=',$this->_uniacid]; $dis[] = ['status','=',1]; if(!empty($input['name'])){ $dis[] = ['title','like','%'.$input['name'].'%']; } $data = $this->model->dataList($dis,$input['limit']); if(!empty($data['data'])){ $level = new Level(); foreach ($data['data'] as &$v){ $v['create_time'] = date('Y-m-d H:i:s',$v['create_time']); $v['member_title']= $level->where(['id'=>$v['member_level']])->value('title'); } } return $this->success($data); } /** * @author chenniang * @DataTime: 2021-07-07 17:00 * @功能说明:充值余额 */ public function payBalanceOrder(){ $input = $this->_input; if(!empty($input['card_id'])){ $dis = [ 'id' => $input['card_id'], 'status' => 1 ]; $card = $this->model->dataInfo($dis); if(empty($card)){ $this->errorMsg('充值卡已被下架'); } }else{ $card = [ 'price' => $input['price'], 'true_price' => $input['price'], 'id' => 0, 'member_level'=> 0, 'title' => '自定义金额充值' ]; } $user_model = new User(); $level_model= new Level(); $user = $user_model->dataInfo(['id'=>$this->getUserId()]); $user_level_discount = $level_model->where(['id'=>$user['member_level']])->value('discount'); $user_level_discount = !empty($user_level_discount)?$user_level_discount:0; $member_level_dicount= $level_model->where(['id'=>$card['member_level']])->value('discount'); $member_level_dicount= !empty($member_level_dicount)?$member_level_dicount:0; $card['member_level']= $member_level_dicount>$user_level_discount?$card['member_level']:0; $insert = [ 'uniacid' => $this->_uniacid, 'user_id' => $this->getUserId(), 'order_code' => orderCode(), 'pay_price' => $card['price'], 'sale_price' => $card['price'], 'true_price' => $card['true_price'], 'card_id' => $card['id'], 'title' => $card['title'], 'member_level'=> $card['member_level'], 'phone' => $input['phone'] ]; $res = $this->balance_order->dataAdd($insert); if($res==0){ $this->errorMsg('充值失败'); } //微信支付 $pay_controller = new IndexWxPay($this->app); //支付 $jsApiParameters= $pay_controller->createWeixinPay($this->payConfig(),$this->getUserInfo()['openid'],$this->_uniacid,"储值",['type' => 'Balance' , 'out_trade_no' => $insert['order_code']],$insert['pay_price']); $arr['pay_list']= $jsApiParameters; return $this->success($arr); } /** * @author chenniang * @DataTime: 2021-07-07 17:34 * @功能说明:充值订单列表 */ public function balaceOrder(){ $input = $this->_param; $dis[] = ['status','=',2]; $dis[] = ['user_id','=',$this->getUserId()]; if(!empty($input['start_time'])){ $dis[] = ['pay_time','between',"{$input['start_time']},{$input['end_time']}"]; } $data = $this->balance_order->dataList($dis); if(!empty($data['data'])){ foreach ($data['data'] as &$v){ $v['create_time'] = date('Y-m-d H:i:s',$v['create_time']); $v['pay_time'] = date('Y-m-d H:i:s',$v['pay_time']); } } return $this->success($data); } /** * @author chenniang * @DataTime: 2021-07-07 18:00 * @功能说明:消费明细 */ public function payWater(){ $input = $this->_param; $dis[] = ['user_id','=',$this->getUserId()]; // $dis[] = ['type','=',2]; if(!empty($input['start_time'])){ $dis[] = ['create_time','between',"{$input['start_time']},{$input['end_time']}"]; } $data = $this->water_model->dataList($dis); if(!empty($data['data'])){ foreach ($data['data'] as &$v){ $v['create_time'] = date('Y-m-d H:i:s',$v['create_time']); } } return $this->success($data); } }