api.php 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2024 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. use app\common\middleware\AllowOriginMiddleware;
  12. use app\common\middleware\CheckSiteOpenMiddleware;
  13. use app\common\middleware\InstallMiddleware;
  14. use app\common\middleware\UserTokenMiddleware;
  15. use app\common\middleware\VisitProductMiddleware;
  16. use app\common\middleware\RequestLockMiddleware;
  17. use think\facade\Route;
  18. Route::group('api/', function () {
  19. Route::any('test', 'api.Auth/test');
  20. //强制登录
  21. Route::group(function () {
  22. Route::get('pay/config', 'api.store.order.StoreOrder/payConfig');
  23. Route::group('v3', function () {
  24. //新的下单接口,支持分账
  25. Route::group('order', function () {
  26. Route::post('check', '/v3CheckOrder');
  27. Route::post('create', '/v3CreateOrder');
  28. })->prefix('api.store.order.StoreOrder');
  29. });
  30. Route::group('v2', function () {
  31. //新的下单接口,支持分账
  32. Route::group('order', function () {
  33. Route::post('check', '/v2CheckOrder');
  34. Route::post('create', '/v2CreateOrder');
  35. })->prefix('api.store.order.StoreOrder');
  36. });
  37. //退出登录
  38. Route::post('logout', 'api.Auth/logout');
  39. //用户信息
  40. Route::get('user', 'api.Auth/userInfo');
  41. //绑定推荐人
  42. Route::post('user/spread', 'api.Auth/spread');
  43. //优惠券
  44. Route::group('coupon', function () {
  45. Route::post('receive/:id', 'api.store.product.StoreCoupon/receiveCoupon');
  46. });
  47. //订单
  48. Route::group('order', function () {
  49. Route::post('check', '/checkOrder');
  50. Route::post('create', '/createOrder');
  51. Route::get('group_order_list', '/groupOrderList');
  52. Route::get('group_order_detail/:id', '/groupOrderDetail');
  53. Route::post('cancel/:id', '/cancelGroupOrder');
  54. Route::get('list', '/lst');
  55. Route::get('detail/:id', '/detail');
  56. Route::get('number', '/number');
  57. Route::post('pay/:id', '/groupOrderPay');
  58. Route::post('points/pay/:id', '/groupOrderPay')->append(['is_points' => 1]);
  59. Route::post('take/:id', '/take');
  60. Route::post('express/:id', '/express');
  61. Route::post('del/:id', '/del');
  62. Route::get('status/:id', '/groupOrderStatus');
  63. Route::get('verify_code/:id', '/verifyCode');
  64. Route::post('receipt/:id', '/createReceipt');
  65. Route::get('delivery/:id', '/getOrderDelivery');
  66. Route::get('cashier_order/:id', '/getCashierOrder');
  67. Route::post('self/cancel/:id', '/cancelOrder');
  68. })->prefix('api.store.order.StoreOrder');
  69. // 预售
  70. Route::group('presell', function () {
  71. Route::post('pay/:id', '/pay');
  72. })->prefix('api.store.order.PresellOrder');
  73. //退款单
  74. Route::group('refund', function () {
  75. Route::get('batch_product/:id', '/batchProduct');
  76. Route::get('express/:id', '/express');
  77. Route::get('product/:id', '/product');
  78. Route::post('apply/:id', '/refund');
  79. Route::get('list', '/lst');
  80. Route::get('detail/:id', '/detail');
  81. Route::post('del/:id', '/del');
  82. Route::post('back_goods/:id', '/back_goods');
  83. Route::post('cancel/:id', '/cancel');
  84. Route::post('platform/:id', '/platformIntervene');
  85. })->prefix('api.store.order.StoreRefundOrder');
  86. //评价
  87. Route::group('reply', function () {
  88. Route::get('product/:id', '/product');
  89. Route::post(':id', '/reply');
  90. })->prefix('api.store.product.StoreReply');
  91. //注销用户
  92. Route::post('user/cancel', 'api.Auth/cancel');
  93. //用户
  94. Route::group('user', function () {
  95. //切换账号
  96. Route::get('account', 'User/account');
  97. Route::post('switch', 'User/switchUser');
  98. //修改信息
  99. Route::post('change/phone', 'User/changePhone');
  100. Route::post('change/info', 'User/updateBaseInfo');
  101. Route::post('change/password', 'User/changePassword');
  102. //收藏
  103. Route::get('/relation/product/lst', 'UserRelation/productList');
  104. Route::get('/relation/merchant/lst', 'UserRelation/merchantList');
  105. Route::post('/relation/create', 'UserRelation/create');
  106. Route::post('/relation/batch/create', 'UserRelation/batchCreate');
  107. Route::post('/relation/delete', 'UserRelation/delete');
  108. Route::post('/relation/batch/delete', 'UserRelation/batchDelete');
  109. //反馈
  110. Route::post('/feedback', 'Feedback/feedback');
  111. Route::get('/feedback/list', 'Feedback/feedbackList');
  112. Route::get('/feedback/detail/:id', 'Feedback/detail');
  113. //充值
  114. Route::post('/recharge', 'UserRecharge/recharge');
  115. Route::post('/recharge/brokerage', 'UserRecharge/brokerage');
  116. //地址
  117. Route::get('/address/lst', 'UserAddress/lst');
  118. Route::post('/address/create', 'UserAddress/create');
  119. Route::get('/address/detail/:id', 'UserAddress/detail');
  120. Route::post('/address/update/:id', 'UserAddress/editDefault');
  121. Route::post('/address/delete/:id', 'UserAddress/delete');
  122. //分销海报
  123. Route::get('/spread_image', 'User/spread_image');
  124. Route::get('/v2/spread_image', 'User/spread_image_v2');
  125. //推广人列表
  126. Route::get('/spread_list', 'User/spread_list');
  127. //提现
  128. Route::get('/extract/lst', 'UserExtract/lst');
  129. Route::get('/extract/detail/:id', 'UserExtract/detail');
  130. Route::get('/extract/banklst', 'UserExtract/bankLst');
  131. Route::post('/extract/create', 'UserExtract/create');
  132. Route::get('/extract/history_bank', 'UserExtract/historyBank');
  133. //绑定手机号
  134. Route::post('binding', 'User/binding');
  135. //小程序获取手机号
  136. Route::post('mp/binding', 'User/mpPhone');
  137. //余额记录
  138. Route::get('bill', 'User/bill');
  139. //佣金记录
  140. Route::get('brokerage_list', 'User/brokerage_list');
  141. //推广人订单
  142. Route::get('spread_order', 'User/spread_order');
  143. //推广人排行榜
  144. Route::get('spread_top', 'User/spread_top');
  145. //佣金排行榜
  146. Route::get('brokerage_top', 'User/brokerage_top');
  147. Route::get('spread_info', 'User/spread_info');
  148. Route::get('spread_level', 'User/spread_info');
  149. Route::get('brokerage/info', 'User/brokerage_info');
  150. Route::get('brokerage/all', 'User/brokerage_all');
  151. Route::get('brokerage/notice', 'User/notice');
  152. //浏览记录
  153. Route::get('history', 'UserHistory/lst');
  154. Route::post('history/delete/:id', 'UserHistory/deleteHistory');
  155. Route::post('history/batch/delete', 'UserHistory/deleteHistoryBatch');
  156. //发票
  157. Route::post('receipt/create', 'UserReceipt/create');
  158. Route::get('receipt/lst', 'UserReceipt/lst');
  159. Route::get('receipt/order', 'UserReceipt/order');
  160. Route::get('receipt/order/:id', 'UserReceipt/orderDetail');
  161. Route::post('receipt/delete/:id', 'UserReceipt/delete');
  162. Route::post('receipt/update/:id', 'UserReceipt/update');
  163. Route::post('receipt/is_default/:id', 'UserReceipt/isDefault');
  164. Route::get('receipt/detail/:id', 'UserReceipt/detail');
  165. //签到
  166. Route::get('sign/lst', 'UserSign/lst');
  167. Route::get('sign/info', 'UserSign/info');
  168. Route::post('sign/create', 'UserSign/create');
  169. Route::get('sign/month', 'UserSign/month');
  170. //积分
  171. Route::get('integral/info', 'User/integralInfo');
  172. Route::get('integral/lst', 'User/integralList');
  173. //客服列表
  174. Route::get('services', 'User/services');
  175. Route::get('member/info', 'User/memberInfo');
  176. Route::get('member/log', 'Member/getMemberValue');
  177. // 用户表单数据操作
  178. Route::get('fields/info', 'UserFields/info');
  179. Route::post('fields/save', 'UserFields/save');
  180. Route::delete('fields/delete', 'UserFields/delete');
  181. //分红积分明细
  182. Route::get('award/integral_list', 'User/award_integral_list');
  183. //分红份额明细
  184. Route::get('award/range_list', 'User/award_range_list');
  185. })->prefix('api.user.');
  186. //购物车
  187. Route::group('user/cart', function () {
  188. Route::post('/check/:id', 'StoreCart/checkCerate');
  189. Route::get('/lst', 'StoreCart/lst');
  190. Route::post('/create', 'StoreCart/create');
  191. Route::post('/again', 'StoreCart/again');
  192. Route::post('/change/:id', 'StoreCart/change');
  193. Route::post('/delete', 'StoreCart/batchDelete');
  194. Route::get('/count', 'StoreCart/cartCount');
  195. Route::post('/batchCreate', 'StoreCart/batchCreate');
  196. })->prefix('api.store.order.');
  197. Route::group('store/product', function () {
  198. Route::post('/assist/create/:id', 'StoreProductAssistSet/create');
  199. Route::get('/assist/detail/:id', 'StoreProductAssistSet/detail');
  200. Route::post('/assist/set/:id', 'StoreProductAssistSet/set');
  201. Route::get('/assist/user/:id', 'StoreProductAssistSet/userList');
  202. Route::get('/assist/share/:id', 'StoreProductAssistSet/shareNum');
  203. Route::get('/assist/set/lst', 'StoreProductAssistSet/lst');
  204. Route::post('/assist/set/delete/:id', 'StoreProductAssistSet/delete');
  205. Route::post('/increase_take', 'StoreProduct/setIncreaseTake');
  206. Route::get('/get_attr_value/:id', 'StoreProduct/getAttrValue');
  207. })->prefix('api.store.product.');
  208. //申请商户
  209. Route::get('intention/lst', 'api.store.merchant.MerchantIntention/lst');
  210. Route::get('intention/detail/:id', 'api.store.merchant.MerchantIntention/detail');
  211. Route::post('intention/update/:id', 'api.store.merchant.MerchantIntention/update');
  212. Route::post('store/product/group/cancel', 'api.store.product.StoreProductGroup/cancel');
  213. //社区
  214. Route::group('community', function () {
  215. Route::post('/create', 'Community/create');
  216. Route::post('/update/:id', 'Community/update');
  217. Route::post('/delete/:id', 'Community/delete');
  218. Route::get('pay_product/lst', 'Community/payList');
  219. Route::get('rela_product/lst', 'Community/relationList');
  220. Route::get('hist_product/lst', 'Community/historyList');
  221. Route::post('fans/:id', 'Community/setFocus');
  222. Route::get('fans/lst', 'Community/getUserFans');
  223. Route::get('focus/lst', 'Community/getUserFocus');
  224. Route::post('start/:id', 'Community/startCommunity');
  225. Route::get('start/lst', 'Community/getUserStartCommunity');
  226. Route::post('reply/create/:id', 'CommunityReply/create');
  227. Route::post('reply/start/:id', 'CommunityReply/start');
  228. Route::get('order/:id', 'Community/getSpuByOrder');
  229. })->prefix('api.community.');
  230. //请求频率
  231. Route::group(function () {
  232. //付费会员购买
  233. Route::post('svip/pay/:id', 'api.user.Svip/createOrder');
  234. //订单检查
  235. Route::group('order/v3', function () {
  236. Route::post('check', 'PointsOrder/beforCheck');
  237. Route::post('create', 'PointsOrder/createOrder');
  238. Route::post('pay/:id', 'PointsOrder/orderPay');
  239. })->prefix('api.store.order.');
  240. })->middleware(\app\common\middleware\BlockerMiddleware::class);
  241. Route::group('points/order', function () {
  242. Route::get('lst', 'PointsOrder/lst');
  243. Route::get('detail/:id', 'PointsOrder/detail');
  244. Route::post('take/:id', 'PointsOrder/take');
  245. Route::post('deleate/:id', 'PointsOrder/del');
  246. })->prefix('api.store.order.');
  247. Route::group('user/form', function () {
  248. Route::post('/create/:id', '/create');
  249. Route::get('/lst', '/lst');
  250. Route::get('/detail/:id', '/detail');
  251. Route::get('/show/:id', '/show');
  252. })->prefix('api.store.form.FormRelated');
  253. })->middleware(UserTokenMiddleware::class, true);
  254. //非强制登录
  255. Route::group(function () {
  256. // 付费会员
  257. Route::group('svip', function () {
  258. //价格列表
  259. Route::get('pay_lst', '/getTypeLst');
  260. Route::get('user_info', '/svipUserInfo');
  261. Route::get('coupon_lst', '/svipCoupon');
  262. Route::get('product_lst', '/svipProductList');
  263. Route::post('coupon_receive/:id', '/receiveCoupon');
  264. })->prefix('api.user.Svip');
  265. //社区
  266. Route::group('community', function () {
  267. //社区文章列表
  268. Route::get('/lst', 'Community/lst');
  269. Route::get('/user_lst', 'Community/userList');
  270. Route::get('/video_lst', 'Community/videoShow');
  271. //详情
  272. Route::get('/show/:id', 'Community/show');
  273. //用户页
  274. Route::get('/user/info/:id', 'Community/userInfo');
  275. //用户的文章
  276. Route::get('/user/community/:id', 'Community/userCommunitylst');
  277. //用户的视频
  278. Route::get('/user/community_video/:id', 'Community/userCommunityVideolst');
  279. //分类&话题
  280. Route::get('category/lst', 'CommunityCategory/lst');
  281. Route::get('/:id/reply', 'CommunityReply/lst');
  282. Route::get('/focuslst', 'Community/focuslst');
  283. Route::get('qrcode/:id', 'Community/qrcode');
  284. })->prefix('api.community.');
  285. //上传图片
  286. Route::post('upload/image/:field', 'api.Common/uploadImage');
  287. Route::post('scan_upload/image/:field/:token', 'api.Common/scanUploadImage');
  288. //入住商户上传证件接口
  289. Route::post('upload/certificate/:field', 'api.Common/uploadCertificate');
  290. //获取商户基本信息
  291. Route::get('service/info/:id', 'api.store.service.Service/merchantInfo');
  292. //公共配置
  293. Route::get('config', 'api.Common/config');
  294. Route::get('has_service/:id', 'api.store.service.Service/hasService');
  295. //专题
  296. Route::group('activity', function () {
  297. Route::get('lst/:id', 'api.Common/activityLst');
  298. Route::get('info/:id', 'api.Common/activityInfo');
  299. });
  300. //商品
  301. Route::group('store/product', function () {
  302. Route::get('seckill/select', 'StoreProductSeckill/select');
  303. Route::get('seckill/lst', 'StoreProductSeckill/lst');
  304. Route::get('seckill/detail/:id', 'StoreProductSeckill/detail')->middleware(VisitProductMiddleware::class, 1);
  305. Route::get('category/lst', 'StoreCategory/lst');
  306. Route::get('category', 'StoreCategory/children');
  307. Route::get('brand/lst', 'StoreBrand/lst');
  308. Route::get('detail/:id', 'StoreProduct/detail')->middleware(VisitProductMiddleware::class, 0);
  309. Route::get('show/:id', 'StoreProduct/show');
  310. Route::get('good_list/:id', 'StoreProduct/getGoodList');
  311. Route::get('/qrcode/:id', 'StoreProduct/qrcode');
  312. Route::get('category/hotranking', 'StoreCategory/cateHotRanking');
  313. Route::get('bag/explain', 'StoreProduct/getBagExplain');
  314. Route::get('/reply/lst/:id', 'StoreReply/lst');
  315. //预售
  316. Route::get('/presell/lst', 'StoreProductPresell/lst');
  317. Route::get('/presell/detail/:id', 'StoreProductPresell/detail')->middleware(VisitProductMiddleware::class, 2);
  318. //预售协议
  319. Route::get('presell/agree', 'StoreProductPresell/getAgree');
  320. //助力
  321. Route::get('/assist/lst', 'StoreProductAssist/lst');
  322. //拼团
  323. Route::get('group/lst', 'StoreProductGroup/lst');
  324. Route::get('group/detail/:id', 'StoreProductGroup/detail')->middleware(VisitProductMiddleware::class, 4);
  325. Route::get('group/count', 'StoreProductGroup/userCount');
  326. Route::get('group/category', 'StoreProductGroup/category');
  327. Route::get('group/get/:id', 'StoreProductGroup/groupBuying');
  328. Route::get('/guarantee/:id', 'StoreProduct/guaranteeTemplate');
  329. Route::get('/preview', 'StoreProduct/preview');
  330. Route::get('/price_rule/:id', 'StoreProduct/priceRule');
  331. Route::get('/cate_hot', 'StoreProduct/cateHotList');
  332. //商品列表获取商品规格
  333. Route::get('/get_spec/:id', 'StoreProduct/getSpec');
  334. // 商品列表获取推荐商品
  335. Route::get('/recommendProduct', 'StoreProduct/recommendProduct');
  336. /**
  337. * 预约商品相关
  338. */
  339. Route::get('/reservation/getMonth/:id', 'StorePrdouctReservation/showMonth');
  340. Route::get('/reservation/getDay/:id', 'StorePrdouctReservation/showDay');
  341. })->prefix('api.store.product.');
  342. //各种商品列表
  343. Route::group('product/spu', function () {
  344. //礼包 product/spu/bag
  345. Route::get('/bag', 'StoreSpu/bag');
  346. //商品 product/spu/lst
  347. Route::get('/lst', 'StoreSpu/lst');
  348. //热门 product/spu/hot/:type
  349. Route::get('/hot/:type', 'StoreSpu/hot');
  350. //推荐 product/spu/recommend
  351. Route::get('/recommend', 'StoreSpu/recommend');
  352. //商户商品 product/spu/merchant/:id
  353. Route::get('/merchant/:id', 'StoreSpu/merProductLst');
  354. //礼包推荐 product/spu/bag/recommend
  355. Route::get('/bag/recommend', 'StoreSpu/bagRecommend');
  356. //活动分类 product/spu/active/category/:type
  357. Route::get('/active/category/:type', 'StoreSpu/activeCategory');
  358. //标签获取数据
  359. Route::get('/labels', 'StoreSpu/labelsLst');
  360. //本地生活商品
  361. Route::get('/local/:id', 'StoreSpu/local');
  362. //复制口令
  363. Route::get('/copy', 'StoreSpu/copy');
  364. Route::get('/get/:id', 'StoreSpu/get');
  365. //优惠券商品列表
  366. Route::get('/coupon_product', 'StoreSpu/getProductByCoupon');
  367. //热卖排行
  368. Route::get('/get_hot_ranking', 'StoreSpu/getHotRanking');
  369. //商品参数
  370. Route::get('/params', 'StoreParams/select');
  371. //商品参数值
  372. Route::get('/params_value/:id', 'StoreParams/getValue');
  373. //商品热搜
  374. Route::get('/hot_lst', 'StoreProduct/getHotList');
  375. Route::get('/hot_top', 'StoreProduct/getHotTop');
  376. })->prefix('api.store.product.');
  377. //直播
  378. Route::group('broadcast', function () {
  379. Route::get('/lst', 'BroadcastRoom/lst');
  380. Route::get('/hot', 'BroadcastRoom/hot');
  381. })->prefix('api.store.broadcast.');
  382. //优惠券
  383. Route::group('coupon', function () {
  384. Route::get('product', 'api.store.product.StoreCoupon/coupon');
  385. Route::get('store/:id', 'api.store.product.StoreCoupon/merCoupon');
  386. Route::get('list', 'api.store.product.StoreCoupon/lst');
  387. Route::get('getlst', 'api.store.product.StoreCoupon/getList');
  388. Route::get('new_people', 'api.store.product.StoreCoupon/newPeople');
  389. });
  390. //商户
  391. Route::group('store/merchant/', function () {
  392. Route::get('/lst', 'Merchant/lst');
  393. Route::get('/product/lst/:id', 'Merchant/productList');
  394. Route::get('/category/lst/:id', 'Merchant/categoryList');
  395. Route::get('/detail/0', 'Merchant/systemDetail');
  396. Route::get('/detail/:id', 'Merchant/detail');
  397. Route::get('/qrcode/:id', 'Merchant/qrcode');
  398. Route::get('/local', 'Merchant/localLst');
  399. Route::get('/localDetail/:id', 'Merchant/localDetail');
  400. })->prefix('api.store.merchant.');
  401. Route::post('store/certificate/:merId', 'api.Auth/getMerCertificate');
  402. //文章
  403. Route::group('article', function () {
  404. Route::get('/lst/:cid', 'Article/lst');
  405. Route::get('/list', 'Article/list');
  406. Route::get('detail/:id', 'Article/detail');
  407. Route::get('/category/lst', 'ArticleCategory/lst');
  408. })->prefix('api.article.');
  409. Route::post('upload/video', 'merchant.Common/uploadVideo');
  410. Route::get('excel/download/:id', 'merchant.store.order.Order/download');
  411. //申请商户
  412. Route::post('intention/create', 'api.store.merchant.MerchantIntention/create');
  413. Route::get('intention/cate', 'api.store.merchant.MerchantIntention/cateLst');
  414. Route::get('intention/type', 'api.store.merchant.MerchantIntention/typeLst');
  415. //浏览
  416. Route::post('common/visit', 'api.Common/visit');
  417. Route::get('store/product/assist/count', 'api.store.product.StoreProductAssist/userCount');
  418. Route::get('store/expr/temps', 'admin.system.serve.Export/getExportTemp');
  419. //复制口令
  420. Route::get('command/copy', 'api.Common/getCommand');
  421. Route::group('discounts', function () {
  422. Route::get('lst', '/lst');
  423. })->prefix('api.store.product.Discounts');
  424. //test
  425. Route::any('store/test', 'api.Test/test');
  426. Route::get('subscribe', 'api.Common/subscribe');
  427. Route::group('points', function () {
  428. Route::get('home', '/home');
  429. Route::get('scope', '/points_mall_scope');
  430. Route::get('lst', '/lst');
  431. Route::get('detail/:id', '/detail');
  432. })->prefix('api.store.product.PointsProduct');
  433. Route::group('diy', function () {
  434. //普通商品详情
  435. Route::get('/product_detail', '/productDetail');
  436. //秒杀
  437. Route::get('/seckill', '/seckill');
  438. //助力
  439. Route::get('/assist', '/assist');
  440. //预售
  441. Route::get('/presell', '/presell');
  442. //拼团
  443. Route::get('/group', '/group');
  444. //商品列表
  445. Route::get('/spu', '/spu');
  446. //社区
  447. Route::get('/community', '/community');
  448. //优惠券
  449. Route::get('/coupon', '/coupon');
  450. //品牌好店
  451. Route::get('/store', '/store');
  452. //二级分类
  453. Route::get('/category', '/category');
  454. //直播
  455. Route::get('/broadcast', '/broadcast');
  456. //热卖排行
  457. Route::get('/hot_top', '/hot_top');
  458. })->prefix('api.Diy');
  459. Route::group('system/form', function () {
  460. Route::get('/lst', '/lst');
  461. Route::get('/detail/:id', '/detail');
  462. Route::get('/info/:form_id', '/getFormInfo');
  463. Route::get('/share_posters/:id', '/getSharePosters');
  464. })->prefix('api.store.form.Form');
  465. })->middleware(UserTokenMiddleware::class, false);
  466. //微信支付回调
  467. Route::any('notice/wechat_pay', 'api.Common/wechatNotify')->name('wechatNotify');
  468. //微信支付回调
  469. Route::any('notice/wechat_combine_pay/:type', 'api.Common/wechatCombinePayNotify')->name('wechatCombinePayNotify');
  470. Route::any('notice/routine_combine_pay/:type', 'api.Common/routineCombinePayNotify')->name('routineCombinePayNotify');
  471. Route::any('notice/callback', 'api.Common/deliveryNotify');
  472. //小程序支付回调
  473. Route::any('notice/routine_pay', 'api.Common/routineNotify')->name('routineNotify');
  474. Route::any('notice/mchNotify/:type', 'api.Common/mchNotify')->name('mchNotify');
  475. //支付宝支付回调
  476. Route::any('notice/alipay_pay/:type', 'api.Common/alipayNotify')->name('alipayNotify');
  477. //城市列表
  478. Route::get('system/city/lst', 'merchant.store.shipping.City/getlist');
  479. Route::get('v2/system/city/lst/:pid', 'merchant.store.shipping.City/lstV2');
  480. Route::get('v2/system/city', 'merchant.store.shipping.City/cityList');
  481. //热门搜索
  482. Route::get('common/hot_keyword', 'api.Common/hotKeyword')->append(['type' => 0]);
  483. //社区热门搜索
  484. Route::get('common/commuunity/hot_keyword', 'api.Common/hotKeyword')->append(['type' => 1]);
  485. //推荐页 banner
  486. Route::get('common/hot_banner/:type', 'api.Common/hotBanner');
  487. //退款原因
  488. Route::get('common/refund_message', 'api.Common/refundMessage');
  489. //充值赠送
  490. Route::get('common/recharge_quota', 'api.Common/userRechargeQuota');
  491. //快递公司
  492. Route::get('common/express', 'api.Common/express');
  493. //图片转 base64
  494. Route::post('common/base64', 'api.Common/get_image_base64');
  495. //个人中心菜单
  496. Route::get('common/menus', 'api.Common/menus');
  497. //首页数据
  498. Route::get('common/home', 'api.Common/home');
  499. //经纬度转位置信息
  500. Route::get('lbs/geocoder', 'api.Common/lbs_geocoder');
  501. //位置信息转经纬度
  502. Route::get('lbs/address', 'api.Common/lbs_address');
  503. //获取支付宝支付链接
  504. Route::get('common/pay_key/:key', 'api.Common/pay_key');
  505. //用户反馈类型
  506. Route::get('common/feedback_type', 'api.user.FeedBackCategory/lst');
  507. //登录
  508. Route::post('auth/login', 'api.Auth/login');
  509. //获取小程序登录是否需绑定手机号处理
  510. Route::post('auth/mp_login_type', 'api.Auth/mpLoginType');
  511. //登录
  512. Route::post('auth', 'api.Auth/authLogin');
  513. //短信登录
  514. Route::post('auth/smslogin', 'api.Auth/smsLogin');
  515. //注册
  516. Route::post('auth/register', 'api.Auth/register');
  517. //小程序手机号注册
  518. Route::post('auth/mp_phone', 'api.Auth/mpPhone');
  519. //微信授权
  520. Route::get('auth/wechat', 'api.Auth/auth');
  521. //小程序授权
  522. Route::post('auth/mp', 'api.Auth/mpAuth');
  523. //app授权
  524. Route::post('auth/app', 'api.Auth/appAuth');
  525. //apple授权
  526. Route::post('auth/apple', 'api.Auth/appleAuth');
  527. //修改密码
  528. Route::post('user/change_pwd', 'api.Auth/changePassword');
  529. //验证码
  530. Route::post('auth/verify', 'api.Auth/verify');
  531. //微信配置
  532. Route::get('wechat/config', 'api.Wechat/jsConfig');
  533. //图片验证码
  534. Route::get('captcha', 'api.Auth/getCaptcha');
  535. //获取协议列表
  536. Route::get('agreement_lst', 'admin.system.Cache/getKeyLst')->append(['type' => 1]);
  537. //获取协议内容
  538. Route::get('agreement/:key', 'admin.system.Cache/getAgree');
  539. Route::get('copyright', 'api.Common/copyright');
  540. Route::get('script', 'api.Common/script');
  541. Route::get('appVersion', 'api.Common/appVersion');
  542. Route::get('navigation', 'api.Common/getNavigation')->middleware(UserTokenMiddleware::class, false);
  543. Route::get('micro', 'api.Common/micro');
  544. Route::get('version', 'admin.Common/version');
  545. Route::any('getVersion', 'api.Common/getVersion')->name('getVersion');
  546. Route::get('diy', 'api.Common/diy');
  547. //滑块验证码
  548. Route::get('ajcaptcha', 'api.Auth/ajcaptcha');
  549. Route::post('ajcheck', 'api.Auth/ajcheck');
  550. Route::get('open_screen', 'api.Common/open_screen');
  551. //可以查看所有路由的接口 - 开发者使用
  552. Route::get('route/list', 'api.Route/list');
  553. })->middleware(AllowOriginMiddleware::class)
  554. ->middleware(InstallMiddleware::class)
  555. ->middleware(CheckSiteOpenMiddleware::class)
  556. ->middleware(RequestLockMiddleware::class);
  557. Route::any('/', 'View/h5')
  558. ->middleware(InstallMiddleware::class)
  559. ->middleware(CheckSiteOpenMiddleware::class);
  560. Route::group('/pages', function () {
  561. Route::miss('View/h5');
  562. })->middleware(InstallMiddleware::class)
  563. ->middleware(CheckSiteOpenMiddleware::class);
  564. Route::group('/open-location', function () {
  565. Route::miss('View/h5');
  566. })->middleware(InstallMiddleware::class)
  567. ->middleware(CheckSiteOpenMiddleware::class);