api.php 62 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829
  1. <?php
  2. use app\http\middleware\AllowOriginMiddleware;
  3. use app\http\middleware\api\AuthTokenMiddleware;
  4. use app\http\middleware\api\BlockerMiddleware;
  5. use app\http\middleware\api\ClientMiddleware;
  6. use app\http\middleware\InstallMiddleware;
  7. use app\http\middleware\StationOpenMiddleware;
  8. use think\facade\Config;
  9. use think\facade\Route;
  10. use think\Response;
  11. /**
  12. * 用户端路由配置
  13. */
  14. Route::group('api', function () {
  15. /**
  16. * 无需授权接口
  17. */
  18. Route::group(function () {
  19. Route::get('geoLbscoder', 'v1.PublicController/geoLbscoder')->name('geoLbscoder');//经纬度转位置信息
  20. Route::get('city', 'v2.PublicController/city')->name('city');//增加省市区
  21. Route::get('site_config', 'v1.PublicController/getSiteConfig')->name('getSiteConfig');//获取网站配置
  22. Route::get('navigation/[:template_name]', 'v1.PublicController/getNavigation')->name('getNavigation');//获取底部导航
  23. Route::get('search/keyword', 'v1.PublicController/search')->name('searchKeyword');//热门搜索关键字获取
  24. Route::get('category', 'v1.product.CategoryController/category')->name('category');//商品分类类
  25. Route::get('category_version', 'v1.product.CategoryController/getCategoryVersion')->name('getCategoryVersion');//商品分类类版本
  26. Route::get('reply/list/:id', 'v1.product.StoreProductController/reply_list')->name('replyList');//商品评价列表
  27. Route::get('reply/config/:id', 'v1.product.StoreProductController/reply_config')->name('replyConfig');//商品评价数量和好评度
  28. Route::get('user_agreement/[:type]', 'v1.PublicController/getUserAgreement')
  29. ->name('getUserAgreement')
  30. ->middleware(AuthTokenMiddleware::class, false);//获取用户协议
  31. Route::get('get_open_adv', 'v1.PublicController/getOpenAdv')->name('getOpenAdv');//首页开屏广告
  32. })->middleware(StationOpenMiddleware::class);
  33. /**
  34. * 授权不通过,不会抛出异常继续执行
  35. */
  36. Route::group(function () {
  37. //公共类
  38. Route::get('index', 'v1.PublicController/index')->name('index');//首页
  39. Route::any('test', 'v1.PublicController/test')->name('test');//测试
  40. Route::get('menu/user', 'v1.PublicController/menu_user')->name('menuUser');//个人中心菜单
  41. //商品类
  42. Route::get('brand', 'v1.product.StoreProductController/brand')->name('brand');//品牌列表
  43. Route::get('presale/list', 'v1.product.StoreProductController/presaleList')->name('presaleList');//预售商品列表
  44. Route::post('image_base64', 'v1.PublicController/get_image_base64')->name('getImageBase64');// 获取图片base64
  45. Route::get('product/detail/recommend/:id', 'v1.product.StoreProductController/recommend')->name('productRecommend');//商品详情推荐商品
  46. Route::get('product/detail/activity/:id', 'v1.product.StoreProductController/activity')->name('productActivity');//商品详情关联活动
  47. Route::get('product/detail/:id/[:type]', 'v1.product.StoreProductController/detail')->name('detail');//商品详情
  48. Route::get('product/store/detail/:id', 'v2.product.StoreProductController/getStoreProductInfo')->name('getStoreProductInfo');//用平台商品ID获取门店该商品详情
  49. Route::get('product/detail_content/:id/', 'v1.product.StoreProductController/detailContent')->name('detailContent');//商品详情内容
  50. Route::get('groom/list/:type', 'v1.product.StoreProductController/groom_list')->name('groomList');//获取首页推荐不同类型商品的轮播图和商品
  51. Route::get('products', 'v1.product.StoreProductController/lst')->name('products');//商品列表
  52. Route::get('product/hot', 'v1.product.StoreProductController/product_hot')->name('productHot');//为你推荐
  53. Route::get('reply/comment/:id', 'v1.product.StoreProductController/commentList')->name('commentList');//评价回复列表
  54. //文章分类类
  55. Route::get('article/category/list', 'v1.publics.ArticleCategoryController/lst')->name('articleCategoryList');//文章分类列表
  56. //文章类
  57. Route::get('article/list/:cid', 'v1.publics.ArticleController/lst')->name('articleList');//文章列表
  58. Route::get('article/details/:id', 'v1.publics.ArticleController/details')->name('articleDetails');//文章详情
  59. Route::get('article/hot/list', 'v1.publics.ArticleController/hot')->name('articleHotList');//文章 热门
  60. Route::get('article/new/list', 'v1.publics.ArticleController/new')->name('articleNewList');//文章 最新
  61. Route::get('article/banner/list', 'v1.publics.ArticleController/banner')->name('articleBannerList');//文章 banner
  62. //活动---秒杀
  63. Route::get('seckill/index', 'v1.activity.StoreSeckillController/index')->name('seckillIndex');//秒杀商品时间区间
  64. Route::get('seckill/list/:time', 'v1.activity.StoreSeckillController/lst')->name('seckillList');//秒杀商品列表
  65. Route::get('seckill/detail/:id/[:time]', 'v1.activity.StoreSeckillController/detail')->name('seckillDetail');//秒杀商品详情
  66. Route::get('seckill/detail_code/:id', 'v1.activity.StoreSeckillController/detailCode')->name('seckilldetailCode');//秒杀商品二维码
  67. //活动---砍价
  68. Route::get('bargain/config', 'v1.activity.StoreBargainController/config')->name('bargainConfig');//砍价商品列表配置
  69. Route::get('bargain/list', 'v1.activity.StoreBargainController/lst')->name('bargainList');//砍价商品列表
  70. Route::get('bargain/detail/:id', 'v1.activity.StoreBargainController/detail')->name('bargainDetail');//砍价商品详情
  71. //活动---拼团
  72. Route::get('combination/list', 'v1.activity.StoreCombinationController/lst')->name('combinationList');//拼团商品列表
  73. Route::get('combination/detail/:id', 'v1.activity.StoreCombinationController/detail')->name('combinationDetail');//拼团商品详情
  74. Route::get('combination/detail_code/:id', 'v1.activity.StoreCombinationController/detailCode')->name('detailCode');//拼团商品详情二维码
  75. //用户类
  76. Route::get('user/activity', 'v1.user.UserController/activity')->name('userActivity');//活动状态
  77. //微信
  78. Route::get('wechat/config', 'v1.wechat.WechatController/config')->name('wechatConfig');//微信 sdk 配置
  79. Route::get('wechat/auth', 'v1.wechat.WechatController/auth')->name('wechatAuth');//微信授权
  80. Route::post('wechat/app_auth', 'v1.wechat.WechatController/appAuth')->name('appAuth');//微信APP授权
  81. //小程序登陆
  82. Route::post('wechat/mp_auth', 'v1.wechat.AuthController/mp_auth')->name('mpAuth');//小程序登陆
  83. Route::get('wechat/get_logo', 'v1.PublicController/getLogo')->name('getLogo');//登陆页面logo
  84. Route::get('wechat/teml_ids', 'v1.wechat.AuthController/teml_ids')->name('wechatTemlIds');//小程序订阅消息
  85. Route::get('wechat/live', 'v1.wechat.AuthController/live')->name('wechatLive');//小程序直播列表
  86. Route::get('wechat/livePlaybacks/:id', 'v1.wechat.AuthController/livePlaybacks')->name('livePlaybacks');//小程序直播回放
  87. //物流公司
  88. Route::get('logistics', 'v1.PublicController/logistics')->name('logistics');//物流公司列表
  89. //分享配置
  90. Route::get('share', 'v1.PublicController/share')->name('share');//分享配置
  91. //优惠券
  92. Route::get('coupons', 'v1.activity.StoreCouponsController/lst')->name('couponsList'); //可领取优惠券列表
  93. //短信购买异步通知
  94. Route::post('sms/pay/notify', 'v1.PublicController/sms_pay_notify')->name('smsPayNotify'); //短信购买异步通知
  95. //获取关注微信公众号海报
  96. Route::get('wechat/follow', 'v1.wechat.WechatController/follow')->name('Follow');
  97. //用户是否关注
  98. Route::get('subscribe', 'v1.user.UserController/subscribe')->name('Subscribe');
  99. //门店列表
  100. Route::get('store_list', 'v1.PublicController/store_list')->name('storeList');
  101. //获取城市列表
  102. Route::get('city_list', 'v1.PublicController/city_list')->name('cityList');
  103. //获取附近最近门店
  104. Route::get('nearby_store', 'v1.store.StoreController/nearbyStore')->name('nearbyStore');
  105. Route::get('pink', 'v1.PublicController/pink')->name('pinkData');
  106. Route::get('combination/banner_list', 'v1.activity.StoreCombinationController/banner_list')->name('combinationBannerList');//拼团列表轮播图
  107. Route::post('user/set_visit', 'v1.user.UserController/set_visit')->name('setVisit');// 添加用户访问记录
  108. Route::get('copy_words', 'v1.PublicController/copy_words')->name('copyWords');// 复制口令接口
  109. //活动---积分商城
  110. Route::get('store_integral/index', 'v1.activity.StoreIntegralController/index')->name('storeIntegralIndex');//积分商城首页数据
  111. Route::get('store_integral/list', 'v1.activity.StoreIntegralController/lst')->name('storeIntegralList');//积分商品列表
  112. Route::get('store_integral/detail/:id', 'v1.activity.StoreIntegralController/detail')->name('storeIntegralDetail');//积分商品详情
  113. //优惠套餐列表
  114. Route::get('store_discounts/list/:product_id', 'v1.activity.StoreDiscountsController/index');
  115. //获取客服类型
  116. Route::get('get_customer_type', 'v2.PublicController/getCustomerType')->name('getCustomerType');//获取客服类型
  117. Route::get('user/service/get_adv', 'v1.user.StoreService/getKfAdv')->name('userServiceGetKfAdv');//获取客服页面广告
  118. })->middleware(StationOpenMiddleware::class)->middleware(AuthTokenMiddleware::class, false);
  119. /**
  120. * diy相关
  121. */
  122. Route::group('diy', function () {
  123. //无需登录接口
  124. Route::group(function () {
  125. Route::get('get_diy/[:id]', 'v1.PublicController/getDiy');//DIY接口
  126. Route::get('diy_version/[:id]', 'v1.PublicController/getDiyVersion');//DIY版本接口
  127. });
  128. //未授权接口---不会抛异常
  129. Route::group(function () {
  130. Route::get('user_info', 'v1.diy.Diy/userInfo')->name('diyUserInfo');//diy用户信息
  131. Route::get('video_list', 'v1.diy.Diy/videoList')->name('diyVideoList');//diy短视频列表
  132. Route::get('newcomer_list', 'v1.diy.Diy/newcomerList')->name('diyNewcomerList');//diy新人专享商品列表
  133. })->middleware(AuthTokenMiddleware::class, false);
  134. //需要授权接口
  135. Route::group(function () {
  136. })->middleware(AuthTokenMiddleware::class, true);
  137. })->middleware(StationOpenMiddleware::class);
  138. Route::any('wechat/serve', 'v1.wechat.WechatController/serve');//公众号服务
  139. Route::any('wechat/miniServe', 'v1.wechat.WechatController/miniServe');//小程序服务
  140. Route::any('work/serve', 'v1.wechat.WechatController/work');//公众号服务
  141. Route::any('wechat/notify', 'v1.wechat.WechatController/notify');//公众号支付回调
  142. Route::any('routine/notify', 'v1.wechat.AuthController/notify');//小程序支付回调
  143. Route::any('pay/notify/:type', 'v1.PayController/notify');//支付回调
  144. Route::any('city_delivery/notify', 'v1.CityDeliveryController/notify');//UU、达达回调
  145. Route::get('get_script', 'v1.PublicController/getScript');//统计代码
  146. Route::get('get_copyright', 'v1.PublicController/getCopyright');//获取版权
  147. //图形验证码
  148. Route::get('ajcaptcha', 'v1.LoginController/ajcaptcha')->name('ajcaptcha');
  149. //图形验证码
  150. Route::post('ajcheck', 'v1.LoginController/ajcheck')->name('ajcheck');
  151. /**
  152. * 登录类
  153. */
  154. Route::group(function () {
  155. //apple快捷登陆
  156. Route::post('apple_login', 'v1.LoginController/appleLogin')->name('appleLogin');//微信APP授权
  157. //账号密码登录
  158. Route::post('login', 'v1.LoginController/login')->name('login');
  159. // 获取发短信的key
  160. Route::get('verify_code', 'v1.LoginController/verifyCode')->name('verifyCode');
  161. //手机号登录
  162. Route::post('login/mobile', 'v1.LoginController/mobile')->name('loginMobile');
  163. //图片验证码
  164. Route::get('sms_captcha', 'v1.LoginController/captcha')->name('captcha');
  165. //验证码发送
  166. Route::post('register/verify', 'v1.LoginController/verify')->name('registerVerify');
  167. //手机号注册
  168. Route::post('register', 'v1.LoginController/register')->name('register');
  169. //手机号修改密码
  170. Route::post('register/reset', 'v1.LoginController/reset')->name('registerReset');
  171. // 绑定手机号(静默授权 还未有用户信息)
  172. Route::post('binding', 'v1.LoginController/binding_phone')->name('bindingPhone');
  173. // 支付宝复制链接支付
  174. Route::get('ali_pay', 'v1.order.StoreOrderController/aliPay')->name('aliPay');
  175. })->middleware(StationOpenMiddleware::class);
  176. /**
  177. * 会员授权接口
  178. */
  179. Route::group(function () {
  180. //保存商品评价回复
  181. Route::post('reply/comment/:id', 'v1.product.StoreProductController/replyComment')->name('replyComment');
  182. //获取评论详情
  183. Route::get('reply/info/:id', 'v1.product.StoreProductController/replyInfo')->name('replyInfo');
  184. //评论回复点赞
  185. Route::post('reply/praise/:id', 'v1.product.StoreProductController/commentPraise')->name('commentPraise');
  186. //取消评论回复点赞
  187. Route::post('reply/un_praise/:id', 'v1.product.StoreProductController/unCommentPraise')->name('unCommentPraise');
  188. //评论点赞
  189. Route::post('reply/reply_praise/:id', 'v1.product.StoreProductController/replyPraise')->name('replyPraise');
  190. //取消评论点赞
  191. Route::post('reply/un_reply_praise/:id', 'v1.product.StoreProductController/unReplyPraise')->name('unReplyPraise');
  192. // 用户注销
  193. Route::get('cancel/user', 'v1.PublicController/cancelUser')->name('cancelUser');
  194. //用户修改手机号
  195. Route::post('user/updatePhone', 'v1.LoginController/update_binding_phone')->name('updateBindingPhone');
  196. //设置登录code
  197. Route::post('user/code', 'v1.user.StoreService/setLoginCode')->name('setLoginCode');
  198. //查看code是否可用
  199. Route::get('user/code', 'v1.LoginController/setLoginKey')->name('getLoginKey');
  200. //用户绑定手机号
  201. Route::post('user/binding', 'v1.LoginController/user_binding_phone')->name('userBindingPhone');
  202. Route::get('logout', 'v1.LoginController/logout')->name('logout');// 退出登录
  203. Route::post('switch_h5', 'v1.LoginController/switch_h5')->name('switch_h5');// 切换账号
  204. //商品类
  205. Route::get('product/code/:id', 'v1.product.StoreProductController/code')->name('productCode');//商品分享二维码 推广员
  206. //公共类
  207. Route::post('upload/image', 'v1.PublicController/upload_image')->name('uploadImage');//图片上传
  208. //用户类 客服聊天记录
  209. Route::get('user/service/list', 'v1.user.StoreService/lst')->name('userServiceList');//客服列表
  210. Route::get('user/service/record', 'v1.user.StoreService/record')->name('userServiceRecord');//客服聊天记录
  211. Route::post('user/service/feedback', 'v1.user.StoreService/saveFeedback')->name('saveFeedback');//保存客服反馈信息
  212. Route::get('user/service/feedback', 'v1.user.StoreService/getFeedbackInfo')->name('getFeedbackInfo');//获得客服反馈头部信息
  213. Route::get('user/record', 'v1.user.StoreService/recordList')->name('recordList');//获取用户和客服的消息列表
  214. //用户类 用户
  215. Route::get('user', 'v1.user.UserController/user')->name('user');//个人中心
  216. Route::post('user/spread', 'v1.user.UserController/spread')->name('userSpread');//静默绑定授权
  217. Route::post('user/edit', 'v1.user.UserController/edit')->name('userEdit');//用户修改信息
  218. Route::get('user/balance', 'v1.user.UserController/balance')->name('userBalance');//用户资金统计
  219. Route::get('userinfo', 'v1.user.UserController/userinfo')->name('userinfo');// 用户信息
  220. Route::get('user/rand_code', 'v1.user.UserController/randCode')->name('randCode');//查看用户code
  221. Route::get('user/visit_list', 'v1.user.UserController/visitList')->name('visitList');//商品浏览列表
  222. Route::delete('user/visit', 'v1.user.UserController/visitDelete')->name('visitDelete');//商品浏览记录删除
  223. //积分类
  224. Route::get('award_integral/:type', 'v1.user.UserController/awardIntegralList')->name('awardIntegralList');//活动积分详情
  225. Route::post('award_integral/:id', 'v1.user.UserController/extractIntegral')->name('extractIntegral');//提取积分
  226. //用户类 地址
  227. Route::get('address/detail/:id', 'v1.user.UserAddressController/address')->name('address');//获取单个地址
  228. Route::get('address/list', 'v1.user.UserAddressController/address_list')->name('addressList');//地址列表
  229. Route::post('address/default/set', 'v1.user.UserAddressController/address_default_set')->name('addressDefaultSet');//设置默认地址
  230. Route::get('address/default', 'v1.user.UserAddressController/address_default')->name('addressDefault');//获取默认地址
  231. Route::post('address/edit', 'v1.user.UserAddressController/address_edit')->name('addressEdit');//修改 添加 地址
  232. Route::post('address/del', 'v1.user.UserAddressController/address_del')->name('addressDel');//删除地址
  233. //用户类 收藏
  234. Route::get('collect/user', 'v1.user.UserCollectController/collect_user')->name('collectUser');//收藏商品列表
  235. Route::post('collect/add', 'v1.user.UserCollectController/collect_add')->name('collectAdd');//添加收藏
  236. Route::post('collect/del', 'v1.user.UserCollectController/collect_del')->name('collectDel');//取消收藏
  237. Route::post('collect/all', 'v1.user.UserCollectController/collect_all')->name('collectAll');//批量添加收藏
  238. Route::get('brokerage_rank', 'v1.user.UserBrokerageController/brokerage_rank')->name('brokerageRank');//佣金排行
  239. Route::get('rank', 'v1.user.UserController/rank')->name('rank');//推广人排行
  240. //用戶类 分享
  241. Route::post('user/share', 'v1.PublicController/user_share')->name('user_share');//记录用户分享
  242. Route::get('user/share/words', 'v1.PublicController/copy_share_words')->name('user_share_words');//关键字分享
  243. //用户类 点赞
  244. // Route::post('like/add', 'user.UserController/like_add')->name('likeAdd');//添加点赞
  245. // Route::post('like/del', 'user.UserController/like_del')->name('likeDel');//取消点赞
  246. //用户类 签到
  247. Route::get('sign/config', 'v1.user.UserSignController/sign_config')->name('signConfig');//签到配置
  248. Route::get('sign/list', 'v1.user.UserSignController/sign_list')->name('signList');//签到列表
  249. Route::get('sign/month', 'v1.user.UserSignController/sign_month')->name('signIntegral');//签到列表(年月)
  250. Route::post('sign/user', 'v1.user.UserSignController/sign_user')->name('signUser');//签到用户信息
  251. Route::post('sign/integral', 'v1.user.UserSignController/sign_integral')->middleware(BlockerMiddleware::class)->name('signIntegral');//签到
  252. //优惠券类
  253. Route::post('coupon/receive', 'v1.activity.StoreCouponsController/receive')->name('couponReceive'); //领取优惠券
  254. Route::post('coupon/receive/batch', 'v1.activity.StoreCouponsController/receive_batch')->name('couponReceiveBatch'); //批量领取优惠券
  255. Route::get('coupons/user/:types', 'v1.activity.StoreCouponsController/user')->name('couponsUser');//用户已领取优惠券
  256. Route::get('coupons/order/:price', 'v1.activity.StoreCouponsController/order')->name('couponsOrder');//优惠券 订单列表
  257. //购物车类
  258. Route::get('cart/list', 'v1.order.StoreCartController/lst')->name('cartList'); //购物车列表
  259. Route::post('cart/compute', 'v1.order.StoreCartController/computeCart')->name('computeCart'); //购物车列表重新计算
  260. Route::post('cart/add', 'v1.order.StoreCartController/add')->middleware(BlockerMiddleware::class)->name('cartAdd'); //购物车添加
  261. Route::post('cart/del', 'v1.order.StoreCartController/del')->name('cartDel'); //购物车删除
  262. Route::post('order/cancel', 'v1.order.StoreOrderController/cancel')->name('orderCancel'); //订单取消
  263. Route::post('cart/num', 'v1.order.StoreCartController/num')->name('cartNum'); //购物车 修改商品数量
  264. Route::get('cart/count', 'v1.order.StoreCartController/count')->name('cartCount'); //购物车 获取数量
  265. //订单类
  266. Route::post('order/check_shipping', 'v1.order.StoreOrderController/checkShipping')->name('checkShipping'); //检测是否显示快递和自提标签
  267. Route::post('order/confirm', 'v1.order.StoreOrderController/confirm')->name('orderConfirm'); //订单确认
  268. Route::post('order/computed/:key', 'v1.order.StoreOrderController/computedOrder')->name('computedOrder'); //计算订单金额
  269. Route::post('order/create/:key', 'v1.order.StoreOrderController/create')->middleware(BlockerMiddleware::class)->name('orderCreate'); //订单创建
  270. Route::get('order/data', 'v1.order.StoreOrderController/data')->name('orderData'); //订单统计数据
  271. Route::get('order/list', 'v1.order.StoreOrderController/lst')->name('orderList'); //订单列表
  272. Route::get('order/detail/:uni', 'v1.order.StoreOrderController/detail')->name('orderDetail'); //订单详情
  273. Route::get('order/write/records/:id', 'v1.order.StoreOrderController/writeOffRecords')->name('writeOffRecords'); //订单核销记录
  274. Route::get('delivery_order/detail/:id', 'v1.order.StoreOrderController/deliveryOrderDetail')->name('deliveryOrderDetail'); //配送订单详情
  275. //订单售后
  276. Route::get('order/refund/reason', 'v1.order.StoreOrderController/refund_reason')->name('orderRefundReason'); //订单退款理由
  277. Route::get('order/refund/cart_info/:id', 'v1.order.StoreOrderController/refundCartInfo')->name('StoreOrderRefundCartInfo');//获取退款商品列表
  278. Route::post('order/refund/cart_info', 'v1.order.StoreOrderController/refundCartInfoList')->name('StoreOrderRefundCartInfoList');//获取退款商品列表
  279. Route::post('order/refund/apply/:id', 'v1.order.StoreOrderController/applyRefund')->middleware(BlockerMiddleware::class)->name('StoreOrderApplRefund');//订单申请退款V2
  280. Route::post('order/refund/verify', 'v1.order.StoreOrderController/refund_verify')->middleware(BlockerMiddleware::class)->name('orderRefundVerify'); //订单申请退款
  281. Route::post('order/refund/express', 'v1.order.StoreOrderController/refund_express')->name('orderRefundExpress'); //退货退款填写订单号
  282. Route::get('order/refund/list', 'v1.order.StoreOrderRefundController/lst')->name('orderRefundList'); //售后订单列表
  283. Route::get('order/refund/detail/:uni', 'v1.order.StoreOrderRefundController/detail')->name('orderRefundDetail'); //售后订单详情
  284. Route::post('order/refund/cancel/:uni', 'v1.order.StoreOrderRefundController/cancelApply')->name('orderRefundCancel'); //取消售后申请
  285. Route::get('order/refund/del/:uni', 'v1.order.StoreOrderRefundController/delRefundOrder')->name('delRefundOrder'); //删除已退款和拒绝退款的订单
  286. Route::post('order/take', 'v1.order.StoreOrderController/take')->name('orderTake'); //订单收货
  287. Route::get('order/express/:uni/[:type]', 'v1.order.StoreOrderController/express')->name('orderExpress'); //订单查看物流
  288. Route::post('order/del', 'v1.order.StoreOrderController/del')->name('orderDel'); //订单删除
  289. Route::post('order/again', 'v1.order.StoreOrderController/again')->name('orderAgain'); //订单 再次下单
  290. Route::post('order/pay', 'v1.order.StoreOrderController/pay')->name('orderPay'); //订单支付
  291. Route::post('order/product', 'v1.order.StoreOrderController/product')->name('orderProduct'); //订单商品信息
  292. Route::post('order/comment', 'v1.order.StoreOrderController/comment')->middleware(BlockerMiddleware::class)->name('orderComment'); //订单评价
  293. Route::get('order/pay_cashier', 'v1.order.StoreOrderController/payCashierOrder')->name('payCashierOrder'); //用户门店下单付款
  294. //活动---砍价
  295. Route::post('bargain/start', 'v1.activity.StoreBargainController/start')->name('bargainStart');//砍价开启
  296. Route::post('bargain/start/user', 'v1.activity.StoreBargainController/start_user')->name('bargainStartUser');//砍价 开启砍价用户信息
  297. Route::post('bargain/share', 'v1.activity.StoreBargainController/share')->name('bargainShare');//砍价 观看/分享/参与次数
  298. Route::post('bargain/help', 'v1.activity.StoreBargainController/help')->name('bargainHelp');//砍价 帮助好友砍价
  299. Route::post('bargain/help/price', 'v1.activity.StoreBargainController/help_price')->name('bargainHelpPrice');//砍价 砍掉金额
  300. Route::post('bargain/help/count', 'v1.activity.StoreBargainController/help_count')->name('bargainHelpCount');//砍价 砍价帮总人数、剩余金额、进度条、已经砍掉的价格
  301. Route::post('bargain/help/list', 'v1.activity.StoreBargainController/help_list')->name('bargainHelpList');//砍价 砍价帮
  302. Route::get('bargain/user/list', 'v1.activity.StoreBargainController/user_list')->name('bargainUserList');//砍价列表(已参与)
  303. Route::post('bargain/user/cancel', 'v1.activity.StoreBargainController/user_cancel')->name('bargainUserCancel');//砍价取消
  304. Route::get('bargain/poster_info/:bargainId', 'v1.activity.StoreBargainController/posterInfo')->name('posterInfo');//砍价海报详细信息
  305. //活动---拼团
  306. Route::get('combination/pink/:id', 'v1.activity.StoreCombinationController/pink')->name('combinationPink');//拼团开团
  307. Route::post('combination/remove', 'v1.activity.StoreCombinationController/remove')->name('combinationRemove');//拼团 取消开团
  308. Route::get('combination/poster_info/:id', 'v1.activity.StoreCombinationController/posterInfo')->name('pinkPosterInfo');//拼团海报详细获取
  309. //账单类
  310. Route::get('commission', 'v1.user.UserBrokerageController/commission')->name('commission');//推广数据 昨天的佣金 累计提现金额 当前佣金
  311. Route::post('spread/people', 'v1.user.UserController/spread_people')->name('spreadPeople');//推荐用户
  312. Route::post('spread/order', 'v1.user.UserBrokerageController/spread_order')->name('spreadOrder');//推广订单
  313. Route::get('spread/commission/:type', 'v1.user.UserBillController/spread_commission')->name('spreadCommission');//推广佣金明细
  314. Route::get('spread/count/:type', 'v1.user.UserBrokerageController/spread_count')->name('spreadCount');//推广 佣金 3/提现 4 总和
  315. Route::get('integral/list', 'v1.user.UserBillController/integral_list')->name('integralList');//积分记录
  316. Route::get('user/routine_code', 'v1.user.UserBillController/getRoutineCode')->name('getRoutineCode');//小程序二维码
  317. Route::get('user/spread_info', 'v1.user.UserBillController/getSpreadInfo')->name('getSpreadInfo');//获取分销背景等信息
  318. //提现类
  319. Route::get('extract/bank', 'v1.user.UserExtractController/bank')->name('extractBank');//提现银行/提现最低金额
  320. Route::post('extract/cash', 'v1.user.UserExtractController/cash')->name('extractCash');//提现申请
  321. //充值类
  322. Route::post('recharge/recharge', 'v1.user.UserRechargeController/recharge')->name('rechargeRecharge');//统一充值
  323. Route::post('recharge/routine', 'v1.user.UserRechargeController/routine')->name('rechargeRoutine');//小程序充值
  324. Route::post('recharge/wechat', 'v1.user.UserRechargeController/wechat')->name('rechargeWechat');//公众号充值
  325. Route::get('recharge/index', 'v1.user.UserRechargeController/index')->name('rechargeQuota');//充值余额选择
  326. //会员等级类
  327. Route::get('user/level/detection', 'v1.user.UserLevelController/detection')->name('userLevelDetection');//检测用户是否可以成为会员
  328. Route::get('user/level/grade', 'v1.user.UserLevelController/grade')->name('userLevelGrade');//会员等级列表
  329. Route::get('user/level/task/:id', 'v1.user.UserLevelController/task')->name('userLevelTask');//获取等级任务
  330. Route::get('user/level/info', 'v1.user.UserLevelController/userLevelInfo')->name('levelInfo');//获取等级任务
  331. Route::get('user/level/expList', 'v1.user.UserLevelController/expList')->name('expList');//获取等级任务
  332. Route::get('user/level/activate_info', 'v1.user.UserLevelController/activateInfo')->name('userActivateInfo');//用户激活会员卡需要的信息
  333. Route::post('user/level/activate', 'v1.user.UserLevelController/activateLevel')->name('userActivateLevel');//用户激活会员卡
  334. //首页获取未支付订单
  335. Route::get('order/nopay', 'v1.order.StoreOrderController/get_noPay')->name('getNoPay');//获取未支付订单
  336. Route::get('seckill/code/:id', 'v1.activity.StoreSeckillController/code')->name('seckillCode');//秒杀商品海报
  337. Route::get('combination/code/:id', 'v1.activity.StoreCombinationController/code')->name('combinationCode');//拼团商品海报
  338. //会员卡
  339. Route::get('user/member/card/index', 'v1.user.MemberCardController/index')->name('userMemberCardIndex');// 主页会员权益介绍页
  340. Route::post('user/member/card/draw', 'v1.user.MemberCardController/draw_member_card')->name('userMemberCardDraw');//卡密领取会员卡
  341. Route::post('user/member/card/create', 'v1.order.OtherOrderController/create')->name('userMemberCardCreate');//购买卡创建订单
  342. Route::get('user/member/coupons/list', 'v1.user.MemberCardController/memberCouponList')->name('userMemberCouponsList');//会员券列表
  343. Route::get('user/member/overdue/time', 'v1.user.MemberCardController/getOverdueTime')->name('userMemberOverdueTime');//会员时间
  344. //线下付款
  345. Route::post('order/offline/check/price', 'v1.order.OtherOrderController/computed_offline_pay_price')->name('orderOfflineCheckPrice'); //检测线下付款金额
  346. Route::post('order/offline/create', 'v1.order.OtherOrderController/create')->name('orderOfflineCreate'); //检测线下付款金额
  347. Route::get('order/offline/pay/type', 'v1.order.OtherOrderController/pay_type')->name('orderOfflineCreate'); //线下付款支付方式
  348. //积分商城订单
  349. Route::post('store_integral/order/confirm', 'v1.activity.StoreIntegralOrderController/confirm')->name('storeIntegralOrderConfirm'); //订单确认
  350. Route::post('store_integral/order/create', 'v1.activity.StoreIntegralOrderController/create')->name('storeIntegralOrderCreate'); //订单创建
  351. Route::get('store_integral/order/detail/:uni', 'v1.activity.StoreIntegralOrderController/detail')->name('storeIntegralOrderDetail'); //订单详情
  352. Route::get('store_integral/order/list', 'v1.activity.StoreIntegralOrderController/lst')->name('storeIntegralOrderList'); //订单列表
  353. Route::post('store_integral/order/take', 'v1.activity.StoreIntegralOrderController/take')->name('storeIntegralOrderTake'); //订单收货
  354. Route::get('store_integral/order/express/:uni', 'v1.activity.StoreIntegralOrderController/express')->name('storeIntegralOrderExpress'); //订单查看物流
  355. Route::post('store_integral/order/del', 'v1.activity.StoreIntegralOrderController/del')->name('storeIntegralOrderDel'); //订单删除
  356. //消息站内信
  357. Route::get('user/message_system/list', 'v1.user.MessageSystemController/message_list')->name('MessageSystemList'); //站内信列表
  358. Route::get('user/message_system/detail/:id', 'v1.user.MessageSystemController/detail')->name('MessageSystemDetail'); //详情
  359. //供应商申请
  360. Route::get('user/apply/record', 'v1.system.UserApplyController/userApplyRecord')->name('userApplyRecord'); //供应商申请记录
  361. Route::post('user/apply/supplier/:id', 'v1.system.UserApplyController/userApply')->name('userApplySupplier'); //供应商申请
  362. Route::get('user/apply/:id', 'v1.system.UserApplyController/getInfo')->name('userApplyInfo'); //单个申请记录数据
  363. })->middleware(StationOpenMiddleware::class)->middleware(AuthTokenMiddleware::class, true);
  364. /**
  365. * v1.1 版本路由
  366. */
  367. Route::group('v2', function () {
  368. //无需授权接口
  369. Route::group(function () {
  370. //小程序登录页面自动加载,返回用户信息的缓存key,返回是否强制绑定手机号
  371. Route::get('routine/auth_type', 'v2.wechat.AuthController/authType')->option(['real_name' => '小程序页面登录类型']);
  372. //小程序授权登录,返回token
  373. Route::get('routine/auth_login', 'v2.wechat.AuthController/authLogin')->option(['real_name' => '小程序授权登录']);
  374. //小程序授权绑定手机号
  375. Route::post('routine/auth_binding_phone', 'v2.wechat.AuthController/authBindingPhone')->option(['real_name' => '小程序授权绑定手机号']);
  376. //小程序手机号直接登录
  377. Route::post('routine/phone_login', 'v2.wechat.AuthController/phoneLogin')->option(['real_name' => '手机号直接登录']);
  378. //小程序授权后绑定手机号
  379. Route::post('routine/binding_phone', 'v2.wechat.AuthController/BindingPhone')->option(['real_name' => '小程序授权后绑定手机号']);
  380. //公众号授权登录,返回token
  381. Route::get('wechat/auth_login', 'v2.wechat.WechatController/authLogin')->option(['real_name' => '公众号授权登录']);
  382. //公众号授权绑定手机号
  383. Route::post('wechat/auth_binding_phone', 'v2.wechat.WechatController/silenceAuthBindingPhone')->option(['real_name' => '公众号授权绑定手机号']);
  384. //小程序授权
  385. Route::get('wechat/routine_auth', 'v2.wechat.AuthController/auth');
  386. //小程序静默授权
  387. Route::get('wechat/silence_auth', 'v2.wechat.AuthController/silenceAuthNoLogin');
  388. //小程序静默授权登陆
  389. Route::get('wechat/silence_auth_login', 'v2.wechat.AuthController/silenceAuth');
  390. //小程序授权绑定手机号
  391. Route::post('auth_bindind_phone', 'v2.wechat.AuthController/authBindingPhone');
  392. //小程序手机号登录直接绑定
  393. Route::post('phone_silence_auth', 'v2.wechat.AuthController/silenceAuthBindingPhone');
  394. //公众号授权登录
  395. Route::get('wechat/auth', 'v2.wechat.WechatController/auth');
  396. //公众号静默授权
  397. Route::get('wechat/wx_silence_auth', 'v2.wechat.WechatController/silenceAuthNoLogin');
  398. //公众号静默授权登陆
  399. Route::get('wechat/wx_silence_auth_login', 'v2.wechat.WechatController/silenceAuth');
  400. //微信手机号登录直接绑定
  401. Route::post('phone_wx_silence_auth', 'v2.wechat.WechatController/silenceAuthBindingPhone');
  402. //DIY接口
  403. Route::get('diy/get_diy/[:name]', 'v2.PublicController/getDiy');
  404. //是否强制绑定手机号
  405. Route::get('bind_status', 'v2.PublicController/bindPhoneStatus');
  406. //获取门店自提开启状态
  407. Route::get('diy/get_store_status', 'v2.PublicController/getStoreStatus');
  408. //一键换色
  409. Route::get('diy/color_change/:name', 'v2.PublicController/colorChange');
  410. //商品详情diy
  411. Route::get('diy/product_detail', 'v2.PublicController/productDetailDiy');
  412. //获取地址列表
  413. Route::get('cityList', 'v2.PublicController/cityList');
  414. //活动优惠活动商品列表
  415. Route::get('promotions/productList/:type', 'v2.activity.StorePromotions/productList');
  416. //优惠活动赠品信息
  417. Route::get('promotions/give_info/:id', 'v2.activity.StorePromotions/getPromotionsGive');
  418. });
  419. //需要授权
  420. Route::group(function () {
  421. Route::post('reset_cart', 'v2.order.StoreCartController/resetCart')->name('resetCart');
  422. Route::get('new_coupon', 'v2.activity.StoreCouponsController/getNewCoupon')->name('getNewCoupon');//获取新人券
  423. Route::post('user/user_update', 'v2.wechat.AuthController/updateInfo');
  424. Route::post('order/product_coupon/:orderId', 'v2.activity.StoreCouponsController/getOrderProductCoupon');//获取订单商品关联优惠券
  425. Route::get('user/service/record', 'v2.user.StoreService/record')->name('userServiceRecord');//客服聊天记录
  426. Route::get('cart_list', 'v2.order.StoreCartController/getCartList');
  427. Route::get('get_attr/:id/:type', 'v2.product.StoreProductController/getProductAttr');
  428. Route::post('set_cart_num', 'v2.order.StoreCartController/setCartNum');
  429. //订单申请发票
  430. Route::post('order/make_up_invoice', 'v2.order.StoreOrderInvoiceController/makeUp')->name('orderMakeUpInvoice');
  431. //用户发票列表
  432. Route::get('invoice', 'v2.user.UserInvoiceController/invoiceList')->name('userInvoiceLIst');
  433. //单个发票详情
  434. Route::get('invoice/detail/:id', 'v2.user.UserInvoiceController/invoice')->name('userInvoiceDetail');
  435. //修改|添加发票
  436. Route::post('invoice/save', 'v2.user.UserInvoiceController/saveInvoice')->name('userInvoiceSave');
  437. //设置默认发票
  438. Route::post('invoice/set_default/:id', 'v2.user.UserInvoiceController/setDefaultInvoice')->name('userInvoiceSetDefault');
  439. //获取默认发票
  440. Route::get('invoice/get_default/:type', 'v2.user.UserInvoiceController/getDefaultInvoice')->name('userInvoiceGetDefault');
  441. //删除发票
  442. Route::get('invoice/del/:id', 'v2.user.UserInvoiceController/delInvoice')->name('userInvoiceDel');
  443. //订单申请开票记录
  444. Route::get('order/invoice_list', 'v2.order.StoreOrderInvoiceController/list')->name('orderInvoiceList');
  445. //订单开票详情
  446. Route::get('order/invoice_detail/:uni', 'v2.order.StoreOrderInvoiceController/detail')->name('orderInvoiceList');
  447. //清除搜索记录
  448. Route::get('user/clean_search', 'v2.user.UserSearchController/cleanUserSearch')->name('cleanUserSearch');
  449. //更新公众号用户信息
  450. Route::get('user/wechat', 'v2.user.UserController/updateUserInfo')->name('updateUserInfo');
  451. //抽奖活动详情
  452. Route::get('lottery/info/[:factor]', 'v2.activity.LuckLotteryController/lotteryInfo')->name('lotteryInfo');
  453. //参与抽奖
  454. Route::post('lottery', 'v2.activity.LuckLotteryController/luckLottery')->middleware(BlockerMiddleware::class)->name('luckLottery');
  455. //领取奖品
  456. Route::post('lottery/receive', 'v2.activity.LuckLotteryController/lotteryReceive')->name('lotteryReceive');
  457. //抽奖记录
  458. Route::get('lottery/record', 'v2.activity.LuckLotteryController/lotteryRecord')->name('lotteryRecord');
  459. //获取分销等级列表
  460. Route::get('agent/level_list', 'v2.agent.AgentLevel/levelList')->name('agentLevelList');
  461. //获取分销等级任务列表
  462. Route::get('agent/level_task_list', 'v2.agent.AgentLevel/levelTaskList')->name('agentLevelTaskList');
  463. //获取用户余额、佣金、提现明细列表
  464. Route::get('user/money_list/:type', 'v2.user.UserController/userMoneyList')->name('userMoneyList');
  465. //获取用户推广用户列表
  466. Route::get('agent/agent_user_list/:type', 'v2.agent.AgentController/agentUserList')->name('agentUserList');
  467. //获取用户推广获得收益,佣金轮播,分销规则
  468. Route::get('agent/agent_info', 'v2.agent.AgentController/agentInfo')->name('agentInfo');
  469. //优惠活动凑单商品列表
  470. Route::get('promotions/collect_order/product', 'v2.activity.StorePromotions/collectOrderProduct');
  471. //拼单接口
  472. //验证是否在配送范围
  473. Route::get('is/within', 'v2.activity.UserCollageController/isWithinScopeDistribution')->name('isWithinScopeDistribution');
  474. //发起拼单
  475. Route::get('user/initiate/collage', 'v2.activity.UserCollageController/userInitiateCollage')->name('userInitiateCollage');
  476. //检查用户是否发起拼单
  477. Route::get('is/user/initiate/collage', 'v2.activity.UserCollageController/isUserInitiateCollage')->name('isUserInitiateCollage');
  478. //检查拼单
  479. Route::get('is/initiate/collage', 'v2.activity.UserCollageController/isInitiateCollage')->name('isInitiateCollage');
  480. //购物车 统计 数量
  481. Route::get('user/initiate/collage/count', 'v2.activity.UserCollageController/count')->name('count');
  482. //拼单购物车列表
  483. Route::get('user/initiate/collage/cart_list', 'v2.activity.UserCollageController/getCartList')->name('getCartList');
  484. //拼单购物车删除商品
  485. Route::post('del/collage/cart', 'v2.activity.UserCollageController/delUserCollagePartake')->name('delUserCollagePartake');
  486. //获取自提门店信息
  487. Route::get('collage/store/data', 'v2.activity.UserCollageController/getStoredata')->name('getStoredata');
  488. //用户添加拼单商品
  489. Route::post('add/collage/partake', 'v2.activity.UserCollageController/addCollagePartake')->name('addCollagePartake');
  490. //用户清空拼单数据
  491. Route::get('empty/collage/partake', 'v2.activity.UserCollageController/emptyCollagePartake')->name('emptyCollagePartake');
  492. //复制他人拼单商品
  493. Route::get('duplicate/collage/partake', 'v2.activity.UserCollageController/duplicateCollagePartake')->name('duplicateCollagePartake');
  494. //获取用户拼单数据
  495. Route::get('user/collage/partake', 'v2.activity.UserCollageController/getUserCollagePartake')->name('getUserCollagePartake');
  496. //取消拼单
  497. Route::get('user/cancel', 'v2.activity.UserCollageController/cancelInitiateCollage')->name('cancelInitiateCollage');
  498. //结算拼单
  499. Route::get('user/settle/collage', 'v2.activity.UserCollageController/userSettleAccountsCollage')->name('userSettleAccountsCollage');
  500. //桌码
  501. //门店桌码配置
  502. Route::get('table/data', 'v2.activity.UserCodeController/getData')->name('getData');
  503. //记录桌码
  504. Route::get('add/table/code', 'v2.activity.UserCodeController/setTableCode')->name('setTableCode');
  505. //检查是否开启桌码
  506. Route::get('is/table/code', 'v2.activity.UserCodeController/isUserTableCode')->name('isUserTableCode');
  507. //处理换桌商品
  508. Route::get('changing/table', 'v2.activity.UserCodeController/userChangingTables')->name('userChangingTables');
  509. //获取桌码记录
  510. Route::get('get/table/code', 'v2.activity.UserCodeController/getTableCode')->name('getTableCode');
  511. //获取门店信息
  512. Route::get('get/store/data', 'v2.activity.UserCodeController/getStoredata')->name('getStoredata');
  513. //获取二维码信息
  514. Route::get('get/code/data', 'v2.activity.UserCodeController/getTableCodeData')->name('getTableCodeData');
  515. //购物车 统计 数量
  516. Route::get('cart/count', 'v2.activity.UserCodeController/count')->name('count');
  517. //获取购物车
  518. Route::get('get/cate/list', 'v2.activity.UserCodeController/getCartList')->name('getCartList');
  519. //桌码购物车删除商品
  520. Route::post('del/table/cart', 'v2.activity.UserCodeController/delUserTableCodePartake')->name('delUserTableCodePartake');
  521. //确认下单
  522. Route::get('user/place/order', 'v2.activity.UserCodeController/userPlaceOrder')->name('userPlaceOrder');
  523. //用户添加桌码商品
  524. Route::get('add/table/cate', 'v2.activity.UserCodeController/addTableCodePartake')->name('addTableCodePartake');
  525. //用户清空购物车
  526. Route::get('user/empty/data', 'v2.activity.UserCodeController/emptyTablePartake')->name('emptyTablePartake');
  527. //获取桌码数据
  528. Route::get('get/table/partake', 'v2.activity.UserCodeController/getUserTableCodePartake')->name('getUserTableCodePartake');
  529. //结算拼单
  530. Route::get('user/settle/table', 'v2.activity.UserCodeController/userSettleAccountsCollage')->name('userSettleAccountsCollage');
  531. })->middleware(AuthTokenMiddleware::class, true);
  532. //授权不通过,不会抛出异常继续执行
  533. Route::group(function () {
  534. //用户搜索记录
  535. Route::get('user/search_list', 'v2.user.UserSearchController/getUserSeachList')->name('userSearchList');
  536. Route::get('get_today_coupon', 'v2.activity.StoreCouponsController/getTodayCoupon');//新优惠券弹窗接口
  537. Route::get('subscribe', 'v2.PublicController/subscribe')->name('WechatSubscribe');// 微信公众号用户是否关注
  538. //公共类
  539. Route::get('index', 'v2.PublicController/index')->name('index');//首页
  540. //优惠券
  541. Route::get('coupons', 'v2.activity.StoreCouponsController/lst')->name('couponsList'); //可领取优惠券列表
  542. //商品评价列表
  543. Route::get('reply/list/:id', 'v2.product.StoreProductController/reply_list')->name('v2replyList');//商品评价列表
  544. })->middleware(AuthTokenMiddleware::class, false);
  545. })->middleware(StationOpenMiddleware::class);
  546. /**
  547. * 营销路由
  548. */
  549. Route::group('marketing', function () {
  550. //无需登录接口
  551. Route::group(function () {
  552. });
  553. //未授权接口---不会抛异常
  554. Route::group(function () {
  555. Route::get('short_video', 'v1.activity.VideoController/list')->name('shortVideoList');//短视频列表
  556. Route::get('short_video/comment/:id', 'v1.activity.VideoController/commentList')->name('shortVideoCommentList');//短视频评论列表
  557. Route::get('short_video/product/:id', 'v1.activity.VideoController/productList')->name('shortVideoProductList');//短视频关联商品列表
  558. //新人礼
  559. Route::get('newcomer/product_list', 'v1.activity.StoreNewcomerController/lst')->name('newcomerProductList');//新人专享商品
  560. Route::get('newcomer/product_detail/:id', 'v1.activity.StoreNewcomerController/detail')->name('newcomerProductInfo');//新人商品详情
  561. })->middleware(AuthTokenMiddleware::class, false);
  562. //需要授权接口
  563. Route::group(function () {
  564. Route::post('short_video/comment/:id/:pid', 'v1.activity.VideoController/saveComment')->name('shortVideoComment');//短视频评论
  565. Route::get('short_video/comment_reply/:pid', 'v1.activity.VideoController/commentReplyList')->name('shortVideoCommentReplyList');//短视频评论回复列表
  566. Route::delete('short_video/comment/:id', 'v1.activity.VideoController/commentDelete')->name('shortVideoCommentDelete');//删除短视频评论
  567. Route::get('short_video/comment/:type/:id', 'v1.activity.VideoController/commentRelation')->name('shortVideoCommentRelation');//短视频评论点赞
  568. Route::get('short_video/:type/:id', 'v1.activity.VideoController/relation')->name('shortVideoRelation');//短视频点赞、收藏、分享
  569. //新人礼
  570. Route::get('newcomer/info', 'v1.activity.StoreNewcomerController/getInfo')->name('newcomerInfo');//新人礼信息
  571. Route::get('newcomer/gift', 'v1.activity.StoreNewcomerController/getGift')->name('newcomerInfo');//新人大礼包弹窗信息
  572. })->middleware(AuthTokenMiddleware::class, true);
  573. })->middleware(StationOpenMiddleware::class);
  574. /**
  575. * pc 路由
  576. */
  577. Route::group('pc', function () {
  578. //登陆接口
  579. Route::group(function () {
  580. Route::get('key', 'pc.LoginController/getLoginKey')->name('getLoginKey');//获取扫码登录key
  581. Route::get('scan/:key', 'pc.LoginController/scanLogin')->name('scanLogin');//检测扫码情况
  582. Route::get('get_appid', 'pc.LoginController/getAppid')->name('getAppid');//检测扫码情况
  583. Route::get('wechat_auth', 'pc.LoginController/wechatAuth')->name('wechatAuth');//检测扫码情况
  584. });
  585. //未授权接口
  586. Route::group(function () {
  587. Route::get('get_pay_vip_code', 'pc.HomeController/getPayVipCode')->name('getPayVipCode');//获取付费会员购买页面二维码
  588. Route::get('get_product_phone_buy', 'pc.HomeController/getProductPhoneBuy')->name('getProductPhoneBuy');//手机购买跳转url配置
  589. Route::get('get_banner', 'pc.HomeController/getBanner')->name('getBanner');//PC首页轮播图
  590. Route::get('get_category_product', 'pc.HomeController/getCategoryProduct')->name('getCategoryProduct');//首页分类尚品
  591. Route::get('get_products', 'pc.ProductController/getProductList')->name('getProductList');//商品列表
  592. Route::get('get_product_code/:product_id', 'pc.ProductController/getProductRoutineCode')->name('getProductRoutineCode');//商品详情小程序二维码
  593. Route::get('get_city/:pid', 'pc.PublicController/getCity')->name('getCity');//获取城市数据
  594. Route::get('check_order_status/:order_id/:end_time', 'pc.OrderController/checkOrderStatus')->name('checkOrderStatus');//轮询订单状态接口
  595. Route::get('get_company_info', 'pc.PublicController/getCompanyInfo')->name('getCompanyInfo');//获取公司信息
  596. Route::get('get_recommend/:type', 'pc.ProductController/getRecommendList')->name('getRecommendList');//获取推荐商品
  597. Route::get('get_wechat_qrcode', 'pc.PublicController/getWechatQrcode')->name('getWechatQrcode');//获取关注二维码
  598. Route::get('get_good_product', 'pc.ProductController/getGoodProduct')->name('getGoodProduct');//获取优品推荐
  599. })->middleware(AuthTokenMiddleware::class, false);
  600. //会员授权接口
  601. Route::group(function () {
  602. Route::get('get_cart_list', 'pc.CartController/getCartList')->name('getCartList');//购物车列表
  603. Route::get('get_balance_record/:type', 'pc.UserController/getBalanceRecord')->name('getBalanceRecord');//余额记录
  604. Route::get('get_order_list', 'pc.OrderController/getOrderList')->name('getOrderList');//订单列表
  605. Route::get('get_collect_list', 'pc.UserController/getCollectList')->name('getCollectList');//收藏列表
  606. Route::post('order/refund/cart_info', 'pc.OrderController/refundCartInfoList')->name('StoreOrderRefundCartInfoList');//获取退款商品列表
  607. Route::get('order/refund/list', 'pc.OrderController/refundList')->name('orderRefundList'); //售后订单列表
  608. })->middleware(AuthTokenMiddleware::class, true);
  609. })->middleware(StationOpenMiddleware::class);
  610. /**
  611. * 管理员订单操作类
  612. */
  613. Route::post('order/order_verific', 'v1.admin.StoreOrderController/order_verific')
  614. ->middleware(StationOpenMiddleware::class)
  615. ->middleware(AuthTokenMiddleware::class, true)
  616. ->middleware(\app\http\middleware\api\CustomerMiddleware::class)->name('order');//订单核销
  617. Route::group('admin', function () {
  618. Route::get('erp/config', 'v1.admin.StoreOrderController/getErpConfig')->name('getErpConfig');//获取erp配置
  619. Route::get('order/statistics', 'v1.admin.StoreOrderController/statistics')->name('adminOrderStatistics');//订单数据统计
  620. Route::get('order/data', 'v1.admin.StoreOrderController/data')->name('adminOrderData');//订单每月统计数据
  621. Route::get('order/list', 'v1.admin.StoreOrderController/lst')->name('adminOrderList');//订单列表
  622. Route::get('refund_order/list', 'v1.admin.StoreOrderController/refundOrderList')->name('RefundOrderList');//退款订单列表
  623. Route::get('refund_order/detail/:uni', 'v1.admin.StoreOrderController/refundOrderDetail')->name('RefundOrderDetail');//退款订单详情
  624. Route::post('refund_order/remark', 'v1.admin.StoreOrderController/refundRemark')->name('refundRemark');//退款订单备注
  625. Route::get('order/detail/:orderId', 'v1.admin.StoreOrderController/detail')->name('adminOrderDetail');//订单详情
  626. Route::get('order/delivery/gain/:orderId', 'v1.admin.StoreOrderController/delivery_gain')->name('adminOrderDeliveryGain');//订单发货获取订单信息
  627. Route::post('order/delivery/keep/:id', 'v1.admin.StoreOrderController/delivery_keep')->name('adminOrderDeliveryKeep');//订单发货
  628. Route::post('order/price', 'v1.admin.StoreOrderController/price')->name('adminOrderPrice');//订单改价
  629. Route::post('order/remark', 'v1.admin.StoreOrderController/remark')->name('adminOrderRemark');//订单备注
  630. Route::get('order/time', 'v1.admin.StoreOrderController/time')->name('adminOrderTime');//订单交易额时间统计
  631. Route::post('order/offline', 'v1.admin.StoreOrderController/offline')->name('adminOrderOffline');//订单支付
  632. Route::post('order/refund', 'v1.admin.StoreOrderController/refund')->name('adminOrderRefund');//订单退款
  633. Route::post('order/refund_agree/:id', 'v1.admin.StoreOrderController/agreeRefund')->name('adminOrderAgreeRefund');//商家同意退货退款
  634. Route::get('order/delivery', 'v1.admin.StoreOrderController/getDeliveryAll')->name('getDeliveryAll');//获取配送员
  635. Route::get('order/delivery_info/:orderId', 'v1.admin.StoreOrderController/getDeliveryInfo')->name('getDeliveryInfo');//获取电子面单默认信息
  636. Route::get('order/export_temp', 'v1.admin.StoreOrderController/getExportTemp')->name('getExportTemp');//获取电子面单模板获取
  637. Route::get('order/export_all', 'v1.admin.StoreOrderController/getExportAll')->name('getExportAll');//获取物流公司
  638. Route::get('order/split_cart_info/:id', 'v1.admin.StoreOrderController/split_cart_info')->name('StoreOrderSplitCartInfo')->option(['real_name' => '获取订单可拆分商品列表']);//获取订单可拆分商品列表
  639. Route::put('order/split_delivery/:id', 'v1.admin.StoreOrderController/split_delivery')->name('StoreOrderSplitDelivery')->option(['real_name' => '拆单发送货']);//拆单发送货
  640. })->middleware(StationOpenMiddleware::class)->middleware(AuthTokenMiddleware::class, true)->middleware(\app\http\middleware\api\CustomerMiddleware::class);
  641. /**
  642. * 移动端门店中心 路由
  643. */
  644. Route::group('store', function () {
  645. //无需登录接口
  646. Route::group(function () {
  647. Route::get('category', 'v1.store.CategoryController/category')->name('category');//商品分类
  648. });
  649. //未授权接口---不会抛异常
  650. Route::group(function () {
  651. Route::get('list', 'v1.store.StoreController/getStoreList')->name('storeList');//门店列表
  652. Route::get('customer/list/:store_id', 'v1.store.StoreController/getCustomerList')->name('customerList');//客服列表
  653. Route::get('customer/info/:id', 'v1.store.StoreController/getCustomerInfo')->name('customerInfo');//客服详情
  654. Route::get('products', 'v1.store.StoreProductController/lst')->name('storeProducts');//商品列表
  655. Route::get('brand', 'v1.store.StoreProductController/brand')->name('brand');//品牌列表
  656. })->middleware(AuthTokenMiddleware::class, false);
  657. //需要授权接口
  658. Route::group(function () {
  659. //门店店员订单操作类
  660. Route::get('staff/info', 'store.StoreStaffController/info')->name('storeStaffInfo');//门店店员信息
  661. Route::get('staff/statistics', 'store.StoreStaffController/statistics')->name('storeStatistics');//门店|店员统计信息
  662. Route::get('staff/data/:type', 'store.StoreStaffController/data');//详细信息列表
  663. Route::get('order/statistics', 'store.StoreOrderController/statistics')->name('adminOrderStatistics');//订单数据统计
  664. Route::get('order/data', 'store.StoreOrderController/data')->name('adminOrderData');//订单每月统计数据
  665. Route::get('staff/card/code', 'store.StoreStaffController/code');//详细信息列表
  666. Route::get('delivery/info', 'store.StoreDeliveryController/info')->name('storeStaffInfo');//配送员信息
  667. Route::get('delivery/statistics', 'store.StoreDeliveryController/statistics')->name('deliveryStatistics');//门店配送员统计信息
  668. Route::get('delivery/data', 'store.StoreDeliveryController/data')->name('deliveryData');//每月配送统计列表数据
  669. Route::get('delivery/order', 'store.StoreDeliveryController/orderList')->name('deliveryOrder');//配送员订单列表
  670. Route::get('delivery/list', 'store.StoreDeliveryController/getDeliveryAll')->name('getDeliveryAll');//获取配送员列表
  671. Route::get('order/list', 'store.StoreOrderController/lst')->name('storeOrderList');//订单列表
  672. Route::get('refund/list', 'store.StoreOrderController/refundList')->name('refundList');//订单列表
  673. Route::get('refund/detail/:id', 'store.StoreOrderController/refundDetail')->name('refundDetail');//订单列表
  674. Route::get('order/detail/:id', 'store.StoreOrderController/detail')->name('storeOrderDetail');//订单详情
  675. Route::get('order/delivery_info/:orderId', 'store.StoreOrderController/deliveryInfo')->name('storeOrderDeliveryInfo');//订单发货获取订单信息
  676. Route::post('order/delivery/:id', 'store.StoreOrderController/delivery')->name('storeOrderDelivery');//订单发货
  677. Route::get('order/split_cart_info/:id', 'store.StoreOrderController/split_cart_info')->name('StoreOrderSplitCartInfo');//获取订单可拆分商品列表
  678. Route::put('order/split_delivery/:id', 'store.StoreOrderController/split_delivery')->name('StoreOrderSplitDelivery');//拆单发送货
  679. Route::post('order/price', 'store.StoreOrderController/price')->name('storeOrderPrice');//订单改价
  680. Route::post('order/remark', 'store.StoreOrderController/remark')->name('storeOrderRemark');//订单备注
  681. Route::post('refund/remark', 'store.StoreOrderController/refundRemark')->name('refundRemark');//订单备注
  682. Route::post('order/offline', 'store.StoreOrderController/offline')->name('storeOrderOffline');//订单支付
  683. Route::post('order/refund', 'store.StoreOrderController/refund')->name('storeOrderRefund');//订单退款
  684. Route::post('order/refund_agree/:id', 'store.StoreOrderController/agreeRefund')->name('storeOrderAgreeRefund');//商家同意退货退款
  685. Route::get('order/export_temp', 'store.StoreOrderController/getExportTemp')->name('storeOrderExportTemp');//获取电子面单模板获取
  686. Route::get('order/export_all', 'store.StoreOrderController/getExportAll')->name('storeOrderExportAll');//获取物流公司
  687. Route::post('order/cancel/:id', 'store.StoreOrderController/cancel')->name('storeOrderCancel'); //订单取消
  688. Route::delete('order/del/:id', 'store.StoreOrderController/del')->name('storeOrderDel');//订单删除
  689. Route::get('order/writeoff_info/:type', 'store.StoreOrderController/writeoffOrderinfo')->name('writeoffOrderinfo');//扫码核销获取订单信息
  690. Route::get('order/cart_info/:type', 'store.StoreOrderController/orderCartInfo')->name('writeoffOrderCartInfo');//核销获取商品信息
  691. Route::post('order/writeoff/:type', 'store.StoreOrderController/wirteoff')->name('storeOrderWriteoff');//订单核销
  692. })->middleware(AuthTokenMiddleware::class, true);
  693. })->middleware(StationOpenMiddleware::class);
  694. /**
  695. * 企业微信
  696. */
  697. Route::group('work', function () {
  698. //获取企业微信jsSDK配置
  699. Route::get('config', 'v1.work.WorkController/config')->name('WorkConfig');
  700. //获取企业微信应用jsSDK配置
  701. Route::get('agentConfig', 'v1.work.WorkController/agentConfig')->name('agentConfig');
  702. //获取客户群详情
  703. Route::get('groupInfo', 'v1.work.GroupChatController/getGroupInfo')->name('getGroupInfo');
  704. //获取群成员列表
  705. Route::get('groupMember/:id', 'v1.work.GroupChatController/getChatMemberList')->name('getChatMemberList');
  706. Route::group(function () {
  707. //获取客户信息详情
  708. Route::get('client/info', 'v1.work.ClientController/getClientInfo')->name('getClientInfo');
  709. //获取客户订单列表
  710. Route::get('order/list', 'v1.work.OrderController/getUserOrderList')->name('getWorkOrderList');
  711. //获取客户订单详情
  712. Route::get('order/info/:id', 'v1.work.OrderController/orderInfo')->name('getWorkOrderInfo');
  713. //购买商品记录
  714. Route::get('product/cart_list', 'v1.work.ProductController/getCartProductList')->name('getCartProductList');
  715. //浏览记录商品记录
  716. Route::get('product/visit_list', 'v1.work.ProductController/getVisitProductList')->name('getVisitProductList');
  717. })->middleware(ClientMiddleware::class);
  718. });
  719. /**
  720. * miss 路由
  721. */
  722. Route::miss(function () {
  723. if (app()->request->isOptions()) {
  724. $header = Config::get('cookie.header');
  725. $header['Access-Control-Allow-Origin'] = app()->request->header('origin');
  726. return Response::create('ok')->code(200)->header($header);
  727. } else
  728. return Response::create()->code(404);
  729. });
  730. })->prefix('api.')->middleware(InstallMiddleware::class)->middleware(AllowOriginMiddleware::class)->middleware(StationOpenMiddleware::class);