// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\api\controller\Order; use app\api\model\order\RiceCardOrder as RiceCardOrderModel; use app\common\exception\BaseException; use app\api\service\User as UserService; use app\common\model\Order as OrderModel; use app\common\service\Order as OrderService; use think\Db; use app\common\library\helper; use app\api\controller\Controller; use app\api\model\Receipt as ReceiptModel; use app\api\model\card\UserRiceCard; /** * 米卡订单 * Class service * @package app\api\controller\user\order */ class RiceCardOrder extends Controller { /** * 米卡订单列表 * @param int $state * @return array|\think\response\Json * @throws BaseException * @throws \think\db\exception\DbException */ public function list() { $model = new RiceCardOrderModel; $list = $model->getList(); return $this->renderSuccess(compact('list')); } //最近一年成交米卡成交额 public function lastyearpay(){ $userinfo = UserService::getCurrentLoginUser(true); $user_id = $userinfo->user_id; $qyntime= date("Y-m-d H:i:s", strtotime("-1 year")); $list = RiceCardOrderModel::field('rice_card_face_value,buy_num,order_status,pay_status')->where("user_id",'=',$user_id)->where("pay_status",'=',1)->where('order_status','=',30)->where('create_time','>',$qyntime)->select(); $sum = 0; foreach($list as $row){ $sum = $sum+ ($row->buy_num*$row->rice_card_face_value); } $sum_value = $sum; $need_verify = $sum>=1000?true:false; return $this->renderSuccess(compact('sum_value','need_verify')); } // /** // * 米卡订单单详情 // * @param int $order_id 订单ID // * @return array|\think\response\Json // * @throws BaseException // */ public function detail(int $order_id) { $detail = RiceCardOrderModel::getDetail($order_id); $detail['has_receipt'] = ReceiptModel::ifApplyReceipt($order_id,1); $detail['first_user_rice_card'] = UserRiceCard::where("order_id",$order_id)->find(); return $this->renderSuccess(compact('detail')); } // /** // * 删除订单申请 // * @param int $order_id // * @return array|\think\response\Json // * @throws BaseException // */ public function del(int $order_id) { // 订单详情 $model = RiceCardOrderModel::getDetail($order_id); if ($model->del()) { return $this->renderSuccess([], '操作成功'); } return $this->renderError($model->getError() ?: '提交失败'); } /** * 取消申请 * @param int $orderRefundId 售后单ID * @return array|\think\response\Json * @throws BaseException */ public function cancel() { // 订单详情 $cancel_reason = ''; $params = $this->baseValidate([ "order_id"=>"require",//订单ID "cancel_reason"=>"require"//取消原因 ],[ 'order_id.require'=>'订单id不能为空', 'cancel_reason.require'=>'取消原因不能为空', ]); $order_id = intval($params['order_id']); $cancel_reason = $params['cancel_reason']; $model = RiceCardOrderModel::getDetail($order_id); if ($model->cancel($cancel_reason)) { return $this->renderSuccess([], '您已成功取消订单'); } return $this->renderError($model->getError() ?: '提交失败'); } }