作者 郭文星

123

@@ -1821,41 +1821,8 @@ class Car extends Base @@ -1821,41 +1821,8 @@ class Car extends Base
1821 $newtime=time()-$create_time; 1821 $newtime=time()-$create_time;
1822 try { 1822 try {
1823 1823
1824 - if($newtime<300){ 1824 + if($newtime<300){
1825 // print_r([$create_time,$newtime]); 1825 // print_r([$create_time,$newtime]);
1826 - $pay_fee = $order['price'];  
1827 - $rebook_fee = 0;  
1828 - $res = Db::name("order")->where("id",$id)->update([  
1829 - "commission_price"=>$rebook_fee,  
1830 - "rebook"=>1,  
1831 - "reservation_time" => $reservation_time,  
1832 - "order_no" => getOrderSn(),  
1833 - "create_time"=>time()  
1834 - ]);  
1835 - $this->success("请求成功");  
1836 - }else {  
1837 -  
1838 - $refund_time=strtotime($refund_time);  
1839 - $newrefund_time=$refund_time-time();  
1840 -  
1841 - if($newrefund_time<0){  
1842 - $this->error("该订单无法改签,时间过期");  
1843 - }  
1844 - if($newrefund_time<3600){  
1845 - $pay_fee = $order['price'];  
1846 - $rebook_fee = 0;  
1847 - $res = Db::name("order")->where("id",$id)->update(["commission_price"=>$rebook_fee,"rebook"=>1, "order_no" => getOrderSn(),"create_time"=>time()]);  
1848 - $this->success("请求成功");  
1849 - }else if($newrefund_time>3600 & $newrefund_time<7200){  
1850 - $pay_fee = $order['price']*0.8;  
1851 - $rebook_fee = $pay_fee;  
1852 - }else if($newrefund_time>7200 & $newrefund_time<28800){  
1853 - $pay_fee = $order['price']*0.9;  
1854 - $rebook_fee = $pay_fee;  
1855 - }else if($newrefund_time>28800 & $newrefund_time<43200){  
1856 - $pay_fee = $order['price']*0.9;  
1857 - $rebook_fee = $pay_fee;  
1858 - }else if($newrefund_time>43200){  
1859 $pay_fee = $order['price']; 1826 $pay_fee = $order['price'];
1860 $rebook_fee = 0; 1827 $rebook_fee = 0;
1861 $res = Db::name("order")->where("id",$id)->update([ 1828 $res = Db::name("order")->where("id",$id)->update([
@@ -1866,36 +1833,119 @@ class Car extends Base @@ -1866,36 +1833,119 @@ class Car extends Base
1866 "create_time"=>time() 1833 "create_time"=>time()
1867 ]); 1834 ]);
1868 $this->success("请求成功"); 1835 $this->success("请求成功");
  1836 + }else {
  1837 +
  1838 + $refund_time=strtotime($refund_time);
  1839 + $newrefund_time=$refund_time-time();
  1840 +
  1841 + if($newrefund_time<0){
  1842 + $this->error("该订单无法改签,时间过期");
  1843 + }
  1844 + if($newrefund_time<3600){
  1845 + $pay_fee = $order['price'];
  1846 + $rebook_fee = 0;
  1847 + $res = Db::name("order")->where("id",$id)->update(["commission_price"=>$rebook_fee,"rebook"=>1, "order_no" => getOrderSn(),"create_time"=>time()]);
  1848 + $this->success("请求成功");
  1849 + }else if($newrefund_time>3600 & $newrefund_time<7200){
  1850 + $pay_fee = $order['price']*0.8;
  1851 + $rebook_fee = $pay_fee;
  1852 + }else if($newrefund_time>7200 & $newrefund_time<28800){
  1853 + $pay_fee = $order['price']*0.9;
  1854 + $rebook_fee = $pay_fee;
  1855 + }else if($newrefund_time>28800 & $newrefund_time<43200){
  1856 + $pay_fee = $order['price']*0.9;
  1857 + $rebook_fee = $pay_fee;
  1858 + }else if($newrefund_time>43200){
  1859 + $pay_fee = $order['price'];
  1860 + $rebook_fee = 0;
  1861 + $res = Db::name("order")->where("id",$id)->update([
  1862 + "commission_price"=>$rebook_fee,
  1863 + "rebook"=>1,
  1864 + "reservation_time" => $reservation_time,
  1865 + "order_no" => getOrderSn(),
  1866 + "create_time"=>time()
  1867 + ]);
  1868 + $this->success("请求成功");
  1869 + }
1869 } 1870 }
  1871 + $res = Db::name("order")->where("id",$id)->update([
  1872 + "commission_price"=>$rebook_fee,
  1873 + "rebook"=>1,
  1874 + "order_no" => getOrderSn(),
  1875 + "reservation_time" => $reservation_time,
  1876 + "create_time"=>time()
  1877 + ]);
  1878 + $neworder=Db::name("order")->where("id", $id)->find();
  1879 + $userinfo = Db::name('user')
  1880 + ->where(['id' => $this->auth->id])
  1881 + ->field('id,wx_xcx_openid')
  1882 + ->find();
  1883 +
  1884 + $notifyURI = $this->doman . '/addons/epay/api/OrderPayNtf';
  1885 + $params = [
  1886 + 'amount' => $neworder['commission_price'],
  1887 + 'orderid' => $neworder['order_no'],
  1888 + 'type' => 'wechat',
  1889 + 'notifyurl' => $notifyURI,
  1890 + 'method' => 'miniapp',
  1891 + 'openid' => $userinfo['wx_xcx_openid'],
  1892 + ];
  1893 + $f = \addons\epay\library\Service::submitOrder($params);
  1894 + $data=[
  1895 + "pay"=>$f,
  1896 + "commission_price"=>$neworder['commission_price'],
  1897 + ];
  1898 + $this->success("请求成功", $data);
  1899 + } catch (UploadException $e) {
  1900 + $this->error($e->getMessage());
1870 } 1901 }
1871 - $res = Db::name("order")->where("id",$id)->update([  
1872 - "commission_price"=>$rebook_fee,  
1873 - "rebook"=>1,  
1874 - "order_no" => getOrderSn(),  
1875 - "reservation_time" => $reservation_time,  
1876 - "create_time"=>time()  
1877 - ]);  
1878 - $neworder=Db::name("order")->where("id", $id)->find();  
1879 - $userinfo = Db::name('user')  
1880 - ->where(['id' => $this->auth->id])  
1881 - ->field('id,wx_xcx_openid')  
1882 - ->find(); 1902 + }
1883 1903
1884 - $notifyURI = $this->doman . '/addons/epay/api/OrderPayNtf';  
1885 - $params = [  
1886 - 'amount' => $neworder['commission_price'],  
1887 - 'orderid' => $neworder['order_no'],  
1888 - 'type' => 'wechat',  
1889 - 'notifyurl' => $notifyURI,  
1890 - 'method' => 'miniapp',  
1891 - 'openid' => $userinfo['wx_xcx_openid'],  
1892 - ];  
1893 - $f = \addons\epay\library\Service::submitOrder($params);  
1894 - $data=[  
1895 - "pay"=>$f,  
1896 - "commission_price"=>$neworder['commission_price'],  
1897 - ];  
1898 - $this->success("请求成功", $data); 1904 + /**
  1905 + * 改签价格计算
  1906 + * @return void
  1907 + */
  1908 + public function countrebook(){
  1909 + $id = $this->request->param("order_id");
  1910 + $reservation_time = $this->request->param("reservation_time");//预约时间
  1911 + $order = Db::name("order")->where("id", $id)->find();
  1912 + $departure_time=substr($reservation_time,0,16);
  1913 + $refund_time=substr($order['reservation_time'],0,16);
  1914 +//下单五分钟后五收取手续费
  1915 + $create_time=$order['create_time'];
  1916 + $newtime=time()-$create_time;
  1917 + try {
  1918 + if($newtime<300){
  1919 +// print_r([$create_time,$newtime]);
  1920 + $pay_fee = $order['price'];
  1921 + $rebook_fee = 0;
  1922 + }else {
  1923 + $refund_time=strtotime($refund_time);
  1924 + $newrefund_time=$refund_time-time();
  1925 +
  1926 + if($newrefund_time<0){
  1927 + $this->error("该订单无法改签,时间过期");
  1928 + }
  1929 + if($newrefund_time<3600){
  1930 + $pay_fee = $order['price'];
  1931 + $rebook_fee = 0;
  1932 + }else if($newrefund_time>3600 & $newrefund_time<7200){
  1933 + $pay_fee = $order['price']*0.8;
  1934 + $rebook_fee = $pay_fee;
  1935 + }else if($newrefund_time>7200 & $newrefund_time<28800){
  1936 + $pay_fee = $order['price']*0.9;
  1937 + $rebook_fee = $pay_fee;
  1938 + }else if($newrefund_time>28800 & $newrefund_time<43200){
  1939 + $pay_fee = $order['price']*0.9;
  1940 + $rebook_fee = $pay_fee;
  1941 + }else if($newrefund_time>43200){
  1942 + $pay_fee = $order['price'];
  1943 + $rebook_fee = 0;
  1944 +
  1945 + }
  1946 + }
  1947 + $data=["rebook_fee"=>$rebook_fee];
  1948 + $this->success("请求成功", $data);
1899 } catch (UploadException $e) { 1949 } catch (UploadException $e) {
1900 $this->error($e->getMessage()); 1950 $this->error($e->getMessage());
1901 } 1951 }