fulfiller.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. /**
  2. * 履约者业务 API
  3. * @author steelwei
  4. */
  5. import request from '@/utils/request'
  6. import { BASE_URL, CLIENT_ID, PLATFORM_CODE } from '@/utils/config'
  7. /**
  8. * 获取当前履约者个人档案
  9. */
  10. export function getMyProfile() {
  11. return request({
  12. url: '/fulfiller/fulfiller/my',
  13. method: 'GET'
  14. })
  15. }
  16. /**
  17. * 提交入驻申请(招募表单)
  18. * @param {Object} data - 申请数据
  19. */
  20. export function submitAudit(data) {
  21. return request({
  22. url: '/fulfiller/app/audit/submit',
  23. method: 'POST',
  24. needToken: false,
  25. data
  26. })
  27. }
  28. /**
  29. * 查询子级区域/站点列表(级联选择器用)
  30. * @param {number} parentId - 父级ID,0或不传查顶级
  31. */
  32. export function getAreaChildren(parentId = 0) {
  33. return request({
  34. url: '/fulfiller/app/area/children',
  35. method: 'GET',
  36. needToken: false,
  37. data: { parentId }
  38. })
  39. }
  40. /**
  41. * 上传文件(图片等)
  42. * @param {string} filePath - 本地文件路径
  43. * @returns {Promise} - { url, fileName, ossId }
  44. */
  45. export function uploadFile(filePath) {
  46. return new Promise((resolve, reject) => {
  47. uni.uploadFile({
  48. url: BASE_URL + '/fulfiller/app/upload',
  49. filePath: filePath,
  50. name: 'file',
  51. header: {
  52. 'clientid': CLIENT_ID,
  53. 'X-Platform-Code': PLATFORM_CODE
  54. },
  55. success: (res) => {
  56. try {
  57. const data = JSON.parse(res.data)
  58. if (data.code === 200) {
  59. resolve(data)
  60. } else {
  61. uni.showToast({ title: data.msg || '上传失败', icon: 'none' })
  62. reject(data)
  63. }
  64. } catch (e) {
  65. reject(e)
  66. }
  67. },
  68. fail: (err) => {
  69. uni.showToast({ title: '上传失败', icon: 'none' })
  70. reject(err)
  71. }
  72. })
  73. })
  74. }
  75. /**
  76. * 查询我的审核状态
  77. */
  78. export function getMyAuditStatus() {
  79. return request({
  80. url: '/fulfiller/audit/my',
  81. method: 'GET'
  82. })
  83. }
  84. /**
  85. * 获取我的积分日志
  86. */
  87. export function getMyPointsLog(params) {
  88. return request({
  89. url: '/fulfiller/log/points',
  90. method: 'GET',
  91. data: params
  92. })
  93. }
  94. /**
  95. * 获取我的余额日志
  96. */
  97. export function getMyBalanceLog(params) {
  98. return request({
  99. url: '/fulfiller/log/balance',
  100. method: 'GET',
  101. data: params
  102. })
  103. }
  104. /**
  105. * 获取我的奖惩记录
  106. */
  107. export function getMyRewardLog(params) {
  108. return request({
  109. url: '/fulfiller/log/reward',
  110. method: 'GET',
  111. data: params
  112. })
  113. }
  114. /**
  115. * 修改头像
  116. * @param {string} avatar - 头像URL
  117. * @author steelwei
  118. */
  119. export function updateAvatar(avatar) {
  120. return request({
  121. url: '/fulfiller/fulfiller/my/avatar',
  122. method: 'PUT',
  123. data: { avatar }
  124. })
  125. }
  126. /**
  127. * 修改真实姓名
  128. * @param {string} name - 真实姓名
  129. * @author steelwei
  130. */
  131. export function updateName(name) {
  132. return request({
  133. url: '/fulfiller/fulfiller/my/name',
  134. method: 'PUT',
  135. data: { name }
  136. })
  137. }
  138. /**
  139. * 修改工作状态
  140. * @param {string} status - 工作状态 (resting:休息, busy:接单中)
  141. * @author steelwei
  142. */
  143. export function updateStatus(status) {
  144. return request({
  145. url: '/fulfiller/fulfiller/my/status',
  146. method: 'PUT',
  147. data: { status }
  148. })
  149. }
  150. /**
  151. * 修改工作城市
  152. * @param {string} cityCode - 城市编码
  153. * @param {string} cityName - 城市名称
  154. * @author steelwei
  155. */
  156. export function updateCity(cityCode, cityName) {
  157. return request({
  158. url: '/fulfiller/fulfiller/my/city',
  159. method: 'PUT',
  160. data: { cityCode, cityName }
  161. })
  162. }
  163. /**
  164. * 获取认证信息
  165. * @author steelwei
  166. */
  167. export function getAuthInfo() {
  168. return request({
  169. url: '/fulfiller/fulfiller/my/auth',
  170. method: 'GET'
  171. })
  172. }
  173. /**
  174. * 修改手机号
  175. * @param {string} phone - 新手机号
  176. * @param {string} code - 验证码
  177. * @author steelwei
  178. */
  179. export function updatePhone(phone, code) {
  180. return request({
  181. url: '/fulfiller/fulfiller/my/phone',
  182. method: 'PUT',
  183. data: { phone, code }
  184. })
  185. }
  186. /**
  187. * 修改密码
  188. * @param {string} oldPassword - 旧密码
  189. * @param {string} newPassword - 新密码
  190. * @author steelwei
  191. */
  192. export function updatePassword(oldPassword, newPassword) {
  193. return request({
  194. url: '/fulfiller/fulfiller/my/password',
  195. method: 'PUT',
  196. data: { oldPassword, newPassword }
  197. })
  198. }
  199. /**
  200. * 注销账号
  201. * @author steelwei
  202. */
  203. export function deleteAccount() {
  204. return request({
  205. url: '/fulfiller/fulfiller/my/account',
  206. method: 'DELETE'
  207. })
  208. }
  209. /**
  210. * 更新认证信息
  211. * @param {Object} data - 认证数据
  212. * @author steelwei
  213. */
  214. export function updateAuthInfo(data) {
  215. return request({
  216. url: '/fulfiller/fulfiller/my/auth',
  217. method: 'POST',
  218. data
  219. })
  220. }