You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

cashier.php 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. <?php
  2. use app\http\middleware\AllowOriginMiddleware;
  3. use app\http\middleware\InstallMiddleware;
  4. use app\http\middleware\cashier\AuthTokenMiddleware;
  5. use app\http\middleware\cashier\CashierCheckRoleMiddleware;
  6. use app\http\middleware\StationOpenMiddleware;
  7. use think\facade\Config;
  8. use think\facade\Route;
  9. use think\Response;
  10. /**
  11. * 门店路由配置
  12. */
  13. Route::group('cashierapi', function () {
  14. /**
  15. * 不需要登录不验证权限
  16. */
  17. Route::group(function () {
  18. //账号密码登录
  19. Route::post('login', 'Login/login')->name('login')->option(['real_name' => '账号密码登录']);
  20. //微信扫码登录
  21. Route::get('wechat_scan_login', 'Login/wechatScanLogin')->name('wechatScanLogin')->option(['real_name' => '微信扫码登录']);
  22. //企业微信扫码登录
  23. Route::get('work_scan_login', 'Login/workScanLogin')->name('workScanLogin')->option(['real_name' => '企业微信扫码登录']);
  24. //企业微信配置
  25. Route::get('work/config', 'Login/getWechatConfig')->name('getWechatConfig')->option(['real_name' => '企业微信配置']);
  26. //扫码登录状态信息检测获取
  27. Route::post('check_scan_login', 'Login/checkScanLogin')->name('checkScanLogin')->option(['real_name' => '扫码登录状态信息检测获取']);
  28. //登录信息
  29. Route::get('login/info', 'Login/info')->name('loginInfo')->option(['real_name' => '登录信息']);
  30. //图片验证码
  31. Route::get('captcha_store', 'Login/captcha')->name('captcha')->option(['real_name' => '图片验证码']);
  32. });
  33. /**
  34. * 只需登录不验证权限
  35. */
  36. Route::group(function () {
  37. //获取logo
  38. Route::get('logo', 'Common/getLogo')->option(['real_name' => '获取logo']);
  39. //获取配置
  40. Route::get('config', 'Common/getConfig')->option(['real_name' => '获取配置']);
  41. //erp配置
  42. Route::get('erp/config', 'Common/getConfig')->option(['real_name' => '获取配置']);
  43. //获取未读消息
  44. Route::get('jnotice', 'Common/jnotice')->option(['real_name' => '获取未读消息']);
  45. //获取省市区街道
  46. Route::get('city', 'Common/city')->option(['real_name' => '获取省市区街道']);
  47. //获取搜索菜单列表
  48. Route::get('menusList', 'Common/menusList')->option(['real_name' => '搜索菜单列表']);
  49. //修改当前管理员信息
  50. Route::put('update_store', 'Login/updateStore')->name('updateStore')->option(['real_name' => '修改当前登录店员信息']);
  51. //退出登录
  52. Route::get('logout', 'Login/logOut')->option(['real_name' => '退出登录']);
  53. //修改收银员信息
  54. Route::put('updatePwd', 'User/updatePwd')->option(['real_name' => '修改收银员信息']);
  55. //公共类
  56. Route::post('upload/image', 'Common/upload_image')->name('uploadImage');//图片上传
  57. })->middleware(AuthTokenMiddleware::class);
  58. /**
  59. * 需登录验证权限
  60. */
  61. Route::group(function () {
  62. //首页头部统计数据
  63. Route::get('home/header', 'Common/homeStatics')->option(['real_name' => '首页头部统计数据']);
  64. //首页营业趋势图表
  65. Route::get('home/operate', 'Common/operateChart')->option(['real_name' => '首页营业趋势图表']);
  66. //首页交易图表
  67. Route::get('home/orderChart', 'Common/orderChart')->option(['real_name' => '首页交易图表']);
  68. //首页店员统计
  69. Route::get('home/staff', 'Common/staffChart')->option(['real_name' => '首页店员统计']);
  70. //轮询查询扫码订单支付状态
  71. Route::post('check_order_status/:type', 'Common/checkOrderStatus')->option(['real_name' => '轮询订单状态接口'])->name('checkOrderStatus');//轮询订单状态接口
  72. //获取充值套餐
  73. Route::get('store/recharge_info', 'Recharge/rechargeInfo')->option(['real_name' => '获取充值套餐']);
  74. //收银台用户充值
  75. Route::post('store/recharge', 'Recharge/recharge')->option(['real_name' => '获取充值套餐']);
  76. //获取登录店员详情
  77. Route::get('user/cashier_info', 'User/getCashierInfo')->option(['real_name' => '获取登录店员详情']);
  78. //获取当前门店店员列表和店员信息
  79. Route::get('user/cashier_list', 'User/getCashierList')->option(['real_name' => '获取当前门店店员列表和店员信息']);
  80. //收银台选择用户列表
  81. Route::get('user/get_list', 'User/getUserList')->option(['real_name' => '收银台选择用户列表']);
  82. //收银台切换购物车用户
  83. Route::post('user/switch/:cashierId', 'User/switchCartUser')->option(['real_name' => '收银台切换购物车用户']);
  84. //获取收银台用户信息
  85. Route::post('user/user_Info', 'User/getUserInfo')->option(['real_name' => '获取收银台用户信息']);
  86. //收银台获取当前用户信息
  87. Route::get('user/info/:uid', 'User/getUidInfo')->option(['real_name' => '获取当前用户信息']);
  88. //收银台获取当前用户记录
  89. Route::get('user/record/:uid', 'User/userRecord')->option(['real_name' => '收银台获取当前用户记录']);
  90. //获取收银订单用户
  91. Route::get('order/get_user_list/:cashierId', 'Order/getUserList')->option(['real_name' => '获取收银订单用户']);
  92. //收银台挂单列表
  93. Route::get('order/get_hang_list/:cashierId', 'Order/getHangList')->option(['real_name' => '收银台挂单列表']);
  94. //收银台删除挂单
  95. Route::delete('order/del_hang', 'Order/deleteHangOrder')->option(['real_name' => '收银台删除挂单']);
  96. //收银台订单列表
  97. Route::post('order/get_order_list/[:orderType]', 'Order/getOrderList')->option(['real_name' => '收银台订单列表']);
  98. //收银台核销订单列表
  99. Route::post('order/get_verify_list', 'Order/getVerifyList')->option(['real_name' => '收银台核销订单列表']);
  100. //收银台核销订单数据
  101. Route::get('order/verify_cart_info', 'Order/verifyCartInfo')->option(['real_name' => '收银台核销订单数据']);
  102. //收银台订单核销
  103. Route::put('order/write_off/:id', 'Order/writeOff')->option(['real_name' => '订单号核销']);
  104. //收银台订单详情
  105. Route::get('order/get_order_Info/:id', 'Order/order_info')->option(['real_name' => '收银台订单详情']);
  106. //收银台获取订单状态
  107. Route::get('order/get_order_status/:id', 'Order/status')->option(['real_name' => '获取订单状态']);
  108. //收银台计算订单金额
  109. Route::post('order/compute/:uid', 'Order/orderCompute')->option(['real_name' => '收银台计算订单金额']);
  110. //收银台创建订单
  111. Route::post('order/create/:uid', 'Order/createOrder')->option(['real_name' => '收银台创建订单']);
  112. //收银台再次支付订单
  113. Route::post('order/pay/:orderId', 'Order/payOrder')->option(['real_name' => '收银台再次支付订单']);
  114. //收银台订单小票打印
  115. Route::get('order/print/:id', 'Order/order_print')->option(['real_name' => '收银台订单小票打印']);
  116. //收银台订单备注
  117. Route::put('order/remark/:id', 'Order/remark')->option(['real_name' => '收银台订单备注']);
  118. //用户优惠券列表
  119. Route::post('order/coupon_list/:uid', 'Order/couponList')->option(['real_name' => '用户优惠券列表']);
  120. //用户领取优惠券
  121. Route::post('coupon/receive/:uid', 'Order/couponReceive')->option(['real_name' => '用户领取优惠券']);
  122. //收银台获取物流公司
  123. Route::get('order/express_list', 'Order/express')->option(['real_name' => '收银台获取物流公司']);
  124. //收银台获取配送员
  125. Route::get('order/delivery_list', 'Order/getDeliveryList')->option(['real_name' => '收银台获取配送员']);
  126. //面单默认配置信息
  127. Route::get('order/sheet_info', 'Order/getSheetInfo')->option(['real_name' => '面单默认配置信息']);
  128. //获取订单可拆分商品列表
  129. Route::get('order/split_cart_info/:id', 'Order/split_cart_info')->option(['real_name' => '获取订单可拆分商品列表']);
  130. //收银台订单发送货
  131. Route::put('order/delivery/:id', 'Order/updateDelivery')->option(['real_name' => '收银台订单发送货']);
  132. //订单退款表单
  133. Route::get('refund/refund/:id', 'Order/refund')->name('StoreOrderRefund')->option(['real_name' => '订单退款表单']);
  134. //订单退款
  135. Route::put('order/refund/:id', 'Order/update_refund')->name('StoreOrderUpdateRefund')->option(['real_name' => '订单退款']);
  136. //收银台退款订单列表
  137. Route::get('order/get_refund_list', 'Refund/getRefundList')->option(['real_name' => '收银台退款订单列表']);
  138. //收银台退款订单详情
  139. Route::get('order/get_refund_Info/:id', 'Refund/detail')->option(['real_name' => '收银台退款订单详情']);
  140. //售后订单退款
  141. Route::put('order/order_refund/:id', 'Refund/update_refund')->option(['real_name' => '售后订单退款']);
  142. //商家同意退款,等待用户退货
  143. Route::get('order/refund/agree/:id', 'Refund/agreeRefund')->option(['real_name' => '商家同意退款,等待用户退货']);
  144. //售后订单备注
  145. Route::put('order/refund/remark/:id', 'Refund/remark')->option(['real_name' => '售后订单备注']);
  146. //获取商品一级分类
  147. Route::get('product/get_one_category', 'Product/getOneCategory')->option(['real_name' => '获取商品一级分类']);
  148. //获取收银台商品列表
  149. Route::get('product/get_list', 'Product/getProductList')->option(['real_name' => '获取收银台商品列表']);
  150. //获取收银台商品详情
  151. Route::get('product/get_info/:id/[:uid]', 'Product/getProductInfo')->option(['real_name' => '获取收银台商品详情']);
  152. //获取收银台商品规格
  153. Route::get('product/get_attr/:id/[:uid]', 'Product/getProductAttr')->option(['real_name' => '获取收银台商品详情']);
  154. //获取收银台购物车信息
  155. Route::get('cart/get_cart/:uid/:cashierId', 'Order/getCartList')->option(['real_name' => '获取收银台购物车信息']);
  156. //收银台选择商品进入购物车
  157. Route::post('cart/set_cart/:uid', 'Order/addCart')->option(['real_name' => '收银台添加购物车']);
  158. //收银台更改购物车数量
  159. Route::put('cart/set_cart_num/:uid', 'Order/numCart')->option(['real_name' => '收银台更改购物车数量']);
  160. //收银台删除购物车信息
  161. Route::delete('cart/del_cart/:uid', 'Order/delCart')->option(['real_name' => '收银台删除购物车信息']);
  162. //收银台更改购物车规格
  163. Route::put('cart/change_cart', 'Order/changeCart')->option(['real_name' => '收银台更改购物车规格']);
  164. //获取活动商品数量信息
  165. Route::get('promotions/count/:uid', 'Promotions/promotionsCount')->option(['real_name' => '获取收银台购物车信息']);
  166. //收银台获取活动商品列表
  167. Route::get('promotions/activity_list/:uid/:type', 'Promotions/activityList')->option(['real_name' => '收银台获取活动商品列表']);
  168. })->middleware([AuthTokenMiddleware::class, CashierCheckRoleMiddleware::class]);
  169. /**
  170. * miss 路由
  171. */
  172. Route::miss(function () {
  173. if (app()->request->isOptions()) {
  174. $header = Config::get('cookie.header');
  175. $header['Access-Control-Allow-Origin'] = app()->request->header('origin');
  176. return Response::create('ok')->code(200)->header($header);
  177. } else
  178. return Response::create()->code(404);
  179. });
  180. })->prefix('cashier.')->middleware(InstallMiddleware::class)->middleware(AllowOriginMiddleware::class)->middleware(StationOpenMiddleware::class);