| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 | 
							- <?php
 
- namespace app\admin\server\life;
 
- use app\admin\model\LifeFarmLandOrder;
 
- use app\admin\model\LifeFarmLand;
 
- use app\admin\model\LifeFarmLandOrderDetail;
 
- class FarmLandOrderServer
 
- {
 
-     /**
 
-      * Notes:获取订单列表
 
-      * @param string $keywords
 
-      * @param int $page
 
-      * @param int $limit
 
-      * @return array
 
-      * User: YCP
 
-      * Date: 2022/10/25
 
-      */
 
-     public static function getOrderList(int $page, int $limit, string $keywords)
 
-     {
 
-         [$list, $count] =  LifeFarmLandOrder::getOrderList($page, $limit,$keywords);
 
-         return compact('list', 'page', 'limit', 'count');
 
-     }
 
-     /**
 
-      * Notes:获取订单详情
 
-      * @param int $order_id
 
-      * @return int
 
-      * User: YCP
 
-      * Date: 2022/10/25
 
-      */
 
-     public static function orderInfo(int $order_id)
 
-     {
 
-         LifeFarmLandOrder::affairBegin();
 
-         try {
 
-             $where = [];
 
-             $where['order_id'] = $order_id;
 
-             $result = LifeFarmLandOrder::with(['User','LifeFarmLandOrderDetail'])->where($where)->first();
 
-             if (!empty($result)){
 
-                 LifeFarmLandOrder::affairCommit();
 
-                 return $result;
 
-             }else{
 
-                 return false;
 
-             }
 
-         }catch (\Exception $exception){
 
-             LifeFarmLandOrder::affairRollback();
 
-             throw new \Exception($exception->getMessage(), 500);
 
-         }
 
-     }
 
-     /**
 
-      * Notes: 下单
 
-      * @param string $package_name
 
-      * @param array $package_rules
 
-      * @return int
 
-      * User: YCP
 
-      * Date: 2022/10/25
 
-      */
 
-     public static function insertOrder(array $params, int $user_id)
 
-     {
 
-         $land_id = explode(',',$params['order_goods_id']);
 
-         $params['order_price'] = 0;
 
-         foreach ($land_id as &$v) {
 
-             $res = LifeFarmLand::where(['land_id'=>$v])->first();
 
-             if(empty($res) || $res === false)
 
-             {
 
-                 throw new \Exception('地块id'.$v.'信息不存在');
 
-             }
 
-             $params['order_price']+=$res['land_price'];
 
-             $log = LifeFarmLandOrderDetail::where(['detail_goods_id'=>$v,'detail_pay_status'=>2])->where('detail_expire_time','>',time())->first();
 
-             //var_dump($log);
 
-             if($log){
 
-                 throw new \Exception($res['land_name'].'已售出');
 
-             }
 
-         }
 
-         LifeFarmLandOrder::affairBegin();
 
-         try {
 
-             $params['order_user_id'] = $user_id;
 
-             //$params['order_price'] = $res['land_price'];
 
-             $params['order_dno'] = "YMXT".rand(99999,999999);
 
-             $params['order_create_time'] = time();
 
-             $result =  LifeFarmLandOrder::insertGetId($params);
 
-             if (!empty($result)){
 
-                 $msg = '用户' . $user_id . '在:' . date("Y-m-d H:i:s", time()) . '下单-编号: ' . $result;
 
-                 plog('life-farm-land-order', '悦活-生态农场-一亩心田-下单', $msg);
 
-                 //写入订单详情
 
-                 foreach ($land_id as $value){
 
-                     $land = LifeFarmLand::where(['land_id'=>$value])->first();
 
-                     $item = [
 
-                       'detail_order_id'     =>$result,
 
-                       'detail_user_id'      =>$user_id,
 
-                       'detail_goods_id'     =>$value,
 
-                       'detail_goods_name'   =>$land['land_name'],
 
-                       'detail_goods_price'  =>$land['land_price'],
 
-                       'detail_create_time'  =>time(),
 
-                       'detail_expire_time'  =>time()+365*24*60*60,//一年有效期
 
-                     ];
 
-                     LifeFarmLandOrderDetail::insert($item);
 
-                 }
 
-                 LifeFarmLandOrder::affairCommit();
 
-                 return $result;
 
-             }
 
-             throw new \Exception('操作失败!');
 
-         }catch (\Exception $exception){
 
-             LifeFarmLandOrder::affairRollback();
 
-             throw new \Exception($exception->getMessage(), 500);
 
-         }
 
-     }
 
-     /**
 
-      * Notes:修改订单支付状态
 
-      * @param string $order_id
 
-      * @param int $order_finish
 
-      * @return int
 
-      * User: YCP
 
-      * Date: 2022/11/28
 
-      */
 
-     public static function updatePayStatus($order_id, $order_pay_status)
 
-     {
 
-         LifeFarmLandOrder::affairBegin();
 
-         try {
 
-             $where = [];
 
-             $where['order_id'] = $order_id;
 
-             $data = [];
 
-             $data['order_pay_status'] = $order_pay_status;
 
-             if($order_pay_status == 1){
 
-                 $data['order_pay_time'] = time();
 
-             }else{
 
-                 $data['order_pay_time'] = "";
 
-             }
 
-             $result = LifeFarmLandOrder::where($where)->update($data);
 
-             if ($result !== false){
 
-                 LifeFarmLandOrder::affairCommit();
 
-                 return true;
 
-             }
 
-             throw new \Exception('操作失败!');
 
-         }catch (\Exception $exception){
 
-             LifeFarmLandOrder::affairRollback();
 
-             throw new \Exception($exception->getMessage(), 500);
 
-         }
 
-     }
 
- }
 
 
  |