api.js 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050
  1. import ApiBase from './api_base'
  2. import ApiEnum from './api_enum'
  3. import Server from './server'
  4. let api = Object.assign({}, ApiBase);
  5. api.checkUserIsNew = (data = {}) => {
  6. return api.requestWithTicket(ApiEnum.checkUserIsNew, data, 'POST')
  7. }
  8. /**
  9. * 游客登录
  10. * @param {string} account 账号
  11. * @param {string} passwd 密码
  12. *
  13. * @return {string} accid IM 账号
  14. * @return {string} token IM TOKEN
  15. * @return {string} sessionId session
  16. * @return {string} userId 用户ID
  17. */
  18. // api.touristLogin = (data = {}) => {
  19. // if (data.account == null && data.passwd == null) {
  20. // data.account = Server.account
  21. // data.passwd = Server.passwd
  22. // }
  23. // return api.requestWithTicket(ApiEnum.touristLogin, data, 'POST');
  24. // }
  25. // 先调0010117接口获取返回参数后,再调用0010116就可以登录并返回用户信息
  26. /**
  27. * 小程序登录
  28. * @param {string} code 条码值
  29. *
  30. * @return {string} expiresIn
  31. * @return {string} sessionKey
  32. * @return {string} expiresTill
  33. * @return {string} openId
  34. * @return {string} class
  35. */
  36. api.loginByCode = (data) => {
  37. return api.requestWithTicket(ApiEnum.loginByCode, data, 'POST');
  38. }
  39. /**
  40. * 小程序登录后密文解密
  41. * @param {string} openId
  42. * @param {string} sessionKey 加密签名的密钥
  43. * @param {string} encryptedData 用户信息的加密数据
  44. * @param {string} iv 初始向量
  45. *
  46. * @return {int} businessId 商家ID
  47. * @return {string} accid IM 账号
  48. * @return {string} token IM TOKEN
  49. * @return {string} sessionId session
  50. * @return {string} userId 用户ID
  51. */
  52. api.loginByWxapp = (data) => {
  53. let reqParam = wx.getStorageSync('reqParam');
  54. if (reqParam.type == "jym" && reqParam.param != null) {
  55. data.presenter = reqParam.param;
  56. }
  57. console.error("loginByWxapp", JSON.stringify(data));
  58. return api.requestWithTicket(ApiEnum.loginByWxapp, data, 'POST');
  59. }
  60. /**
  61. * 更新用户头像
  62. * @param {int} userId 用户ID
  63. * @param {string} avatar 用户头像
  64. */
  65. api.updateIcon = (data) => {
  66. return api.requestWithTicket(ApiEnum.updateIcon, data, 'POST');
  67. }
  68. /**
  69. * BC端获取个人信息
  70. * @return {string} phone 电话
  71. * @return {string} username 用户名
  72. * @return {int} gender 性别
  73. * @return {string} icon 图标
  74. * @return {date} birth 生日
  75. * @return {string} idCard 身份证号码
  76. * @return {string} name 会员名称
  77. */
  78. api.BCmy = (data) => {
  79. return api.requestWithTicket(ApiEnum.BCmy, data, 'POST');
  80. }
  81. /**
  82. * BC端编辑个人信息
  83. * @param {string} phone 电话
  84. * @param {string} username 用户名
  85. * @param {int} gender 性别
  86. * @param {string} icon 图标
  87. * @param {date} birth 生日
  88. * @param {string} idCard 身份证号码
  89. * @param {string} name 会员名称
  90. */
  91. api.BCedit = (data) => {
  92. return api.requestWithTicket(ApiEnum.BCedit, data, 'POST');
  93. }
  94. /**
  95. * 获取我的界面基本数据
  96. * @param {int} memberId 用户ID
  97. *
  98. * @return {string} serviceTel 电话
  99. * @return {int} supplierNum 供应商数量
  100. * @return {int} browseNum 浏览数量
  101. * @return {int} favoriteNum 收藏数量
  102. * @return {int} inviteNum 邀约数量
  103. * @return {Object} user 用户信息
  104. * @return {string} avatar 头像
  105. * @return {int} id 主键
  106. * @return {string} username 用户名
  107. * @return {string} mobile 手机号码
  108. * @return {string} address 地址
  109. * @return {Object} orderStatusNum 订单状态数量
  110. * @return {int} pendingPayment 待付款数量
  111. * @return {int} pendingShipment 待发货
  112. * @return {int} shipped 待收货数量
  113. * @return {int} pendingReview 待评论
  114. * @return {int} afterSale 售后数量
  115. * @return {Object} verifiedStatus 认证状态
  116. * @return {int} unUrlCount 没有文件路径的个数
  117. * @return {int} verified 认证状态 {UN:没有; WAIT:待认证; FAIL:失败; PASS:通过;}
  118. * @return {bool} isExpire 是否过期
  119. * @return {int} accstatus 账户状态
  120. * @return {string} address 地址
  121. */
  122. // api.getMyBaseDatas = (data) => {
  123. // return api.requestWithTicket(ApiEnum.getMyBaseDatas, data, 'POST');
  124. // }
  125. /**
  126. * 注册协议
  127. */
  128. api.getAppRegisterAgreement = (data) => {
  129. return api.requestWithTicket(ApiEnum.getAppRegisterAgreement, data, 'GET');
  130. }
  131. /**
  132. * 获取公司介绍
  133. */
  134. api.lookIntroduction = (data) => {
  135. return api.requestWithTicket(ApiEnum.lookIntroduction, data, 'GET');
  136. }
  137. /**
  138. * 商家动态
  139. * @param {int} pageNo 页数(从第0页开始,默认第0页)
  140. * @param {int} pageSize 每面数据条数(默认10条)
  141. * @param {int} storeId 店铺Id
  142. */
  143. api.getStoreDynamic = (data) => {
  144. return api.requestWithTicket(ApiEnum.getStoreDynamic, data, 'GET');
  145. }
  146. /**
  147. * 店铺首页 广告、导航菜单、公司信息
  148. * @param {int} storeId 商铺ID
  149. */
  150. api.storeHomeNavAds = (data) => {
  151. return api.requestWithTicket(ApiEnum.storeHomeNavAds, data, 'GET');
  152. }
  153. /**
  154. * 店铺首页产品
  155. * @param {int} storeId 商铺ID
  156. */
  157. api.homeNavAds = (data) => {
  158. return api.requestWithTicket(ApiEnum.homeNavAds, data, 'GET');
  159. }
  160. /**
  161. * 店铺首页产品
  162. * @param {int} storeId 商铺ID
  163. */
  164. // api.storeHomeProducts = (data) => {
  165. // return api.requestWithTicket(ApiEnum.storeHomeProducts, data, 'POST');
  166. // }
  167. /**
  168. * 店铺产品标签列表
  169. * @param {int} storeId 商铺ID
  170. */
  171. api.storeHomeProductTags = (data) => {
  172. return api.requestWithTicket(ApiEnum.storeHomeProductTags, data, 'GET');
  173. }
  174. //店铺首页 导航标签组
  175. api.storeHomeNavTags = (data) => {
  176. return api.requestWithTicket(ApiEnum.storeHomeNavTags, data, 'GET');
  177. }
  178. /**
  179. * 查找店铺商品分类
  180. * @param {int} storeId 商铺ID
  181. */
  182. api.getStoreProductCategorys = (data) => {
  183. return api.requestWithTicket(ApiEnum.getStoreProductCategorys, data, 'GET');
  184. }
  185. /**
  186. * 获取查询产品筛选条件
  187. * @param {int} productCategoryId 商品分类ID
  188. */
  189. api.getSearchProductFilter = (data) => {
  190. return api.requestWithTicket(ApiEnum.getSearchProductFilter, data, 'GET');
  191. }
  192. /**
  193. * 获取商品分类
  194. * @param {int} storeId 传入店铺ID
  195. */
  196. api.getProductCategorys = (data) => {
  197. return api.requestWithTicket(ApiEnum.getProductCategorys, data, 'POST');
  198. }
  199. /**
  200. * 通过id查询商品子分类
  201. * @param {int} id 主键子分类
  202. */
  203. api.getProductChildrenCategorys = (data) => {
  204. return api.requestWithTicket(ApiEnum.getProductChildrenCategorys, data, 'GET');
  205. }
  206. /**
  207. * 分类广告
  208. */
  209. api.getProductCategorysAd = (data) => {
  210. return api.requestWithTicket(ApiEnum.getProductCategorysAd, data, 'POST');
  211. }
  212. /**
  213. * 获取商品详情
  214. * @param {int} memberId 用户Id
  215. * @param {int} productId 产品ID
  216. *
  217. * @return {string} info 药品详情
  218. * @return {Array} introduction 药品说明书
  219. * @return {string} group 分组名称
  220. * @return {Array} entries 产品条目
  221. * @return {string} name 名字
  222. * @return {string} value 值
  223. * @return {int} pendingReview 待评论
  224. * @return {int} afterSale 售后数量
  225. * @return {int} pendingShipment 待发货
  226. * @return {int} pendingReview 待评论
  227. * @return {int} afterSale 售后数量
  228. * @return {int} pendingShipment 待发货
  229. * @return {Object} base 商品基本信息
  230. * @return {Array} productImages 轮播头图 {large,medium,source,thumbnail}
  231. * @return {string} generalName 通用名称
  232. * @return {string} approvalNumber 批准文号
  233. * @return {float} marketPrice 市场价
  234. * @return {int} scoreCount 评分数
  235. * @return {date} monthSalesDate 月销量更新日期
  236. * @return {string} caption 副标题
  237. * @return {int} monthSales 月销量
  238. * @return {float} score 评分
  239. * @return {int} productCategoryId 商品分类Id
  240. * @return {float} price 销售价
  241. * @return {int} id 主键
  242. */
  243. api.findProductInfoById = (data) => {
  244. return api.requestWithTicket(ApiEnum.findProductInfoById, data, 'POST');
  245. }
  246. /**
  247. * 获取商品详情推荐商品
  248. * @param {int} storeId 店铺Id
  249. * @param {int} productId 产品ID
  250. * @param {int} productCategoryId 产品分类
  251. */
  252. api.getRecommendProduct = (data) => {
  253. return api.requestWithTicket(ApiEnum.getRecommendProduct, data, 'POST');
  254. }
  255. /**
  256. * 通过商品id获取优惠券列表
  257. * @param {int} productId 产品ID
  258. * @param {int} memberId 会员ID
  259. */
  260. api.getCouponByProductId = (data) => {
  261. return api.requestWithTicket(ApiEnum.getCouponByProductId, data, 'GET');
  262. }
  263. /**
  264. * 通过商品id获取商品sku列表
  265. * @param {int} productId 产品ID
  266. */
  267. api.getSkusByProductId = (data) => {
  268. return api.requestWithTicket(ApiEnum.getSkusByProductId, data, 'GET');
  269. }
  270. /**
  271. * 通过商品id获取商品评论
  272. * @param {int} productId 产品ID
  273. * @param {int} pageNo 页数(从第0页开始,默认第0页)
  274. * @param {int} pageSize 每面数据条数(默认10条)
  275. * @param {string} type 评论类型
  276. */
  277. api.getReviewList = (data) => {
  278. return api.requestWithTicket(ApiEnum.getReviewList, data, 'POST');
  279. }
  280. /**
  281. * 单产品评论数量
  282. * @param {int} productId 产品ID
  283. * @param {int} storeId 店铺ID
  284. */
  285. api.reviewProductCount = (data) => {
  286. return api.requestWithTicket(ApiEnum.reviewProductCount, data, 'POST');
  287. }
  288. /**
  289. * 查找商品
  290. * @param {int} memberId 用户Id
  291. * @param {Object} params 查询
  292. * @return {string} k 要查询字段名 [Y]
  293. * @return {int} t 类型 [Y] 设置查询数据的类型:
  294. * t=0:模糊查询; t=1:条件查询; t=2:范围查询; t=3:排序
  295. * @return {Object} v 查询传值,根据t值要求传值
  296. * 当t=0时:查询的内容
  297. * 当t=1时:具体值,可以单值(做=查询),可以是数组(做or查询)
  298. * "v":1 或 "v":"值" 表示单值查询,即=查询
  299. * "v":[1,2,3] 表示多值查询,即or查询
  300. * 当t=2时:值—个数组范围,比如查询价格为100到200元之前的商品,值为[100, 200]
  301. * 如:"v":[1,2];"v":[null, 2];"v":[1,null];
  302. * 当t=3时:排序值1为正序,-1为倒序
  303. * @return {string} url 跳转路径
  304. * @return {int} id 分类id主键
  305. * @param {int} pageNo 页数(从第0页开始,默认第0页)
  306. * @param {int} pageSize 分页大小
  307. */
  308. api.searchProduct = (data) => {
  309. return api.requestWithTicket(ApiEnum.searchProduct, data, 'POST');
  310. }
  311. /**
  312. * 设置商品收藏
  313. * @param {int} productId 产品ID [Y]
  314. * @param {int} memberId 用户Id [Y]
  315. */
  316. api.setProductFavorite = (data) => {
  317. return api.requestWithTicket(ApiEnum.setProductFavorite, data, 'POST');
  318. }
  319. /**
  320. * 获取收藏的商品
  321. * @param {int} memberId 用户Id [Y]
  322. * @param {int} pageNo 页数(从第0页开始,默认第0页)[Y]
  323. * @param {int} pageSize 每面数据条数(默认10条)
  324. */
  325. api.getMyFavoriteProduct = (data) => {
  326. return api.requestWithTicket(ApiEnum.getMyFavoriteProduct, data, 'POST');
  327. }
  328. /**
  329. * 已加入购物车的产品列表
  330. * @param {int} storeId 店铺ID
  331. *
  332. * @return {int} id 店铺ID
  333. * @return {string} name 店铺名
  334. * @return {string} giftNames 赠品名称
  335. * @return {bool} isEnabled 是否启用
  336. * @return {string} promotionNames 促销名称
  337. * @return {float} discount 折扣
  338. * @return {string} address 地址
  339. * @return {string} logo 图
  340. * @return {Array} cartItems 购物车项
  341. * @return {string} name 名字
  342. * @return {int} skuId 库存量单位ID
  343. * @return {string} skuName 库存量单位名称
  344. * @return {string} skuThumbnail 缩略图
  345. * @return {int} quantity 数量
  346. * @return {float} price 销售价
  347. * @return {float} subtotal 小计
  348. * @return {bool} isMarketable 是否上架
  349. * @return {string} name 产品名称
  350. * @return {bool} isMix 是否混批
  351. * @return {bool} isActive 是否有效
  352. */
  353. api.cartSkuList = (data) => {
  354. return api.requestWithTicket(ApiEnum.cartSkuList, data, 'POST');
  355. }
  356. /**
  357. * 加入购物车
  358. * @param {int} skuId 库存量单位ID [Y]
  359. * @param {int} quantity 数量 [Y]
  360. */
  361. api.cartAdds = (data) => {
  362. return api.requestWithTicket(ApiEnum.cartAdds, data, 'POST');
  363. }
  364. /**
  365. * 修改购物车中的产品(用于购物车中的单SKU修改)
  366. * @param {int} skuId 库存量单位ID [Y]
  367. * @param {int} quantity 数量 [Y]
  368. */
  369. api.cartModify = (data) => {
  370. return api.requestWithTicket(ApiEnum.cartModify, data, 'POST');
  371. }
  372. /*
  373. *获取购物车中的产品种类数量
  374. */
  375. api.cartKindCount = (data) => {
  376. return api.requestWithTicket(ApiEnum.cartKindCount, data, 'POST');
  377. }
  378. // checkCartBuy: '0010609', //立即购买.检查所购买的产品
  379. // createBuy: '0010613', //立即购买.提交订单
  380. /**
  381. * 立即购买.检查所购买的产品
  382. * @param {int} skuId 库存量单位ID [Y]
  383. * @param {int} quantity 数量 [Y]
  384. */
  385. api.checkCartBuy = (data) => {
  386. return api.requestWithTicket(ApiEnum.checkCartBuy, data, 'POST');
  387. }
  388. /**
  389. * 立即购买.预加载订单
  390. * @param {int} skuId 库存量单位ID [Y]
  391. * @param {int} quantity 数量 [Y]
  392. */
  393. api.preloadBuy = (data) => {
  394. return api.requestWithTicket(ApiEnum.preloadBuy, data, 'POST');
  395. }
  396. /**
  397. * 立即购买.计算订单费用
  398. * @param {string} codes 优惠码字符串数组
  399. * @param {int} receiverId 收货地址ID
  400. * @param {int} paymentMethodId 支付方式ID
  401. * @param {int} balance 当前余额
  402. * @param {int} skuId 库存量单位ID
  403. * @param {int} quantity 数量
  404. * @param {int} shippingMethodId 邮寄方式ID
  405. * @param {string} memo 备注
  406. * @param {string} invoiceTitle 发票抬头
  407. * @param {string} invoiceTaxNumber 税号
  408. */
  409. api.calculateBuy = (data) => {
  410. return api.requestWithTicket(ApiEnum.calculateBuy, data, 'POST');
  411. }
  412. /**
  413. * 立即购买.计算订单费用
  414. * @param {string} codes 优惠码字符串数组
  415. * @param {int} receiverId 收货地址ID
  416. * @param {int} paymentMethodId 支付方式ID
  417. * @param {int} balance 当前余额
  418. * @param {int} skuId 库存量单位ID
  419. * @param {int} quantity 数量
  420. * @param {int} shippingMethodId 邮寄方式ID
  421. */
  422. api.createBuy = (data) => {
  423. return api.requestWithTicket(ApiEnum.createBuy, data, 'POST');
  424. }
  425. /**
  426. * 批量移除购物车产品
  427. * @param {Array<int>} skuIds 库存量单位ID [Y]
  428. * { [10268,9957,134,135,10703,133,151,10952,10956,398] }
  429. */
  430. api.cartRemoves = (data) => {
  431. return api.requestWithTicket(ApiEnum.cartRemoves, data, 'POST');
  432. }
  433. /**
  434. * 购物车.计算订单费用(当勾选了购物券,配送方式,输入了发票等)
  435. * @param {Array} codes 优惠码字符串数组
  436. * @param {int} receiverId 收货地址ID
  437. * @param {int} paymentMethodId 支付方式ID
  438. * @param {float} balance 当前余额
  439. * @param {Array} dtos 源于购物车订单请求参数
  440. * @param {int} storeId 店铺Id
  441. * @param {int} shippingMethodId 邮寄方式ID
  442. * @param {string} memo 备注
  443. * @param {int} skuIds 商品ID集
  444. * @param {string} codes 优惠码数组 JSON字符串
  445. * @param {float} price 销售价
  446. * @param {float} subtotal 小计
  447. * @param {bool} isMarketable 是否上架
  448. * @param {string} name 产品名称
  449. * @param {bool} isMix 是否混批
  450. * @param {bool} isActive 是否有效
  451. */
  452. api.cartCalculate = (data) => {
  453. return api.requestWithTicket(ApiEnum.cartCalculate, data, 'POST');
  454. }
  455. /**
  456. * 购物车.购物车中结算(点击结算按钮进行勾选的商品的有效性检查)
  457. * @param {int} cartItemIds 购物车项ID数组
  458. */
  459. api.checkCart = (data) => {
  460. return api.requestWithTicket(ApiEnum.checkCart, data, 'POST');
  461. }
  462. /**
  463. * 购物车.预加载订单列表(点击结算按钮出现的页面)
  464. * @param {int} cartItemIds 购物车项ID数组
  465. */
  466. api.preload = (data) => {
  467. return api.requestWithTicket(ApiEnum.preload, data, 'POST');
  468. }
  469. /**
  470. * 购物车.提交订单
  471. * @param {string} codes 优惠码字符串数组 [N]
  472. * @param {int} receiverId 收货地址ID [N]
  473. * @param {int} paymentMethodId 支付方式ID [N]
  474. * @param {float} balance 当前余额 [N]
  475. * @param {string} invoiceTitle 发票抬头 [N]
  476. * @param {string} invoiceTaxNumber 税号 [N]
  477. * @param {Array} dtos 购物车订单 [N]
  478. * storeId、skuIds、shippingMethodId 不能为空;
  479. * 计算费用是整个列表都要有;
  480. * 添加订单时只需要过滤掉 canDelivery 为false的
  481. * @param {int} storeId 店铺Id
  482. * @param {int} shippingMethodId 邮寄方式ID
  483. * @param {string} memo 备注
  484. * @param {int} skuIds 商品ID集
  485. * @param {string} codes 优惠码字符串数组
  486. */
  487. api.preorderCreate = (data) => {
  488. return api.requestWithTicket(ApiEnum.preorderCreate, data, 'POST');
  489. }
  490. /**
  491. * 通过店铺id获取优惠券列表
  492. * @param {int} storeId 店铺Id [Y]
  493. * @param {int} memberId 用户Id [Y]
  494. *
  495. * @return {Array} list 数组
  496. * @return {int} id 主键
  497. * @return {string} name 名字
  498. * @return {int} point 兑换积分
  499. * @return {float} minimumPrice 最小价格
  500. * @return {float} maximumPrice 最大价格
  501. * @return {date} beginDate 开始时间
  502. * @return {date} endDate 结束时间
  503. * @return {float} amt 金额
  504. * @return {bool} isReceive 是否已领取
  505. */
  506. api.getCouponByStoreId = (data) => {
  507. return api.requestWithTicket(ApiEnum.getCouponByStoreId, data, 'POST');
  508. }
  509. /**
  510. * 获取可兑换优惠券
  511. * @param {int} pageNo 页数(从第0页开始,默认第0页)
  512. * @param {int} pageSize 每面数据条数(默认10条)
  513. */
  514. api.getHasExchangeCoupons = (data) => {
  515. return api.requestWithTicket(ApiEnum.getHasExchangeCoupons, data, 'GET');
  516. }
  517. /**
  518. * 获取我的优惠券
  519. * @param {int} memberId 状态
  520. * @param {int} status 状态 {0:全部,1:已使用, 2:已过期, 3:未使用}
  521. * @param {int} pageNo 页数(从第0页开始,默认第0页)[Y]
  522. * @param {int} pageSize 每面数据条数(默认10条)
  523. */
  524. api.getMyCoupons = (data) => {
  525. return api.requestWithTicket(ApiEnum.getMyCoupons, data, 'POST');
  526. }
  527. /**
  528. * 兑换优惠券(领取优惠券)
  529. * @param {int} memberId 状态
  530. * @param {int} couponId 优惠券id
  531. */
  532. api.couponExchange = (data) => {
  533. return api.requestWithTicket(ApiEnum.couponExchange, data, 'POST');
  534. }
  535. /**
  536. * 新人专享优惠券列表
  537. */
  538. api.getNewCoupons = (data) => {
  539. return api.requestWithTicket(ApiEnum.getNewCoupons, data, 'POST');
  540. }
  541. /**
  542. * 通用.获取地区列表
  543. * @param {int} parentId 上一级ID [N]
  544. */
  545. api.areaList = (data) => {
  546. return api.requestWithTicket(ApiEnum.areaList, data, 'POST');
  547. }
  548. /**
  549. * 收货地址列表
  550. * @param {int} pageNo 分页下标
  551. * @param {int} pageSize 分页大小
  552. */
  553. api.queryAddrList = (data) => {
  554. return api.requestWithTicket(ApiEnum.queryAddrList, data, 'POST');
  555. }
  556. /**
  557. * 添加/修改收货地址
  558. * @param {string} consignee 收货人 [Y]
  559. * @param {string} address 地址 [Y]
  560. * @param {bool} isDefault 是否默认地址 [Y]
  561. * @param {string} phone 电话号码 [Y]
  562. * @param {int} areaId 区域ID [Y]
  563. * @param {int} id 收件地址ID
  564. * @param {string} areaName 区域名称
  565. * @param {string} zipCode 邮编
  566. */
  567. api.addAddress = (data) => {
  568. return api.requestWithTicket(ApiEnum.addAddress, data, 'POST');
  569. }
  570. /**
  571. * 删除收货地址
  572. * @param {int} id 收件地址ID
  573. */
  574. api.deleteAddress = (data) => {
  575. return api.requestWithTicket(ApiEnum.deleteAddress, data, 'POST');
  576. }
  577. /**
  578. * 获取我的订单列表
  579. * @param {int} status 订单类型 {
  580. * ALL:全部订单; PENDING_PAYMENT:待付款;
  581. * PENDING_SHIPMENT:待发货; SHIPPED:待收货;
  582. * RECEIVED:待评价; COMPLETED:已完成;
  583. * PENDING_REVIEW:等待审核; CLOSE:已关闭
  584. * }
  585. * @param {int} memberId 用户ID
  586. * @param {int} pageNo 页数(从第0页开始,默认第0页)
  587. * @param {int} pageSize 分页大小
  588. */
  589. api.getMyOrders = (data) => {
  590. return api.requestWithTicket(ApiEnum.getMyOrders, data, 'POST');
  591. }
  592. /**
  593. * 订单详情
  594. * @param {Array<string>} orderSns
  595. *
  596. * @return {Array} receiver 收货地址
  597. * @return {string} areaName 区域名称
  598. * @return {int} id 收件地址ID 长整
  599. * @return {string} consignee 收货人 [Y]
  600. * @return {string} address 地址 [Y]
  601. * @return {string} zipCode 邮编
  602. * @return {bool} isDefault 是否默认地址 [Y]
  603. * @return {string} phone 电话号码 [Y]
  604. * @return {Array} orders 订单
  605. * @return {int} id 订单ID
  606. * @return {float} price 价格
  607. * @return {float} freight 运费
  608. * @return {float} amount 订单金额
  609. * @return {string} type 类型
  610. * @return {string} status 状态
  611. * @return {string} shippingMethodName 配送方式名称
  612. * @return {bool} isInvoice 是否已开发票
  613. * @return {bool} isReviewed 是否已评论
  614. * @return {bool} isAftersales 是否有售后
  615. * @return {bool} isExpire 是否过期
  616. * @return {Object} param 可能喜欢的产品请求参数
  617. * @return {Object} v 查询传值,根据t值要求传值
  618. * @return {string} k 查询字段名 [Y]
  619. * @return {int} t 类型 { 设置查询数据的类型:
  620. * t=0:模糊查询;
  621. * t=1:条件查询(=和or)对应v值方式=> "v":1 或 "v":"值" 表示单值查询
  622. * 即=查询 "v":[1,2,3] 表示多值查询,即or查询
  623. * t=2:范围查询 如:"v":[1,2];"v":[null, 2];"v":[1,null];
  624. * t=3:排序 v的值只有 -1、0、1三种情况,-1:倒序;0:默认排序;1:正序排序
  625. * } [Y]
  626. * @return {float} amount 订单金额
  627. * @return {string} type 类型
  628. * @return {string} status 状态
  629. * @return {string} shippingMethodName 配送方式名称
  630. * @return {bool} isInvoice 是否已开发票
  631. * @return {bool} isReviewed 是否已评论
  632. * @return {bool} isAftersales 是否有售后
  633. * @return {bool} isExpire 是否过期
  634. * @return {string} remark 备注
  635. * @return {bool} isCanAftersales 是否可以进行售后
  636. * @return {string} statusTxt 状态文本
  637. * @return {float} amountPaid 已付金额
  638. * @return {int} quantity 数量
  639. * @return {string} memo 备注
  640. * ...
  641. */
  642. api.getOrderDetail = (data) => {
  643. return api.requestWithTicket(ApiEnum.getOrderDetail, data, 'POST');
  644. }
  645. /**
  646. * 删除订单
  647. * @param {int} orderId 订单ID
  648. */
  649. api.delOrder = (data) => {
  650. return api.requestWithTicket(ApiEnum.delOrder, data, 'POST');
  651. }
  652. /**
  653. * 取消订单
  654. * @param {int} sn 订单编号 [Y]
  655. * @param {string} detail 描述
  656. * @param {string} remark 备注
  657. */
  658. api.cancelOrder = (data) => {
  659. return api.requestWithTicket(ApiEnum.cancelOrder, data, 'POST');
  660. }
  661. /**
  662. * 订单评论
  663. * @param {int} orderId 订单ID [Y]
  664. * @param {int} memberId 用户Id [Y]
  665. * @param {Array} reviews 评论列表数据
  666. * @param {int} orderItemId 订单项ID
  667. * @param {string} content 评论内容
  668. * @param {string} imageUrls 图片路径集合 JSON字符串
  669. * @param {float} score 评分
  670. */
  671. api.reviewOrder = (data) => {
  672. return api.requestWithTicket(ApiEnum.reviewOrder, data, 'POST');
  673. }
  674. /**
  675. * 延时收货或确认收货
  676. * @param {int} memberId 用户Id [Y]
  677. * @param {int} orderId 订单ID
  678. * @param {int} execType 执行类型 {1:延时收货;2:确认收货}
  679. */
  680. api.orderChange = (data) => {
  681. return api.requestWithTicket(ApiEnum.orderChange, data, 'POST');
  682. }
  683. /**
  684. * 获取我的售后列表
  685. * @param {int} memberId 用户Id [Y]
  686. * @param {int} orderId 订单ID
  687. * @param {int} pageNo 分页下标
  688. * @param {int} pageSize 分页大小
  689. *
  690. * @return {string} orderSN 编号
  691. * @return {string} refundOrderSn 退货单号
  692. * @return {string} reason 原因
  693. * @return {int} id 主键
  694. * @return {string} status 状态 {
  695. * PENDING:等待审核;APPROVED:审核通过;FAILED:审核失败;
  696. * COMPLETED:已完成;CANCELED:已取消
  697. * }
  698. * @return {string} type 售后类型 {
  699. * AFTERSALES_REPAIR:维修;AFTERSALES_REPLACEMENT:换货;
  700. * AFTERSALES_RETURNS:退货
  701. * }
  702. * @return {date} lastModifiedDate 时间
  703. * @return {Object} store 商店信息
  704. * @return {int} id 商铺ID
  705. * @return {string} name 商铺名称
  706. * @return {string} logo 图标
  707. * @return {Array} aftersalesItems 售后Item
  708. * @return {int} quantity 数量
  709. * @return {float} price 销售价
  710. * @return {string} name 商品名字
  711. * @return {string} sn 编号
  712. * @return {int} skuId 库存量单位ID
  713. * @return {string} specifications 产品规格
  714. * @return {string} thumbnail 略图
  715. * @return {int} productId 产品ID
  716. */
  717. api.getAftersaless = (data) => {
  718. return api.requestWithTicket(ApiEnum.getAftersaless, data, 'POST');
  719. }
  720. /**
  721. * 售后详情
  722. * @param {int} id 售后id
  723. *
  724. * @return {string} orderSN 订单编号
  725. * @return {string} deliveryCorp 物流公司
  726. * @return {string} deliveryCorpCode 物流公司代码
  727. * @return {string} trackingNo 运单号
  728. * @return {string} reason 原因
  729. * @return {date} createdDate 开始时间
  730. * @return {date} lastModifiedDate 最后操作时间
  731. * @return {string} type 类型 {
  732. * AFTERSALES_REPAIR:维修;
  733. * AFTERSALES_REPLACEMENT:换货;
  734. * AFTERSALES_RETURNS:退货
  735. * }
  736. * @return {string} status 状态 {
  737. * PENDING:等待审核;APPROVED:审核通过;
  738. * FAILED:审核失败;COMPLETED:已完成;CANCELED:已取消
  739. * }
  740. * @return {Object} store 商家
  741. * @return {int} id 商铺ID
  742. * @return {string} name 商铺名称
  743. * @return {string} logo 图标
  744. * @return {Array} aftersalesItems 售后Item
  745. * @return {int} quantity 数量
  746. * @return {float} price 销售价
  747. * @return {string} name 商品名字
  748. * @return {string} sn 编号
  749. * @return {int} skuId 库存量单位ID
  750. * @return {string} specifications 产品规格
  751. * @return {string} thumbnail 略图
  752. * @return {int} productId 产品ID
  753. * @return {Object} repair 维修 {只有当 type=AFTERSALES_REPAIR 时返回}
  754. * @return {string} consignee 收货人
  755. * @return {string} area 区域
  756. * @return {string} address 地址
  757. * @return {string} phone 电话
  758. * @return {int} skuId 库存量单位ID
  759. * @return {string} specifications 产品规格
  760. * @return {string} thumbnail 略图
  761. * @return {int} productId 产品ID
  762. * @return {Object} returns 售后 - 退货 {只有当 type=AFTERSALES_RETURNS 时返回}
  763. * @return {string} account 账户/手机号码
  764. * @return {string} method 方式
  765. * @return {string} bank 收款银行
  766. * @return {string} phone 电话
  767. * @return {int} skuId 库存量单位ID
  768. * @return {string} specifications 产品规格
  769. * @return {string} thumbnail 略图
  770. * @return {int} productId 产品ID
  771. * @return {Object} replacement 售后 - 维修或换货 {只有当Type=AFTERSALES_REPLACEMENT时返回}
  772. * @return {string} consignee 收货人
  773. * @return {string} area 区域
  774. * @return {string} address 地址
  775. * @return {string} phone 电话
  776. * @return {int} skuId 库存量单位ID
  777. * @return {string} specifications 产品规格
  778. * @return {string} thumbnail 略图
  779. * @return {int} productId 产品ID
  780. */
  781. api.findAftersales = (data) => {
  782. return api.requestWithTicket(ApiEnum.findAftersales, data, 'POST');
  783. }
  784. /**
  785. * 获取订单售后预加载数据
  786. * @param {int} orderId 订单id [Y]
  787. */
  788. api.getOrderAfterSaleInfo = (data) => {
  789. return api.requestWithTicket(ApiEnum.getOrderAfterSaleInfo, data, 'POST');
  790. }
  791. /**
  792. * 申请售后
  793. * @param {int} type 申请售后的类型 {1:申请维修;2:申请换货;3:申请退货;}
  794. * @param {string} sn 订单编号
  795. * @param {string} consignee 收货人 {type = 1/2时,必填}
  796. * @param {string} area 区域名称 {type=1/2时,必填}
  797. * @param {string} address 详细地址 {type=1/2时,必填}
  798. * @param {string} phone 电话 { type=1/2时,必填 }
  799. * @param {string} account 银行账户 {type=3时必填}
  800. * @param {string} bank 银行 {type=3时必填}
  801. * @param {string} method 支付方式名称 {
  802. * type=3时必填,值为:ONLINE:在线支付;OFFLINE:线下支付;DEPOSIT:预存款支付
  803. * }
  804. * @param {string} reason 申请原因 {必填}
  805. * @param {string} orderItems 选择的订单商品 {
  806. * k:orderItem的id,v:选择的商品/sku数量
  807. * }
  808. */
  809. api.applyAfterSale = (data) => {
  810. return api.requestWithTicket(ApiEnum.applyAfterSale, data, 'POST');
  811. }
  812. /**
  813. * 取消售后信息
  814. * @param {int} id 售后id
  815. */
  816. api.cancelAftersales = (data) => {
  817. return api.requestWithTicket(ApiEnum.cancelAftersales, data, 'POST');
  818. }
  819. //支付
  820. /**
  821. * 下单后小程序预支付
  822. * @param {int} memberId 用户Id [Y]
  823. * @param {string} orderSns 订单编号
  824. */
  825. api.wxappGo = (data) => {
  826. return api.requestWithTicket(ApiEnum.wxappGo, data, 'POST');
  827. }
  828. /**
  829. * 小程序支付下单
  830. * @param {string} orderSns 订单编号
  831. */
  832. api.wxappUnifiedOrder = (data) => {
  833. return api.requestWithTicket(ApiEnum.wxappUnifiedOrder, data, 'POST');
  834. }
  835. /**
  836. * 小程序支付完成
  837. * @param {string} tradeNo 交易订单
  838. * @param {string} status 交易状态
  839. */
  840. api.wxappFinish = (data) => {
  841. return api.requestWithTicket(ApiEnum.wxappFinish, data, 'POST');
  842. }
  843. //微信支付
  844. api.wxPay = (data) => {
  845. return new Promise((resolve, reject) => {
  846. wx.requestPayment({
  847. 'timeStamp': data.timeStamp.toString(),
  848. 'nonceStr': data.nonceStr,
  849. 'package': data.package,
  850. 'signType': data.signType,
  851. 'paySign': data.sign,
  852. success: function (res) {
  853. resolve(res);
  854. },
  855. fail: function (err) {
  856. // reject(err)
  857. }
  858. })
  859. })
  860. }
  861. /**
  862. * 服务协议
  863. */
  864. api.getAppServiceAgreement = (data) => {
  865. return api.requestWithTicket(ApiEnum.getAppServiceAgreement, data, 'GET');
  866. }
  867. // 查询订单物流
  868. api.getOrderShippingInfo = (orderSn) => {
  869. return api.requestWithTicket(ApiEnum.getOrderShippingInfo, {orderSn}, 'POST');
  870. }
  871. // 申请推广
  872. api.distributorApply = (data) => {
  873. return api.requestWithTicket(ApiEnum.distributorApply, data, 'POST');
  874. }
  875. // 我的邀请
  876. api.distributorGetInvites = (data) => {
  877. return api.requestWithTicket(ApiEnum.distributorGetInvites, data, 'POST');
  878. }
  879. // 我的收益
  880. api.distributionCommission = (data) => {
  881. return api.requestWithTicket(ApiEnum.distributionCommission, data, 'POST');
  882. }
  883. // 分销优惠商品列表
  884. api.getDistributorCouponProducts = (data) => {
  885. return api.requestWithTicket(ApiEnum.getDistributorCouponProducts, data, 'POST');
  886. }
  887. // 分销优惠券
  888. api.getDistributorCouponByProductId = (data) => {
  889. return api.requestWithTicket(ApiEnum.getDistributorCouponByProductId, data, 'POST');
  890. }
  891. // 收益记录
  892. api.getMyDistributionCommissionRecords = (data) => {
  893. return api.requestWithTicket(ApiEnum.getMyDistributionCommissionRecords, data, 'POST');
  894. }
  895. // 收益详情
  896. api.getMyDistributionCommissionDetails = (data) => {
  897. return api.requestWithTicket(ApiEnum.getMyDistributionCommissionDetails, data, 'POST');
  898. }
  899. // 佣金结算记录
  900. api.getDistributionCashRecords = (data) => {
  901. return api.requestWithTicket(ApiEnum.getDistributionCashRecords, data, 'POST');
  902. }
  903. // 会场信息
  904. api.getSpecial = (data) => {
  905. return api.requestWithTicket(ApiEnum.getSpecial, data, 'POST');
  906. }
  907. // 会场优惠券
  908. api.getCoupons = (data) => {
  909. return api.requestWithTicket(ApiEnum.getCoupons, data, 'POST');
  910. }
  911. // 领取会场优惠券
  912. api.goCoupon = (data) => {
  913. return api.requestWithTicket(ApiEnum.goCoupon, data, 'POST');
  914. }
  915. // 会场产品
  916. api.getProducts = (data) => {
  917. return api.requestWithTicket(ApiEnum.getProducts, data, 'POST');
  918. }
  919. // 组织列表
  920. api.getOrganizationList = (data) => {
  921. return api.requestWithTicket(ApiEnum.getOrganizationList, data, 'POST');
  922. }
  923. // 切换组织
  924. api.replaceOranization = (data) => {
  925. return api.requestWithTicket(ApiEnum.replaceOranization, data, 'POST');
  926. }
  927. // 新增代理地址
  928. api.addAgentAddress = (data) => {
  929. return api.requestWithTicket(ApiEnum.addAgentAddress, data, 'POST');
  930. }
  931. // 组织信息
  932. api.getOrganizationInfo = (data) => {
  933. return api.requestWithTicket(ApiEnum.getOrganizationInfo, data, 'POST');
  934. }
  935. // 用户代理订单待收货
  936. api.userAgentOrder = (data) => {
  937. return api.requestWithTicket(ApiEnum.userAgentOrder, data, 'POST');
  938. }
  939. // 用户代理订单待收货
  940. api.userAgentAlreadyOrder = (data) => {
  941. return api.requestWithTicket(ApiEnum.userAgentAlreadyOrder, data, 'POST');
  942. }
  943. // 一键收货
  944. api.userAgentConfirmOrder = (data) => {
  945. return api.requestWithTicket(ApiEnum.userAgentConfirmOrder, data, 'POST');
  946. }
  947. // 用户反馈
  948. api.userFeedback = (data) => {
  949. return api.requestWithTicket(ApiEnum.userFeedback, data, 'POST');
  950. }
  951. // 浏览记录
  952. api.getBrowseRecords = (data) => {
  953. return api.requestWithTicket(ApiEnum.getBrowseRecords, data, 'POST');
  954. }
  955. // 搜索热词
  956. api.getExporeHotWord = (data) => {
  957. return api.requestWithTicket(ApiEnum.getExporeHotWord, data, 'POST');
  958. }
  959. export default api